In scope of this ticket ( - MODPUBSUB-64Getting issue details... STATUS ) were created 2 new sample modules locally. They were registered as 'publisher' and 'subscriber' in the 'mod-pubsub'.
After that, new mechanism on sending the specific number of events with counter from publisher to subscriber module was created. This mechanism working through 'Okapi' and 'mod-pubsub'. It was created without any timeouts between publishing events.
You can see the schema of this flow below:
Then, we run 'backend-core' vagrant box with specific resources parameters: CPUS=8; Memory=25GB
Memory | Total count | Payload size | Request time (from publisher module to pub-sub) | Result (Subscriber`s received events number) | |
---|---|---|---|---|---|
mod-pubsub | 682MB | 300 | 12 KB | First req: 1006ms Last req: 2931ms | 300 |
Okapi | 768MB | 500 | 12 KB | First req: 1452ms Last req: 5873ms | 416 |
Kafka | 700 | 12 KB | First req: 9081ms Last req: 14019ms | 552 |
As a result, we have that if number of events is more than 500, then some events published by the first module were not received by another. This is an issue for further investigation: