What facilities does Talend ESB offer for endpoint resource management in terms of connection pooling, throttling, etc. within Data Services? I am assuming we are relying on our standard 'Data Integration' connection/integration infrastructure under the covers but dont understand how these aspects are managed. In addition, are there any constraints in the end-to-end data service scenario regarding concurrent execution of services e.g. threading constraints in DI components that we should be aware of?
Architecturally we are trying to push as much of the resource management into the ESB container underneath. This certain applies to how we handle SOAP connections and security resources for example. Where we use a data-source though, we rely on the connection factory within each component (need some for R&D to comment a little more on this).
For now the connection model we use Data Service is deliberately kept quite simple, while we make some modifications in the core ESB runtime. These modifications will allow us to have better management of the connection pools (and threads) across all Data Services that run on top of an ESB instance. This will be a nice feature of TESB in terms of resource management and how we scale the meet consumer demand.
Expect to see some changes coming in v5.0 and subsequent releases with how this is done. Let's just say out Apache friends have done some really nice work in CXF v2.5. Coming back to Data Services... Key thing is that we want to keep the configuration intuitive and as simple as possible and not require everyone to understand the threading model and service-endpoint relationship. We have some work to do around documenting how this all works - I agree.
For Java ESB developing - knock yourself out .... You can jump through hoops when you've got CXF underneath :-)