US 12,217,035 B2
Microservice termination while maintaining high availability
Ali Kanso, Kirkland, WA (US); and Karthik Maharajan Sankara Subramanian, Bellevue, WA (US)
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed by MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed on Mar. 20, 2024, as Appl. No. 18/611,041.
Application 18/611,041 is a continuation of application No. 17/945,003, filed on Sep. 14, 2022, granted, now 11,966,725.
Prior Publication US 2024/0231778 A1, Jul. 11, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 8/40 (2018.01); G06F 8/41 (2018.01); G06F 8/65 (2018.01)
CPC G06F 8/433 (2013.01) [G06F 8/65 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for terminating a plurality of microservices to ensure maximal availability comprising:
retrieving a plurality of request queues from the plurality of microservices, wherein a request queue of the plurality request queues contains one or more outstanding requests for one or more microservices;
constructing a plurality of call graphs based on the one or more outstanding requests contained in each request queue of the plurality of request queues;
updating the plurality of call graphs by monitoring the plurality of request queues in response to a completion of an outstanding request, wherein the completion of the outstanding request causes a removal of the outstanding request from a corresponding request queue;
determining that a microservice of the plurality of microservices does not appear in any of the updated plurality of call graphs following the completion of the outstanding request; and
terminating the microservice in response to determining that the microservice of the plurality of microservices does not appear in any of the updated plurality of call graphs.