IP Library › Granted Patent US 11,558,478
Granted Patent B2
US 11,558,478 · App. 17/817,568 · Granted Jan 17, 2023

Scaling service discovery in a micro-service environment

Inventors: Yi Yang (Morrisville, NC); Wojciech Dec (Amsterdam, NL); Syed Basheeruddin Ahmed (Santa Clara, CA); Sanjay Agrawal (San Jose, CA); Ruchir Gupta (San Jose, CA)
Assignee: Cisco Technology, Inc.
H04L67/51G06F9/45558G06F2009/45595
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,558,478
App. No.
17/817,568
Granted
Jan 17, 2023
Kind
B2
Abstract

Systems and methods provide for scaling service discovery in a micro-service environment. A controller can inject a service discovery agent onto a host. At least one of the controller or the agent can identify a first set of micro-service containers that are dependencies of the first micro-service container and a second set of micro-service containers that are dependencies of the second micro-service container. At least one of the controller or the agent can update routing data for the first set of micro-service containers and the second set of micro-service containers. At least one of the controller or the agent can determine the second micro-service container has terminated on the host computing device. At least one of the controller or the agent can update the agent to remove the routing data for the second set of micro-service containers.

Claims (56)

1. A computer-implemented method comprising:

establishing, by a controller, a service discovery agent;

identifying one or more first micro-services provided by a first container, one or more second micro-services provided by a second container, one or more third micro-services provided by one or more third containers depending from the first container, and one or more fourth micro-services provided by one or more fourth containers depending from the second container;

updating the service discovery agent with first routing data to the one or more third containers and second routing data to the one or more fourth containers, wherein the first routing data includes routes from the first container to the one or more third containers and the second routing data includes routes from the second container to the one or more fourth containers;

determining the second container has terminated; and

updating the service discovery agent to remove at least the routes from the second container in the second routing data.

2. The computer-implemented method of claim 1 , wherein at least one of the containers is instantiated on a physical server.

3. The computer-implemented method of claim 1 , wherein at least of the containers is instantiated on a virtual machine.

4. The computer-implemented method of claim 1 , further comprising:

load-balancing requests to the one or more third containers.

5. The computer-implemented method of claim 1 , further comprising:

checking for dependencies from the first container.

6. The computer-implemented method of claim 5 , further comprising:

determining a new dependency from the first container to one or more fifth containers; and

updating the service discovery agent with third routing data to the one or more fifth containers.

7. The computer-implemented method of claim 6 , further comprising:

determining there is at least one common container among the fourth containers and the fifth containers,

wherein the third routing data excludes routing data to the at least one common container.

8. The computer-implemented method of claim 6 , further comprising:

determining at least one container of the one or more third containers has terminated; and

updating the service discovery agent to remove routing data to the at least one container.

9. The computer-implemented method of claim 1 , further comprising:

determining at least one common container among the third containers and the fourth containers,

wherein the second routing data exclude routing data to the at least one common container.

10. The computer-implemented method of claim 1 , further comprising:

determining the second container depends from at least one container; and

updating a second service discovery agent to remove third routing data to the second container.

11. A system, comprising:

one or more processors; and

memory including instructions that, when executed by the one or more processors, cause the system to:

establish a service discovery agent;

identify one or more first micro-services provided by a first container, one or more second micro-services provided by a second container, one or more third micro-services provided by one or more third containers depending from the first container, and one or more fourth micro-services provided by one or more fourth containers depending from the second container;

update the service discovery agent with first routing data to the one or more third containers and second routing data to the one or more fourth containers, wherein the first routing data includes routes from the first container to the one or more third containers and the second routing data includes routes from the second container to the one or more fourth containers;

determine the second container has terminated; and

update the service discovery agent to remove at least the routes from the second container in the second routing data.

12. The system of claim 11 , wherein at least one of the containers is instantiated on a physical server.

13. The system of claim 11 , wherein at least one of the containers is instantiated on a virtual machine.

14. The system of claim 11 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

load-balance requests to the one or more third containers.

15. The system of claim 11 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

check for dependencies from the first container in response to an event.

16. The system of claim 15 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

determine a new dependency from the first container to one or more fifth containers; and

update the service discovery agent with third routing data to the one or more fifth containers.

17. The system of claim 16 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

determine there is at least one common container among the fourth containers and the fifth containers,

wherein the third routing data excludes routing data to the at least one common container.

18. The system of claim 16 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

determine at least one container of the one or more third containers has terminated; and

update the service discovery agent to remove routing data to the at least one container.

19. The system of claim 11 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

determine at least one common container among the third containers and the fourth containers,

wherein the second routing data excludes routing data to the at least one common container.

20. The system of claim 11 , further comprising further instructions that, when executed by the one or more processors, further cause the system to:

determine the second container depends from at least one container; and

update a second service discovery agent to remove third routing data to the second container.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2022
From: YANG, YI; DEC, WOJCIECH; AHMED, SYED BASHEERUDDIN; AGRAWAL, SANJAY; GUPTA, RUCHIR
To: CISCO TECHNOLOGY, INC.
Reel/Frame 060724/0549 →
Continuity (3)
Continuation 16505618 · Jul 8, 2019
Continuation 15217311 · Jul 22, 2016
Related Publication 20220377150A1 · Nov 24, 2022