IP Library › Granted Patent US 11,843,660
Granted Patent B2
US 11,843,660 · App. 17/057,976 · Granted Dec 12, 2023

Transfer control device, transfer control method, service provision system, and transfer control program

Inventor: Yasutoshi Miyagi (Tokyo, JP)
Assignee: Nippon Telegraph and Telephone Corporation
H04L67/1008G06F9/505G06F9/5055G06F11/004G06F11/008G06F11/30G06F11/3433H04L1/22H04L12/00H04L41/0668H04L43/0805H04L43/16H04L45/7453H04L49/50H04L49/55
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,843,660
App. No.
17/057,976
Granted
Dec 12, 2023
Kind
B2
Abstract

To provide a transfer control apparatus, a transfer control method, and a transfer control program, by which it is possible to improve availability without modifying an application side. The transfer control apparatus 1 is an apparatus for dynamically switching enablers 2 , and includes a registration unit 11 that registers enablers 2 having a similar function, in an identical genre, a monitoring unit 12 that monitors states of the enablers 2 , and a transfer control unit 13 that transfers a request to an alternative enabler 2 registered in a genre identical to each of the enablers 2 to automatically switch a request destination if the enabler 2 is in a predetermined busy state upon calling the enabler 2.

Claims (60)

1. A transfer control apparatus for dynamically switching enablers, comprising:

one or more computers; and

one or more storage devices coupled with the one or more computers and storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

registering a plurality of first enablers in a first genre and a plurality of second enablers in a second genre, wherein each first enabler of the plurality of first enablers has a first function, and each second enabler of the plurality of second enablers has a second function that differs from the first function;

determining an execution priority of the plurality of first enablers in the first genre and the plurality of second enablers in the second genre;

setting, based on the execution priority, a default enabler for the first genre and the second genre;

monitoring states of the plurality of first enablers and the plurality of second enablers;

receiving a request for a result of a function;

transmitting the request to the default enabler;

in response to transmitting the request to the default enabler, receiving an error from the default enabler;

in response to receiving the error from the default enabler, determining the default enabler is in a predetermined busy state; and

in response to determining the default enabler is in the predetermined busy state, transferring the request to a first alternative enabler and a second alternative enabler registered in at least one of the first genre or the second genre to switch a request destination, wherein the first alternative enabler and the second alternative enabler each have a next highest execution priority after the default enabler.

2. The transfer control apparatus according to claim 1 , wherein the operations comprise setting, as a target application programming interface (API) to be converted, a method of a function common to APIs in at least one of the first genre or the second genre when the default enabler in the same genre is registered, and converting the method when the request is transferred to the first alternative enabler and the second alternative enabler in the same genre.

3. The transfer control apparatus according to claim 1 , wherein the operations comprise setting, as a genre calling application programming interface (API), a method of a function common to APIs in at least one of the first genre or the second genre when the default enabler in the same genre is registered, and converting the method at each calling.

4. The transfer control apparatus according to claim 1 , in response to transferring the request to the first alternative enabler and the second alternative enabler, receiving, from each of the first alternative enabler and the second alternative enabler, the result of the function.

5. The transfer control apparatus according to claim 4 , wherein the request comprises a text to be translated in a particular language and the result of the function comprises a translation of the text in the particular language.

6. The transfer control apparatus according to claim 4 , wherein the request comprises a text written in a particular language and the result of the function comprises a detection of the particular language of the written text.

7. A service providing system comprising a load distribution device and a plurality of transfer control apparatuses, each transfer control apparatus comprising:

one or more computers; and

one or more storage devices coupled with the one or more computers and storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

registering a plurality of first enablers in a first genre and a plurality of second enablers in a second genre, wherein each first enabler of the plurality of first enablers has a first function, and each second enabler of the plurality of second enablers has a second function that differs from the first function;

determining an execution priority of the plurality of first enablers in the first genre and the plurality of second enablers in the second genre;

setting, based on the execution priority, a default enabler for the first genre and the second genre;

monitoring states of the plurality of first enablers and the plurality of second enablers;

receiving a request for a result of a function;

