Hello,
I try to wrap my mind around the concepts of non blocking programming. I hear often that this should be more efficient in the terms of the runtime; e.g. the CPU should be better utilized. Several “modern” API (e.g. Kafka and Spring’s WebFlux) state they were non blocking.
While I still have not understood all the benefits and drawbacks (frankly said, I see more drawbacks as of now), one thing that I see often is that if one wants to implement a system in a non-blocking way, all its components should be implemented this way. If some are blocking, all the efforts would be in vain.
So my question is: How does Camunda BPM support this way of programming? Has anyone tried to implement a process application in the non-blocking way?
I understand that the question is very vague because I don’t tell which part of the application should be non-blocking and what is being blocked. But let’s say I’m only interested in the API Camunda provides, i.e. Java Delegates.
Thank you for sharing your thoughts!