After a discussion with a friend, I decided to try to implement a small project to cover the Requests & Response Http project with additional requirements. The aim is to be aware of concepts, pros & cons, and limitations to drive projects with correct architecture principles or learn from misunderstandings.
- deeper understand reactive architecture
- better understanding of Kafka & environment
- try to find solutions for problems in that process
- try to implement reactiveness with Reactive manifesto
- scalable
- I assume there is infinity number of producers & consumers
- using consumer groups
- message-drive
- based on Kafka
- using topics with partitions
- aim for
exactly one processing
- guaranty of atomic processing events
- consider Outbox pattern
- based on Kafka
- independence/autonomy of consumers
- consider sharing/local data per node for optimization
- scalable
- using docker-compose
- using AKHQ for monitoring kafka
For future retrospective perspective, I would like to full records my problems, perspectives and solutions.
This is a little longer list as was initial to this PoC
- till now, I read
[03.04.2022]
- Choreography Sagas in DDD - Chain of Integration Events?
- Pattern: Saga
- Java for the Haters in 100 Seconds
[05.04.2022]
- The Top 5 Redis-Based Java Objects
- A Guide to Redis with Redisson
- Mono switchIfEmpty vs defaultIfEmpty
[09.04.2022]
- Whole list of related solutions to: Topic not present in metadata after 60000 ms
- My Client Won’t Connect to My Apache Kafka Cluster in Docker
[25.04.2022]
Summary update
- Lettuce - alternative to Reddison
- Serializers/Deserializers in Confluent
- Event streams patterns
- Support of EventBus in Micronaut
- Advanced operations in Reactor
- 12 Factor app
- Reactive manifesto
- [PL] Co ssie w programowaniu reaktywnym / What sucks in reactive programming
[03.05.2022]
- Returning null in map vs flatMap
- Split integration & unit tests with
sourceSets
- Adding context to Mono flow for correlationId that omits main logic