The underlying source code for the Building a Microservices Application in Go Following the CQRS Pattern article.
tinrab / meower Goto Github PK
View Code? Open in Web Editor NEWSocial network for cats
License: MIT License
Social network for cats
License: MIT License
The underlying source code for the Building a Microservices Application in Go Following the CQRS Pattern article.
Would love to see, how to organize multiple command, handler, denormalizer, query and websocket services under Golang Standard Project Layout. GitHub
Can't figure out, how to better organize code of 100+ (i mean more than 10) or so services.
Hi!
Thanks for this article, and especially for this repository! Some things are talked about a lot, yet there is not much code to read.
I've found some issues in the published code: It seems that the query tier can get inconsistent quite easily: Some meows may not be available through the query tier.
For instance, here an event is published through NATS (I believe), but if something goes wrong, the query tier will never hear of this meow.
Later, in the query tier, an attempt is made to index a meow in Elasticsearch. If it fails, the neow will never be available in search.
This is quite critical, because it will happen during any of these events:
What is the best way to implement Authorization / Authentication for this architecture?
I execute command
docker-compose up -d --build
But i got error
Step 23/28 : RUN go get github.com/olivere/elastic ---> Running in 51279699b16d Removing intermediate container 51279699b16d ---> 7ee7009f0dab Step 24/28 : RUN go get github.com/mailru/easyjson ---> Running in 8e0e46af8e25 Removing intermediate container 8e0e46af8e25 ---> 576078d57fa8 Step 25/28 : RUN go install ./... ---> Running in fb3b52ec19f7 ../../olivere/elastic/client.go:24:2: cannot find package "github.com/olivere/elastic/v7/config" in any of: /usr/local/go/src/github.com/olivere/elastic/v7/config (from $GOROOT) /go/src/github.com/olivere/elastic/v7/config (from $GOPATH) ../../olivere/elastic/bulk.go:15:2: cannot find package "github.com/olivere/elastic/v7/uritemplates" in any of: /usr/local/go/src/github.com/olivere/elastic/v7/uritemplates (from $GOROOT) /go/src/github.com/olivere/elastic/v7/uritemplates (from $GOPATH) ERROR: Service 'pusher' failed to build: The command '/bin/sh -c go install ./...' returned a non-zero code: 1
What`s wrong?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.