Skip to content

Unable to scale.  #72

Open
Open
@Stalso

Description

@Stalso

Hello from Belarus! First of all thank you for you project and I also want to be friends with you!)

I have one question. In your blog you say, that one of disadvantages of monolith is that during horizontal scaling we need to deploy whole system, but monolith could be deployed in general. But if we look at your current implementation it could not be scaled at all because of processors (ProcessOutboxJob for example). Am I right?

If I am right, do you have some proposition, how scaling could be achieved?

For example, we can move ProcessOutboxJob to separate process. It can poll database and read outbox as it works now. Then we can scale rest of app. But when our ProcessOutboxJob will publish events to some bus (RabbitMQ) and have multiple instances of apps, that consume this messages, we will lose message ordering, which is critical. So, this is bad solution. And, to be honest, I do not know what to do. I really have no idea how to scale apps, that use Outbox pattern. Or read sides of EventSourced systems, for example

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions