IP Library Granted Patent US 11,599,387
Granted Patent B2
US 11,599,387 · App. 17/363,583 · Granted Mar 7, 2023

Re-initiation of microservices utilizing context information provided via service calls

Inventors: Shibi Panikkar (Bangalore, IN); Parminder Singh Sethi (Ludhiana, IN)
Assignee: Dell Products L.P.
G06F9/4881G06F9/54G06F11/0721G06F11/0784
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,599,387
App. No.
17/363,583
Granted
Mar 7, 2023
Kind
B2
Abstract

An apparatus comprises a processing device configured to identify, at a first microservice, a service call that is to be transmitted to a second microservice, and to modify the service call to include context information, the context information characterizing a current state of execution of one or more tasks by one of the first microservice and the second microservice. The processing device is further configured to provide, from the first microservice to the second microservice, the modified service call including the context information. The context information enables re-initiation of said one of the first microservice and the second microservice to continue execution of the one or more tasks from the current state.

Claims (38)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured to:

identify, at a first microservice, a service call that is to be transmitted to a second microservice;

modify the service call to include context information, the context information characterizing a current state of execution of one or more tasks by one of the first microservice and the second microservice; and

provide, from the first microservice to the second microservice, the modified service call including the context information;

wherein the context information enables re-initiation of said one of the first microservice and the second microservice to continue execution of the one or more tasks from the current state.

2. The apparatus of claim 1 wherein the first microservice comprises an orchestrator microservice, wherein the second microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, and wherein the context information characterizes the current state of execution of the one or more tasks by the second microservice.

3. The apparatus of claim 2 wherein the service call comprises a service request to be transmitted to the second microservice, and wherein the service request is sent in response to detecting a failure of the second microservice.

4. The apparatus of claim 3 wherein the failure of the second microservice is detected by analyzing one or more prior service calls received from the second microservice, at least one of the one or more prior service calls comprising the context information characterizing the current state of execution of the one or more tasks by the second microservice.

5. The apparatus of claim 1 wherein the second microservice comprises an orchestrator microservice, and wherein the first microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, and wherein the context information characterizes the current state of execution of the one or more tasks by the first microservice.

6. The apparatus of claim 5 wherein the service call comprises a service response to be transmitted to the second microservice.

7. The apparatus of claim 6 wherein the service response is sent in response to detecting a failure condition in the first microservice.

8. The apparatus of claim 1 wherein the first microservice comprises an attached data store, the at least one processing device being further configured to store the context information for the second microservice in the attached data store.

9. The apparatus of claim 8 wherein the context information for the second microservice is stored in the attached data store as a serialized object file.

10. The apparatus of claim 9 wherein the attached data store comprises an embedded file system of the first microservice, the context information being stored in the attached data store in a serialized data format in one or more comma separated values.

11. The apparatus of claim 1 wherein the context information comprises:

input data for the one or more tasks to be executed by said one of the first microservice and the second microservice;

a given one of two or more stages at which execution of said one of the first microservice and the second microservice failed; and

an error code indicating a type of failure of said one of the first microservice and the second microservice.

12. The apparatus of claim 1 wherein the one or more tasks of said one of the first microservice and the second microservice are executed in two or more stages in a designated order, wherein the context information characterizing the current state of execution of the one or more tasks by said one of the first microservice and the second microservice comprises an indication of a most recent one of the two or more stages successfully executed by said one of the first microservice and the second microservice, and wherein the context information enables re-initiation of said one of the first microservice and the second microservice to continue execution of the one or more tasks from a given one of the two or more stages following the most recent one of the two or more stages successfully executed by said one of the first microservice and the second microservice.

13. The apparatus of claim 1 wherein said one of the first microservice and the second microservice is implemented within a given software container instance.

14. The apparatus of claim 13 wherein failure of said one of the first microservice and the second microservice is detected via monitoring for failure of the given software container instance, and wherein said one of the first microservice and the second microservice is re-initiated utilizing the context information by re-initializing the given software container instance.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform steps of:

identifying, at a first microservice, a service call that is to be transmitted to a second microservice;

modifying the service call to include context information, the context information characterizing a current state of execution of one or more tasks by one of the first microservice and the second microservice; and

providing, from the first microservice to the second microservice, the modified service call including the context information;

wherein the context information enables re-initiation of said one of the first microservice and the second microservice to continue execution of the one or more tasks from the current state.

16. The computer program product of claim 15 wherein the first microservice comprises an orchestrator microservice, wherein the second microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, wherein the context information characterizes the current state of execution of the one or more tasks by the second microservice, and wherein the service call comprises a service request to be transmitted to the second microservice.

17. The computer program product of claim 15 wherein the second microservice comprises an orchestrator microservice, and wherein the first microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, wherein the context information characterizes the current state of execution of the one or more tasks by the first microservice, and wherein the service call comprises a service response to be transmitted to the second microservice.

18. A method comprising:

identifying, at a first microservice, a service call that is to be transmitted to a second microservice;

modifying the service call to include context information, the context information characterizing a current state of execution of one or more tasks by one of the first microservice and the second microservice; and

providing, from the first microservice to the second microservice, the modified service call including the context information;

wherein the context information enables re-initiation of said one of the first microservice and the second microservice to continue execution of the one or more tasks from the current state; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

19. The method of claim 18 wherein the first microservice comprises an orchestrator microservice, wherein the second microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, wherein the context information characterizes the current state of execution of the one or more tasks by the second microservice, and wherein the service call comprises a service request to be transmitted to the second microservice.

20. The method of claim 18 wherein the second microservice comprises an orchestrator microservice, and wherein the first microservice comprises one of a set of two or more participating microservices in a microservices execution chain orchestrated by the orchestrator microservice, wherein the context information characterizes the current state of execution of the one or more tasks by the first microservice, and wherein the service call comprises a service response to be transmitted to the second microservice.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2021
From: PANIKKAR, SHIBI; SETHI, PARMINDER SINGH
To: DELL PRODUCTS L.P.
Reel/Frame 056719/0785 →
Continuity (1)
Related Publication 20230004427A1 · Jan 5, 2023