You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description:
Hi,
I think what I have been calling Microservices, actually is Cell Based Architecture. Because I split my "services"(lets call this a boundry) into a set of smaller runnable services e.g. HTTP API (client based communication), GRPC API (internal based communication other than anything on the broker, using service discovery on a scaled service to send the message to), business logic worker, projections worker and a service for testing the boundary.
These smaller services are all deployed typically in one go, seperate deployables, as a boundary / version.
The query flow of this would be something like:
user requests products to the products HTTP API
products HTTP API validates the request and then from the read database and sends the data back.
The command flow is more like this:
User requests to create a product to the products HTTP API
Products HTTP API validates the query, does extra validation with the read database to see if the product already exists or not. Then fires a command (with the data) over the bus for any services that consume it. Sends a no content response to the user (to create a non blocking HTTP request)
The business logic worker picks up the command adds the data to the event store, and fires off an event (can be many services consuming again) to the bus saying that it is successful in storing
Both the HTTP API and Projections pick this message up
-- The HTTP API says that the request was successful via websocket with data that is needed from the event
-- The Projections worker adds the data to the read models.
Without going into much more detail, do you think this is the case?
Also please may I ask what you are using to create your diagrams? it looks clean and clear!
Thanks,
Jamie
The text was updated successfully, but these errors were encountered:
Based on your explanation, you are following the Cell-based Architecture principles. So why don't you publish a paper/blog about your implementation? That way, I can add the same to the specification as a reference implementation.
Description:
Hi,
I think what I have been calling Microservices, actually is Cell Based Architecture. Because I split my "services"(lets call this a boundry) into a set of smaller runnable services e.g. HTTP API (client based communication), GRPC API (internal based communication other than anything on the broker, using service discovery on a scaled service to send the message to), business logic worker, projections worker and a service for testing the boundary.
These smaller services are all deployed typically in one go, seperate deployables, as a boundary / version.
The query flow of this would be something like:
The command flow is more like this:
-- The HTTP API says that the request was successful via websocket with data that is needed from the event
-- The Projections worker adds the data to the read models.
Without going into much more detail, do you think this is the case?
Also please may I ask what you are using to create your diagrams? it looks clean and clear!
Thanks,
Jamie
The text was updated successfully, but these errors were encountered: