Each HTTP “call” of your generic web service (or any other IS Flow or java service for that matter) starts a new session which grabs an available thread from the IS server thread pool.
As long as the server on which IS is running has available CPU, memory, thread and, to a lesser degree, disk resources to perform the work represented by the requests, all simultaneously received requests will be processed.
So, you don’t need to do anything else to process multiple web services requests simultaneously. If you run out of threads from the server thread pool and still have available memory and CPU, you can increase the maximum number of threads using the Administrator’s Settings->Resources->Edit menu to a value established by testing (don’t just blindly crank it way up).
By creating java services that make use of the Service.doThreadedInvoke method, you can invoke IS flow or java services on their own thread. This can be useful if you have large chunks of work that can be executed in parallel at the price of increased coding complexity.