transmitting the request to the default enabler;

in response to transmitting the request to the default enabler, receiving an error from the default enabler;

in response to receiving the error from the default enabler, determining the default enabler is in a predetermined busy state; and

in response to determining the default enabler is in the predetermined busy state, transferring the request to a first alternative enabler and a second alternative enabler registered in at least one of the first genre or the second genre to switch a request destination, wherein the first alternative enabler and the second alternative enabler each have a next highest execution priority after the default enabler; and

the load distribution device comprising:

one or more computers; and

one or more storage devices coupled with the one or more computers and storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

calculating a hash value of a user identifier (ID) included in the request; and

determining an allocation destination of the request by using the hash value of the user ID; and

wherein the operations of the transfer control apparatus further comprise:

storing a transfer destination enabler to which the request is transferred, for each user ID;

reading, from the one or more storage devices of the transfer control apparatus, the transfer destination enabler corresponding to the user ID included in the request; and

determining an enabler to which the request is transferred based on the transfer destination enabler.

8. The service providing system according to claim 7 , wherein the operations of the load distribution device further comprise reassigning a hash table by using a Consistent Hash method when a new transfer control apparatus is added, and wherein the operations of the transfer control apparatus further comprise distributing a part of user information of the transfer control apparatus to the new transfer control apparatus, according to the reassigned hash table.

9. The service providing system according to claim 7 , wherein the operations of the load distribution device further comprise reassigning a hash table by using a Consistent Hash method when the transfer control apparatus is removed, and wherein the operations of the transfer control apparatus further comprise storing, as user information of the transfer control apparatus, at least a part of user information of the removed transfer control apparatus, into the one or more storage devices of the transfer control apparatus, according to the reassigned hash table.

10. A transfer control method for dynamically switching enablers using a computer to execute the method comprising:

registering a plurality of first enablers in a first genre and a plurality of second enablers in a second genre, wherein each first enabler of the plurality of first enablers has a first function, and each second enabler of the plurality of second enablers has a second function that differs from the first function;

determining an execution priority of the plurality of first enablers in the first genre and the plurality of second enablers in the second genre;

setting, based on the execution priority, a default enabler for the first genre and the second genre;

monitoring states of the plurality of first enablers and the plurality of second enablers;

receiving a request for a result of a function;

transmitting the request to the default enabler;

in response to transmitting the request to the default enabler, receiving an error from the default enabler;

in response to receiving the error from the default enabler, determining the default enabler is in a predetermined busy state; and

in response to determining the default enabler is in the predetermined busy state, transferring the request to a first alternative enabler and a second alternative enabler registered in at least one of the first genre or the second genre to switch a request destination, wherein the first alternative enabler and the second alternative enabler each have a next highest execution priority after the default enabler.

11. A non-transitory computer readable medium comprising a transfer control program which, when executed by a computer, causes the computer to perform operations, comprising:

registering a plurality of first enablers in a first genre and a plurality of second enablers in a second genre, wherein each first enabler of the plurality of first enablers has a first function, and each second enabler of the plurality of second enablers has a second function that differs from the first function;

determining an execution priority of the plurality of first enablers in the first genre and the plurality of second enablers in the second genre;

setting, based on the execution priority, a default enabler for the first genre and the second genre;

monitoring states of the plurality of first enablers and the plurality of second enablers;

receiving a request for a result of a function;

transmitting the request to the default enabler;

in response to transmitting the request to the default enabler, receiving an error from the default enabler;

in response to receiving the error from the default enabler, determining the default enabler is in a predetermined busy state; and

in response to determining the default enabler is in the predetermined busy state, transferring the request to a first alternative enabler and a second alternative enabler registered in at least one of the first genre or the second genre to switch a request destination, wherein the first alternative enabler and the second alternative enabler each have a next highest execution priority after the default enabler.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2021
From: MIYAGI, YASUTOSHI
To: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
Reel/Frame 054828/0199 →
Priority Claims (1)
JP 2018-101304 · May 28, 2018 · national
Continuity (1)
Related Publication 20210203719A1 · Jul 1, 2021