7
votes
Accepted
When would you consider sharing a database to be fine? What are your rules?
Your "components" should probably be part of the same "service", even if they are run as different executables. If this is the case it should be fine if both access the same ...
4
votes
Accepted
Child Entity or Aggregate Root?
"Don't play with another aggregate root's child entities" is a rule that is overrated because people tend to overuse aggregates and thus over-apply it:
First of all, if we're talking about ...
3
votes
Child Entity or Aggregate Root?
OK I think I understand your problem.
You have:
Attraction
{
List<TicketOption> TicketOptions
}
Where adding and removing ticket options has invariants,
But you also want
TicketOptionRepo....
3
votes
Accepted
How does a Bounded Context from DDD help scaling microservices?
Bounded Contexts as a strategic pattern have several benefits:
They are linguistic boundaries. A concept may have a different meaning to different parts of the business. By acknowledging this and ...
1
vote
When would you consider sharing a database to be fine? What are your rules?
Working through your options:
The background worker subscribes to "credit" domain events emitted by the REST API and stores the consumer' credit in its own database.
My primary concern for ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
microservices × 1004architecture × 261
design × 84
domain-driven-design × 79
rest × 77
api-design × 53
api × 51
architectural-patterns × 51
database × 50
java × 47
message-queue × 45
design-patterns × 36
event-sourcing × 35
soa × 33
distributed-system × 30
web-services × 29
c# × 28
authentication × 26
cqrs × 26
event-programming × 26
authorization × 25
enterprise-architecture × 23
eventual-consistency × 22
docker × 21
database-design × 20