J-Integra® Espresso: Client Connection Model

J-Integra® Espresso offers the choice between two models for a client connection (controlled by the parameter -CltConnection=<PerClient,PerObject>):

  1. PerClient: one connection per client/server pair (default option)
  2. PerObject: one connection per object

In the first case the connection to a server is running over one channel for all objects. In the second case each object creates its own channel (i.e. with each new object a client socket is opened). The first (default) option requires less resources and is the best choice for most environments. However, depending on the threading model of the server (in particular, a threading model with only one thread per connecting client), the performance is heavily increased when each object is using its own channel (connection). In this scenario one should use the 'one connection per object' option.

J-Integra® Espresso's server implementation provides a thread pool (the number of threads is controlled by the parameter -TP=<n>). With this threading model, each request is served by a separate thread independent of the client connection. The performance is only limited by the number of threads in the pool.