JP6815975B2 - Api管理システムおよびapi管理方法 - Google Patents
Api管理システムおよびapi管理方法 Download PDFInfo
- Publication number
- JP6815975B2 JP6815975B2 JP2017228969A JP2017228969A JP6815975B2 JP 6815975 B2 JP6815975 B2 JP 6815975B2 JP 2017228969 A JP2017228969 A JP 2017228969A JP 2017228969 A JP2017228969 A JP 2017228969A JP 6815975 B2 JP6815975 B2 JP 6815975B2
- Authority
- JP
- Japan
- Prior art keywords
- api
- information
- user
- mashup
- flow rate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims description 86
- 238000012545 processing Methods 0.000 claims description 137
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 55
- 230000008569 process Effects 0.000 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000010365 information processing Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 description 31
- 230000004044 response Effects 0.000 description 23
- 101000993976 Sagittaria sagittifolia Proteinase inhibitor A Proteins 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 9
- 238000003672 processing method Methods 0.000 description 7
- 101000993974 Sagittaria sagittifolia Proteinase inhibitor B Proteins 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 235000006085 Vigna mungo var mungo Nutrition 0.000 description 1
- 240000005616 Vigna mungo var. mungo Species 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
また、複数個のAPIリクエストを1回のリクエストで処理可能とする、バッチ処理の技術(非特許文献1)も開示されている。
義と、前記ユーザの該当APIに関する前記流量制御状態の情報とを所定アルゴリズムに適用し、前記定義におけるAPI間の依存関係を制約条件とし、前記流量制御状態の情報における流量制御解除までの待機時間を最小化する、APIの処理スケジュールを生成する、ことを特徴とする。
このうちアプリケーションサーバ2は、API管理システム1が公開するAPIを利用
するクライアントアプリケーションを提供するサーバ装置である。
また、エンドユーザ端末3は、エンドユーザが上述のアプリケーションサーバ2におけるクライアントアプリケーションを利用するユーザの端末である。
また、APIサーバ4は、API管理システム1を介してアプリケーションサーバ2にAPIを提供するサーバ装置である。
また、管理者端末5は、API管理システム1の管理者がAPI管理システム1を利用する端末である。
上述のアプリケーションサーバ2は、インターネットなどの適宜なネットワーク10を通じてAPI管理システム1と通信可能に接続されている。
同様に、エンドユーザ端末3は、企業内ネットワークなど適宜なネットワーク11を介してアプリケーションサーバ2と通信可能に接続されている。
に応じた処理を行い、レスポンスを生成するAPIレスポンス生成部402とからなる。これらは一般的なWebアプリケーションサーバで構成する。
カウンタ値に1を加算し、当該リクエストをAPIリクエスト処理部1021に返送する機能、をそれぞれ実装するプログラムで構成されている。
また、記憶部103にて蓄積するデータは、電子ファイルの形態でもよいし、データベースシステムで管理してもよい。
する。定義中の()は、()内の依存関係を満たしたまま、()外の依存関係を満たす、ということを表現している。例えば、「(A,B)→C」は、「API−A」と「API−B」の実行順序は任意であるが、どちらも「API−C」よりは先に実行完了とすることを表現している。
続いて、図8は、マッシュアップに含まれているAPIを並列処理する場合のスケジュールテーブル1036のデータ構成例を示す図である。
次に、スケジュール部1023は、上述のS1007で作成した仮想流量制御状態テーブル1035Cを参照し、各APIの待機時間を取得する(S1102)
次に、スケジュール部1023は、上述のS1101で取得したマッシュアップ定義に対して、S1103〜S1106を行う。
スケジュールを生成する例を示したが、そうした仮想流量制御状態テーブルではなく、当初の流量制御状態テーブル1035(図6Aや図6B)に基づいて、APIの実行スケジュールを生成するとしてもよい。
−−−第2実施形態−−−
また、第2実施形態におけるアプリケーションサーバ2には、第1実施形態のアプリケーションサーバ2に対して、ユーザ条件蓄積部204が追加されている。
また、API管理システム1は、図2のAPI定義テーブル1031に示した条件登録APIと料金照会APIを公開する。
APIのリクエスト時に参照されたりする。
こうした本実施形態によれば、マッシュアップの含む各APIの属性やエンドユーザのニーズを踏まえ、マッシュアップ全体の処理効率を好適なものとできる。
おいて、前記マッシュアップの遂行に関してユーザが望む条件であるユーザ条件の情報を更に格納し、前記処理スケジュールの生成に際し、当該生成した処理スケジュールに沿って遂行した場合の前記マッシュアップの処理時間が、前記ユーザ条件で示す下限を上回るものであった場合、当該処理スケジュールに含まれる所定APIに関する待機時間を、当該ユーザへの所定の課金処理によって低減ないし解消し、前記処理スケジュールを更新する処理を更に実行する、としてもよい。
1 API管理システム
101 通信部
102 演算部
1021 APIリクエスト処理部
1022 流量制御部
1023 スケジュール部
1024 処理時間推定部
1025 API設定部
1026 マッシュアップ設定部
1027 画面生成部
1028 ユーザ条件設定部
103 記憶部
1031 API定義テーブル
1032 API流量制御設定テーブル
1033 マッシュアップ定義テーブル
1034 推定処理時間テーブル
1035 流量制御状態テーブル
1036 スケジュールテーブル
1037 ユーザ条件テーブル
2 アプリケーションサーバ
201 通信部
202 画面生成部
203 APIリクエスト生成部
3 エンドユーザ端末
301 通信部
302 表示部
303 入力部
4 APIサーバ
401 通信部
402 APIレスポンス生成部
5 管理者端末
501 通信部
502 表示部
503 入力部
Claims (10)
- APIの各ユーザに関する流量制御状態の情報を格納した記憶部と、
APIのマッシュアップに関するユーザからのリクエストを所定装置より受け付けて、前記リクエストが含む当該マッシュアップの定義と、前記ユーザの該当APIに関する前記流量制御状態の情報とを所定アルゴリズムに適用し、前記定義におけるAPI間の依存関係を制約条件とし、前記流量制御状態の情報における流量制御解除までの待機時間を最小化する、APIの処理スケジュールを生成する演算部と、
を備えることを特徴とするAPI管理システム。 - 前記演算部は、
所定の処理スケジュールに基づき進行中のマッシュアップに関して、当該処理スケジュールと、該当ユーザの該当APIに関する流量制御状態の情報とに基づき、当該マッシュアップにおける未実行のAPIによって以後生じる流量制御状態を、仮想流量制御状態として特定し、当該仮想流量制御状態の情報と前記進行中のマッシュアップの定義とを前記所定アルゴリズムに適用して、前記所定の処理スケジュールを更新する処理を更に実行するものである、
ことを特徴とする請求項1に記載のAPI管理システム。 - 前記記憶部は、
前記流量制御状態の情報として、各ユーザにおける各APIに関して、その1回目の実行から所定時間までに実行された実行回数、および、前記1回目の実行時刻、の各情報を格納するものであり、
前記演算部は、
前記仮想流量制御状態の情報を特定するに際し、前記所定の処理スケジュールに含まれる未実行のAPIの実行予定回数および実行予定時刻に基づいて、前記流量制御状態の情報に含まれる前記APIの実行回数と前記1回目の実行時刻を更新して、前記APIの仮想実行回数と前記1回目の仮想実行時刻を特定する処理と、前記未実行のAPIが最後に実行される予定時刻を特定する処理と、前記1回目の仮想実行時刻と、前記最後の実行時刻と、現在時刻とに基づいて該当APIの待機時間を算定する処理と、を実行するものである、
ことを特徴とする請求項2に記載のAPI管理システム。 - 前記記憶部は、
前記マッシュアップの遂行に関してユーザが望む条件であるユーザ条件の情報を更に格納するものであり、
前記演算部は、
前記処理スケジュールの生成に際し、当該生成した処理スケジュールに沿って遂行した場合の前記マッシュアップの処理時間が、前記ユーザ条件で示す下限を上回るものであった場合、当該処理スケジュールに含まれる所定APIに関する待機時間を、当該ユーザへの所定の課金処理によって低減ないし解消し、前記処理スケジュールを更新する処理を更に実行するものである、
ことを特徴とする請求項1に記載のAPI管理システム。 - 前記演算部は、
前記ユーザの端末に、前記ユーザ条件の入力画面を配信し、当該入力画面を介して入力された情報をユーザ条件の情報として格納する処理を更に実行するものである、
ことを特徴とする請求項4に記載のAPI管理システム。 - APIの各ユーザに関する流量制御状態の情報を格納した記憶部を備えた情報処理シス
テムが、
APIのマッシュアップに関するユーザからのリクエストを所定装置より受け付けて、前記リクエストが含む当該マッシュアップの定義と、前記ユーザの該当APIに関する前記流量制御状態の情報とを所定アルゴリズムに適用し、前記定義におけるAPI間の依存関係を制約条件とし、前記流量制御状態の情報における流量制御解除までの待機時間を最小化する、APIの処理スケジュールを生成する、
ことを特徴とするAPI管理方法。 - 前記情報処理システムが、
所定の処理スケジュールに基づき進行中のマッシュアップに関して、当該処理スケジュールと、該当ユーザの該当APIに関する流量制御状態の情報とに基づき、当該マッシュアップにおける未実行のAPIによって以後生じる流量制御状態を、仮想流量制御状態として特定し、当該仮想流量制御状態の情報と前記進行中のマッシュアップの定義とを前記所定アルゴリズムに適用して、前記所定の処理スケジュールを更新する処理を更に実行する、
ことを特徴とする請求項6に記載のAPI管理方法。 - 前記情報処理システムが、
前記記憶部において、前記流量制御状態の情報として、各ユーザにおける各APIに関して、その1回目の実行から所定時間までに実行された実行回数、および、前記1回目の実行時刻、の各情報を格納し、
前記仮想流量制御状態の情報を特定するに際し、前記所定の処理スケジュールに含まれる未実行のAPIの実行予定回数および実行予定時刻に基づいて、前記流量制御状態の情報に含まれる前記APIの実行回数と前記1回目の実行時刻を更新して、前記APIの仮想実行回数と前記1回目の仮想実行時刻を特定する処理と、前記未実行のAPIが最後に実行される予定時刻を特定する処理と、前記1回目の仮想実行時刻と、前記最後の実行時刻と、現在時刻とに基づいて該当APIの待機時間を算定する処理と、を実行する、
ことを特徴とする請求項7に記載のAPI管理方法。 - 前記情報処理システムが、
前記記憶部において、前記マッシュアップの遂行に関してユーザが望む条件であるユーザ条件の情報を更に格納し、
前記処理スケジュールの生成に際し、当該生成した処理スケジュールに沿って遂行した場合の前記マッシュアップの処理時間が、前記ユーザ条件で示す下限を上回るものであった場合、当該処理スケジュールに含まれる所定APIに関する待機時間を、当該ユーザへの所定の課金処理によって低減ないし解消し、前記処理スケジュールを更新する処理を更に実行する、
ことを特徴とする請求項6に記載のAPI管理方法。 - 前記情報処理システムが、
前記ユーザの端末に、前記ユーザ条件の入力画面を配信し、当該入力画面を介して入力された情報をユーザ条件の情報として格納する処理を更に実行する、
ことを特徴とする請求項9に記載のAPI管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017228969A JP6815975B2 (ja) | 2017-11-29 | 2017-11-29 | Api管理システムおよびapi管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017228969A JP6815975B2 (ja) | 2017-11-29 | 2017-11-29 | Api管理システムおよびapi管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019101541A JP2019101541A (ja) | 2019-06-24 |
JP6815975B2 true JP6815975B2 (ja) | 2021-01-20 |
Family
ID=66976901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017228969A Active JP6815975B2 (ja) | 2017-11-29 | 2017-11-29 | Api管理システムおよびapi管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6815975B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021157236A (ja) * | 2020-03-25 | 2021-10-07 | 日本電気株式会社 | Api管理装置、api管理方法及びプログラム |
EP4423688A1 (en) * | 2021-10-30 | 2024-09-04 | Jio Platforms Limited | System and method of application programming interface scheduling |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3755147B2 (ja) * | 2001-05-25 | 2006-03-15 | 日本電気株式会社 | ポータルサイト作成方法およびポータルサイト作成装置 |
WO2008094540A1 (en) * | 2007-01-29 | 2008-08-07 | Mashery, Inc. | Methods for analyzing limiting, and enhancing access to an internet api, web service, and data |
CN102081632A (zh) * | 2009-11-30 | 2011-06-01 | 国际商业机器公司 | 创建服务混搭实例的方法和设备 |
JP6334920B2 (ja) * | 2014-01-07 | 2018-05-30 | キヤノン株式会社 | 権限管理サーバー及び権限管理方法 |
JP2015153085A (ja) * | 2014-02-13 | 2015-08-24 | 日本電信電話株式会社 | シナリオ並列化装置、シナリオ並列化方法、および、シナリオ並列化プログラム |
JP2015153314A (ja) * | 2014-02-18 | 2015-08-24 | 日本電信電話株式会社 | 流量配分装置、流量配分方法、および、流量配分プログラム |
-
2017
- 2017-11-29 JP JP2017228969A patent/JP6815975B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019101541A (ja) | 2019-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11310331B2 (en) | Optimizing user interface data caching for future actions | |
EP3688586B1 (en) | Leveraging microservice containers to provide tenant isolation in a multi-tenant api gateway | |
JP5627187B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US8938510B2 (en) | On-demand mailbox synchronization and migration system | |
US9300759B1 (en) | API calls with dependencies | |
US10616139B1 (en) | Reducing quota access | |
JP5449283B2 (ja) | クラウド共用型リソース提供システム | |
US20120254042A1 (en) | Integrated Mobile/Server Applications | |
US11741291B2 (en) | Systems and methods for providing error recovery in data transmissions | |
JP2008027442A (ja) | サブタスク・プロセッサの分散スケジューリング | |
US12051096B2 (en) | Managing use of software components | |
US8881182B1 (en) | Deferred API calls | |
JP6815975B2 (ja) | Api管理システムおよびapi管理方法 | |
JP6501694B2 (ja) | 計算機システム及び計算機システムのタスク実行方法 | |
US8694462B2 (en) | Scale-out system to acquire event data | |
JP7334260B2 (ja) | 複数のデータ構造を管理するための通信装置、通信方法、コンピュータプログラム、非一時的な記憶媒体および通信システム | |
KR101303949B1 (ko) | Rest 웹 서비스를 이용한 개방형 인터페이스 기반 지불 시스템 및 그 방법 | |
JP4060807B2 (ja) | コンテンツ流通管理システム、サービス管理装置、コンテンツ流通管理方法、およびプログラム | |
WO2017000660A1 (zh) | 获取、发送及交互方法、pcrf、ocs及交互系统 | |
JP2018026036A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2006113824A (ja) | ストレージ課金方法、ストレージ課金システム、及びストレージ課金プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200214 |
|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201125 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6815975 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |