This is an abuse of web services. Do not do that.
Instead, the web service launches a lengthy operation running in a separate process. If customers need to know when reports will be executed, then a โseparate processโ tracks the creation of the report and whether it should take into account when the reports are completed. A customer can call a web service to check this status.
You really do not want to depend on an open HTTP connection from time to time. This is a network. Things happen on the net. Bad things.
source share