We are aware that this is an architectural decision, but we are also curious are there any cases from practice, or experienced advice so we do not need to learn from our mistakes :).
For example if we want to create case management system and most of the processes will be a human oriented (long running processes). Processes will receive all data form intake forms like case info, users, notice etc. Large part of received data will end up in database trough domain-specific service nodes.
Architectural decision is that all requests go through ESB, and that one ESB service will handle all interaction with process engine.
Now we are in doubt how to realize ESB service, should we create one session (StatefulKnowledgeSession) per process instance, or we can create one session for end user and store somewhere session info. , or we can create one session for all.
In the case of short running processes (integration-oriented), I would probably choose one session for all requests.