I have the following issue.
I have an Integration Server to which an external application will send an XML . The IS performs some actions and will respond to the external application in an synchronous way. So in the same http it will respond with an XML in the body. The action to take can take up to 3 seconds.
Will this be an issue concerning the amount of http connections? What if 200 different connections are opened to the IS? Is there a limit in amount of connections?
I don’t think there is any limit to the number of http connections. Integration Server should be able to handle many transactions and it depends on your system’s capacity.
For better performance use clustering or multiple servers.
Wout: As Sreedhar pointed out, there are no inbuilt limits to accepting connections in IS. However, there may be other bottlenecks, depending on the processing you’re doing.
Here’s my experience with 4.6: I load tested IS 4.6 (lightweight processing services - no DB access) on dual Xeon 4 GB machines. The load was 60-100 concurrent connections and it had no problems (the load hardly registered).
You mentioned 200 different connections - is this the sustained load rate you must cater for? If your application going to process 200 documents a second consistently, you need to adjust your IS thread pool limit. See the ‘Settings > Resources’ section in the IS web admin page - you’ll probably need to set ‘thread pool max.’ to a number greater than 400 (assuming each IS connection uses two threads concurrently on average).
When IS runs out of threads, it is supposed to just queue incoming tasks, until a thread is free to process them. In practise, I have seen IS hang when max. thread count was exceeded. There is a fix for IS 4.6 (don’t recall it offhand - but it’s post 4.6SP2) that sets it to temporarily not accept incoming HTTP connections when the thread limit is exceeeded.