I have seen this problem several times, usually with the provider database.
If it is on Windows, you can create a Windows service as an intermediary between the SOAP service and the database. Then put a message queue (either MSMQ or a JMS implementation such as the MQ Series) between the SOAP service and the Windows service for asynchronous communication. Thus, database performance problems will no longer affect the SOAP service. This solution, however, is associated with an increase in complexity.
Note that the .NET web service can be called and respond asynchronously to its clients. I'm not sure if this is possible using the Java SOAP service.
If this is due to some flavor of Unix, I assume that it has similar functionality for a Windows service - possibly a daemon.
source share