Automatic cross-data center rotation of active processes
US-2018150316-A1 · May 31, 2018 · US
US10182111B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10182111-B2 |
| Application number | US-201615370143-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 6, 2016 |
| Priority date | Dec 6, 2016 |
| Publication date | Jan 15, 2019 |
| Grant date | Jan 15, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques for handling the dynamic reassignment of entities among multiple data centers are provided. In one technique, for each task of a plurality of tasks that are associated with a first data center of a plurality of data centers, an entity identifier that is associated with the task is identified. A call to an entity routing service is initiated, where the call includes the entity A response to the call is received from the entity routing service, where the response indicates a particular data center. An entity processor that is different than the entity routing service processes the task only if the particular data center is the first data center. If the particular data center is different than the first data center, then a data structure that stores the task is updated to indicate the particular data center and the task is eventually processed in the particular data center.
Opening claim text (preview).
What is claimed is: 1. A system comprising: one or more processors; one or more storage media storing instructions which, when executed by one or more processors, cause: for each task of a plurality of tasks that are associated with a first data center of a plurality of data centers: identifying an entity identifier that is associated with said each task; initiating a call to an entity routing service, wherein the call includes the entity identifier; receiving, from the entity routing service, a response that indicates a particular data center; processing, by an entity processor that is different than the entity routing service, said each task only if the particular data center is the first data center; wherein the particular data center is the first data center, wherein the instructions, when executed by the one or more processors, further cause: retrieving the plurality of tasks from a queue that is replicated across the plurality of data centers; wherein the queue contains one or more tasks that are associated with a second data center, of the plurality of data centers, that is different than the first data center; wherein prior to inserting a particular task to the queue, the particular task is associated with a particular entity identifier that is associated with the first data center; after the particular task is inserted into the queue and prior to initiating, based on the particular entity identifier, a particular call to the entity routing service, updating a mapping accessible to the entity routing service to indicate that the particular entity identifier is associated with a third data center that is different than the first data center. 2. The system of claim 1 , wherein the instructions, when executed by the one or more processors, further cause: for each task that is processed by the entity processor, causing an update to be applied to the queue to indicate that said each task has been processed, wherein the update is replicated to the plurality of data centers. 3. The system of claim 1 , wherein the instructions, when executed by the one or more processors, further cause: initiating the particular call to the entity routing service, wherein the particular call includes the particular entity identifier; determining, by the entity routing service, that the particular entity identifier is associated with the third data center; receiving, from the entity routing service, a particular response that indicates that the particular entity identifier is associated with a data center that is different than the first data center; determining, based on the particular response, not to process the particular task. 4. The system of claim 3 , wherein the instructions, when executed by the one or more processors, further cause: in response to determining not to process the particular task, causing an update to be applied to the queue, in the first data center, from which the plurality of tasks are retrieved; wherein the update indicates that the particular task is associated with the second data center; wherein updates to the queue are automatically replicated to other data centers in the plurality of data centers. 5. The system of claim 1 , wherein the particular data center is the first data center, wherein processing said each task comprises: based on the entity identifier of said each task, identifying a particular row in a table that is replicated across the plurality of data centers; applying one or more changes to the particular row based on said task; wherein, after the one or more changes are applied to the particular row, the one or more changes are replicated to each other data center, of the plurality of data centers, that is different than the first data center. 6. The system of claim 1 , wherein identifying the entity identifier, initiating the call, and receiving the response are performed by a queue handler, wherein processing said each task is performed by one or more entity processors. 7. The system of claim 6 , wherein the instructions, when executed by the one or more processors, further cause: determining, by the queue handler, based on a particular response from the entity routing service, that a second particular entity identifier of a second particular task is associated with the first data center; in response to determining that the second particular entity identifier is associated with the first data center, selecting a particular entity processor from among a plurality of entity processors that execute in the first data center; processing, by the particular entity processor, the second particular task. 8. A system comprising: one or more processors; one or more storage media storing instructions which, when executed by one or more processors, cause: updating data center assignment data to indicate that a first data center, of a plurality of data centers, is to process tasks that are related to entities that were assigned to a second data center, of the plurality of data centers, that is different than the first data center; based on the data center assignment data, retrieving a plurality of tasks that are related to entities that are assigned to the first data center or the second data center; for each task of the plurality of tasks: identifying an entity identifier that is associated with said each task; initiating a call that is associated with an entity routing service, wherein the call includes the entity identifier; receiving, based on the call, a response that indicates a particular data center; processing said each task only if the particular data center is the first data center or the second data center; wherein: initiating and receiving are performed by a first process; initiating the call comprises initiating a third call to a second process that is different than the first process and that receives the entity identifier; the instructions which, when executed by the one or more processors, further cause, prior to the first process receiving the response: initiating, by the second process, a second call to the entity routing service, wherein the second call includes the entity identifier; receiving, by the second process, from the entity routing service, a first response that indicates the particular data center; determining, by the second process, whether the particular data center is indicated in a list of data center indicators. 9. The system of claim 8 , wherein the instructions, when executed by the one or more processors, further cause, prior to receiving the response: making a determination, based on the data center assignment data, whether the particular data center is indicated in the list of data center indicators; wherein the response is based on the determination. 10. The system of claim 9 , wherein the second process is a wrapper function on the entity routing service. 11. A method comprising: for each task of a plurality of tasks that are associated with a first data center of a plurality of data centers: identifying an entity identifier that is associated with said each task; initiating a call to an entity routing service, wherein the call includes the entity identifier; receiving, from the entity routing service, a response that indicates a particular data center; processing, by an entity processor that is different than the entity routing service, said each task only if the particular data center is the first data center; wherein the method is performed by one or more computing devices; wherein the particular data center is the first data center, the method further comprising: retrieving the plurality of tasks from a queue that is replicated across the plurality of da
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title
User profiles · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.