vietnam-devs / coolstore-microservices

A full-stack .NET microservices build on Dapr and Tye
https://vietnam-devs.github.io/coolstore-microservices
MIT License
2.47k stars 573 forks source link

Re-vamp with new architecture on .NET Core 3.0 #48

Closed thangchung closed 3 years ago

thangchung commented 5 years ago

Event storming methodology for analysis and design the distributed services.

References:

Search service:

Cloud-native apps

gRPC

Linkerd 2.0

https://github.com/vaquarkhan/microservices-recipes-a-free-gitbook https://hackernoon.com/migrating-to-microservices-and-event-sourcing-the-dos-and-donts-195153c7487d

GitOps

UI/UX

https://app.leanboard.io/board/4c814b4f-0349-43d6-bfbc-b214b893e7ff

toanvo288 commented 5 years ago

@thangchung : do you consider Fluent Scheduler, NCronTab instead of using Quartz.Net?

thangchung commented 5 years ago

Hi anh @toanvo288. I haven't coded it yet, just considering. Just have a look at Fluent Scheduler and NCronTab, both of them are lightweight, do you use it before?

toanvo288 commented 5 years ago

hi @thangchung : to be honest, they are not more lightweight except NCronTab but for a cron job, I prefer Fluent Scheduler because it is the best in term of configuration and readable.

thangchung commented 5 years ago

Agree anh @toanvo288. I will have a look at it too see if there is any trouble when we're using it (updated the issue)

thangchung commented 5 years ago

Standard pub/sub interface, just like we have at https://github.com/cloudnative-netcore/netcorekit/blob/master/src/NetCoreKit.Infrastructure.Bus/IDispatchedEventBus.cs, need standardized it

type Publisher interface {
    Publish(topic string, messages ...*Message) error
    Close() error
}

type Subscriber interface {
    Subscribe(ctx context.Context, topic string) (<-chan *Message, error)
    Close() error
}