Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for processing a request in a client-server computing environment, the method comprising: receiving from a client a request submitted to a server for purpose of synchronous processing by the server; assigning the request to a first thread for processing within a first timeline, wherein the first timeline is predefined by the client; determining, by the first thread, whether the received request is acceptable; determining, by the first thread, whether the received request can be processed synchronously, based in part on known issues which affect the synchronous processing of the request without delay; in response to determining that the received request is associated with known issues, registering the request with a request registration system, wherein the request is assigned to the first thread for processing and registered with the request registration system at the same time, as one execution unit, and wherein the first thread marks itself as a worker thread executing the request; executing, by the first thread, a program of the request processor and attempting to service the request; in response to the first thread successfully servicing the request, reporting results of the execution of the request to the client and unregistering the request from the request registration system; in response to unregistering the request from the request registration system, terminating the first thread or reassigning the first thread to another request; in response to the first thread unsuccessfully servicing the request, executing, by the first thread, additional attempts to service the request within a second timeline; wherein if the additional attempts to service the request within the second timeline fail, then the first thread disassociates from the request, and wherein the request remains registered with the request registration system; and terminating the first thread or reassigning the first thread to service another request.
2. The method of claim 1 , further comprising: in response to determining, by the first thread, that the received request cannot be processed synchronously due to a fault occurring in the server, registering the request, by the first thread, with the request registration system for processing; notifying the client, by the first thread, that the synchronous processing of the request cannot be completed at that time; deferring, by the first thread, the processing of the request, to a later time, wherein the request is processed asynchronously at the later time; and terminating the first thread or reassigning the first thread to service another request.
3. The method of claim 2 , wherein an alternative thread or a secondary alternative thread is assigned for processing the request asynchronously, and the alternative thread dissociates itself from processing the request, if the alternative thread does not complete processing of the request within the second timeline.
4. The method of claim 1 , wherein the request is deemed acceptable, in response to determining that a user has credentials to access resources needed for processing the request.
5. The method of claim 1 , wherein the request is processed by a request processor thread executed on the server.
6. The method of claim 1 , wherein if the request is deemed unacceptable the request is rejected by the server and the first thread is terminated by the server.
7. The method of claim 1 , wherein after the request is determined acceptable and registered with the request registration system, the server is responsible for ensuring that the request is processed to completion, and wherein the server is configured to: attempt to service the request using the first thread; or assign the request to an alternative thread, if the first thread is unable to service the request.
8. The method of claim 2 , wherein the server submits a notification to the client indicating that the request has been registered with the request registration system for processing.
9. The method of claim 2 , wherein in response to determining that the first thread assigned to processing the request is terminated due to a fault occurring in the server, the request is asynchronously reassigned to an alternative thread.
10. The method of claim 1 , wherein the termination of the execution of a request by a thread and an assignment of the execution of a request to a thread cause for a notification to be sent to the client.
11. The method of claim 1 , wherein the first and second timelines are derived from at least one of the client request, client identity, type of service requested, or pre-configuration of the server.
12. The method of claim 1 , wherein a monitor is used to detect one or more faults in a thread assigned to process the request, such that in response to detecting a fault, the thread is disassociated from the request at the request registration system.
13. The method of claim 1 , wherein when a request registered at the request registration system is assigned to a worker thread, the request registration system automatically disassociates the thread from the request and asynchronously assigns the request to an alternative thread, unless the request is unregistered or disassociated from the worker thread at the request registration system within a timeline.
14. A system for processing a request in a client-server computing environment, the system comprising: one or more computer processors; one or more computer readable hardware storage media; program instructions stored on the one or more computer readable hardware storage media for execution by at least one of the one or more processors, the program instructions comprising: program instructions to receive from a client a request submitted to a server for purpose of synchronous processing by the server; program instructions to assign the request to a first thread for processing within a first timeline, wherein the first timeline is predefined by the client; program instructions to determine whether the received request is acceptable; program instructions to determine whether the received request can be processed synchronously, based in part on known issues which affect the synchronous processing of the request without delay; in response to determining that the received request is associated with known issues, program instructions to register the request with a request registration system, wherein the request is assigned to the first thread for processing and registered with the request registration system at the same time, as one execution unit, and wherein the first thread marks itself as a worker thread executing the request; program instructions to execute a program of the request processor and attempt to service the request; in response to the first thread successfully servicing the request, program instructions to report results of the execution of the request to the client and unregister the request from the request registration system; in response to unregistering the request from the request registration system, program instructions to terminate the first thread or reassign the first thread to another request; in response to the first thread unsuccessfully servicing the request, program instructions to execute additional attempts to service the request within a second timeline; wherein if the additional attempts to service the request within the second timeline fail, then the first thread disassociates from the request, and wherein the request remains registered with the request registration system; and program instructions to terminate the first thread or reassign the first thread to service another request.
15. The system of claim 14 , further comprising: in response to determining that the received request cannot be processed synchronously due to a fault occurring in the server, program instructions to register the request with the request registration system for processing; program instructions to notify the client that the synchronous processing of the request cannot be completed at that time; program instructions to defer the processing of the request, to a later time, wherein the request is processed asynchronously at the later time; and program instructions to terminate the first thread or reassign the first thread to service another request.
16. The system of claim 15 , wherein an alternative thread or a secondary alternative thread is assigned for processing the request asynchronously, and the alternative thread dissociates itself from processing the request, if the alternative thread does not complete processing of the request within the second timeline.
17. The system of claim 14 , wherein the request is deemed acceptable, in response to determining that a user has credentials to access resources needed for processing the request.
18. The system of claim 14 , wherein the request is processed by a request processor thread executed on the server.
19. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program, wherein the computer readable program when executed on a computer causes the computer to: receive from a client a request submitted to a server for purpose of synchronous processing by the server; assign the request to a first thread for processing within a first timeline, wherein the first timeline is predefined by the client; determine whether the received request is acceptable; determine whether the received request can be processed synchronously, based in part on known issues which affect the synchronous processing of the request without delay; in response to determining that the received request is associated with known issues, register the request with a request registration system, wherein the request is assigned to the first thread for processing and registered with the request registration system at the same time, as one execution unit, and wherein the first thread marks itself as a worker thread executing the request; execute a program of the request processor and attempt to service the request; in response to the first thread successfully servicing the request, report results of the execution of the request to the client and unregister the request from the request registration system; in response to unregistering the request from the request registration system, terminate the first thread or reassign the first thread to another request; in response to the first thread unsuccessfully servicing the request, execute additional attempts to service the request within a second timeline; wherein if the additional attempts to service the request within the second timeline fail, then the first thread disassociates from the request, and wherein the request remains registered with the request registration system; and terminate the first thread or reassign the first thread to service another request.
20. The computer program product of claim 19 , further comprising: in response to determining that the received request cannot be processed synchronously due to a fault occurring in the server, register the request with the request registration system for processing; notify the client that the synchronous processing of the request cannot be completed at that time; defer the processing of the request, to a later time, wherein the request is processed asynchronously at the later time; and terminate the first thread or reassign the first thread to service another request.
21. The computer program product of claim 20 , wherein an alternative thread or a secondary alternative thread is assigned for processing the request asynchronously, and the alternative thread dissociates itself from processing the request, if the alternative thread does not complete processing of the request within the second timeline.
22. The computer program product of claim 19 , wherein the request is deemed acceptable, in response to determining that a user has credentials to access resources needed for processing the request.
23. The computer program product of claim 19 , wherein the request is processed by a request processor thread executed on the server.
Unknown
June 21, 2016
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.