JP2019533256A - アプリケーションリンク拡張方法、装置、及びシステム - Google Patents

アプリケーションリンク拡張方法、装置、及びシステム Download PDF

Info

Publication number
JP2019533256A
JP2019533256A JP2019522310A JP2019522310A JP2019533256A JP 2019533256 A JP2019533256 A JP 2019533256A JP 2019522310 A JP2019522310 A JP 2019522310A JP 2019522310 A JP2019522310 A JP 2019522310A JP 2019533256 A JP2019533256 A JP 2019533256A
Authority
JP
Japan
Prior art keywords
application
link
resource
information
target
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.)
Granted
Application number
JP2019522310A
Other languages
English (en)
Other versions
JP7086065B2 (ja
Inventor
リー ユーチエン
リー ユーチエン
シュー ホワ
シュー ホワ
ユーディン
ディン ユー
ヤン シンフェイ
ヤン シンフェイ
ホアン タオ
ホアン タオ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019533256A publication Critical patent/JP2019533256A/ja
Application granted granted Critical
Publication of JP7086065B2 publication Critical patent/JP7086065B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本出願の実施形態ではアプリケーションリンク拡張、装置及びシステムが提供される。方法は、サービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路であるアプリケーションリンクを取得することと、アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定することと、ターゲットリソースの情報に従ってそれぞれのリソースをアプリケーションに割り当てることと、それぞれのリソースに従ってアプリケーションのインスタンスを生成することと、を含む。サービスの観点からは、本出願の実施形態では、リンク内の関連アプリケーションの容量を全体として評価、リンク全体の容量拡張を行うことにより、リソースを完全利用し、アプリケーションが他のアプリケーションから呼び出されリソース不足に陥ることが防止される。これにより、アプリケーションがシステムの脆弱性となることが確実に防止され、システムの安定性を確保し、アプリケーションへの過剰なリソース割り当てを回避して、リソースの浪費を削減する。

Description

本出願は、2016年11月1日に出願された中国特許出願第201610951548.3号「アプリケーションリンク拡張方法、装置及びシステム」の優先権を主張し、その全体が参照により本明細書に組み入れられる。
本出願は、コンピュータ処理の技術分野に関し、特にアプリケーションリンク拡張方法、装置、及びシステムに関する。
クラウドコンピューティングは、インターネット上で動的にスケーラブルな仮想リソースをサービスの形で提供するコンピューティングモデルである。このアプローチを通じて、共有ハードウェア及びソフトウェアリソース並びに情報をオンデマンドでコンピュータ及び他の装置に提供することができる。
クラウドコンピューティングの基本的な環境は仮想化である。
アプリケーションは仮想マシン(VM、Virtual Machines)又はDockerコンテナを介して展開され、クラウドコンピューティングのリソースを共有する。
電子商取引のプロモーションなどの場合、システムが引き受けるプレッシャーは、通常の期間中のそれとは数桁異なる。電子商取引のプロモーションのような比較的高い負荷条件下でアプリケーションが正常に動作できることを保証するために、通常、アプリケーションの容量のアップスケーリングが行われる。
電子商取引のプロモーションなどのような状況では、多数のアプリケーション(1000にもなる可能性がある)が関係している。これらのアプリケーションには、リソースの再評価が必要なものと必要ないものとがある。
拡張が必要なアプリケーションの場合、従来のアプローチは、単一のアプリケーションが負担する必要がある負荷圧力と既存のリソースサービス能力を事前評価し、それによって拡張が必要なリソースの量を計算することである。次に、リソース割り当てシステムが呼び出されて、対応するリソースを適用し割り当てる。
このタイプのソリューションは、単一のアプリケーションの観点からのみ出発している。アプリケーションが他のアプリケーションによって呼び出されると、これらのリソースが不足し、アプリケーションがシステムの脆弱性となり、電子商取引のプロモーションなどの場合に、システムの不安定さを容易に招く可能性がある。より多くのリソースがそのアプリケーションに割り当てられた場合、リソースの浪費を生じる可能性がある。
上記問題に鑑み、本発明の実施形態は、上記問題を解決するか又は上記問題を少なくとも部分的に解決するアプリケーションリンク拡張方法、対応するアプリケーションリンク拡張装置、及びアプリケーションリンク拡張システムを提供するために提案される。
一態様では、本出願の実施形態は、アプリケーションリンク拡張システムを開示する。このシステムは、1つ以上のプロセッサと、メモリと、1つ以上のモジュールと、を備え、前記1つ以上のモジュールは、前記メモリに格納され前記1つ以上のプロセッサによって実行されるように構成され、前記1つ以上のモジュールは、アプリケーションリンクであって、1つのサービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路である前記アプリケーションリンクを取得し、前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定し、前記ターゲットリソースの情報に従ってそれぞれのリソースを前記アプリケーションに割り当て、前記それぞれのリソースに従って前記アプリケーションのインスタンスを生成する、機能を有する。
別の態様では、本出願の実施形態は、アプリケーションリンク拡張方法を開示する。1つのサービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路である前記アプリケーションリンクを取得することと、前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定することと、前記ターゲットリソースの情報に従ってそれぞれのリソースを前記アプリケーションに割り当てることと、前記それぞれのリソースに従って前記アプリケーションのインスタンスを生成することとが含まれる。
さらに別の態様では、本出願の実施形態は、アプリケーションリンク拡張装置を開示する。アプリケーションリンクを取得するように構成されたアプリケーションリンク取得モジュールであって、前記アプリケーションリンクは、1つのサービスシナリオに関して少なくとも2つの関連付けられたアプリケーションによって形成される経路である前記アプリケーションリンク取得モジュールと、前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定するように構成されたターゲットリソース情報決定モジュールと、それぞれのリソースを前記ターゲットリソースの前記情報に従って前記アプリケーションに割り当てるように構成されたリソース割り当てモジュールと、前記アプリケーションのためのインスタンスを上記それぞれのリソースに従って生成するように構成されたインスタンス生成モジュールとが含まれる。
本出願の実施形態は、以下の利点を含む。
本出願の実施形態では、アプリケーションリンク内のアプリケーションについて容量拡張に必要なターゲットリソースの情報が決定され、そのターゲットリソース情報に従ってリソースがアプリケーションに割り当てられる。アプリケーションのインスタンスがリソースを使用して生成される。サービスの観点からは、リンク内の関連アプリケーションの容量が全体として評価され、リンク全体の容量拡張がなされることによりリソースが完全利用され、アプリケーションが他のアプリケーションから呼び出されリソース不足に陥ることが防止される。これにより、アプリケーションがシステムの脆弱性となることが確実に防止され、さらにシステムの安定性が確保される。また、アプリケーションへの過剰なリソース割り当てが回避され、リソースの浪費が削減される。
本出願の実施形態によるアプリケーションリンク拡張方法のフローチャートである。 本出願の実施形態によるアプリケーションのリンクを拡張するための別のアプリケーションリンク拡張方法のフローチャートである。 本出願の実施形態によるアプリケーションリンク拡張の一例を示す図である。 本出願の実施形態のアプリケーションリンク拡張装置の構成ブロック図である。 本出願のサーバ実施形態の概略構造図である。
本出願の上記の目的、特徴及び利点をより明白かつ容易に理解できるようにするために、添付の図面及び特定の実施形態に関連して本出願を以下にさらに詳細に説明する。
図1を参照すると、本出願のアプリケーションリンク拡張方法の一実施形態のフローチャートが示されており、それは具体的には以下のステップを含むことができる。
ステップ101:アプリケーションリンクを取得する。
本出願の実施形態は、クラウドコンピューティングベースのプラットフォームに適用することができる。クラウドコンピューティングベースのプラットフォームは巨視的な概念であり、サービスの属性やサービスの形態により関連している。そのようなプラットフォームは複数のアプリケーションから構築される。
クラウドコンピューティングベースのプラットフォームでは、アプリケーションは複数のインスタンスを生成でき、これらのインスタンスはアプリケーションクラスタを形成できる。
これらのアプリケーションは、ウェブ(ウェブページ)アプリケーションを含み得る。このようなウェブアプリケーションは、必ずしもウェブに限定されるものではなく、無線APP(アプリケーション)などのアプリケーションであってもよい。例えば、クラウドコンピューティングプラットフォームが電子商取引プラットフォームである場合、そのようなプラットフォームの特定のアプリケーションは製品データを照会する機能を実装でき、その特定のアプリケーションは、会員情報を取得し、配送先住所を受け取る機能などを実装することができる。
Webアプリケーションは、分散システムなどのクラウドコンピューティングベースのコンピュータクラスタに展開することができる。具体的には、ユーザー(開発者)から提示されたWebアプリケーションプログラムは対応するWebコンテナに配置され、ロードバランサ、データベース、ストレージサービスなどの対応するサポートコンポーネントが構成され、最終的にWebアプリケーションは正確かつ完璧に動作する。
クラウドベースコンピューティングとは、Webアプリケーションの展開と拡張のアーキテクチャ、プロセス、及びモデルをクラウドコンピューティングの基本環境に適合させることをいい、クラウドコンピューティングの一般的なIaas(Infrastructure as a Service)を使用した迅速な展開と動的な容量拡張を可能とし、PaaS(サービスとしてのプラットフォーム)を提供する。
Webアプリケーションの拡張は、Webアプリケーションの負荷が頻繁かつ急激に変化することを狙いとしている。負荷の変化に適応するようにウェブアプリケーションの動作中のサービス容量を動的に増減してさせることによって、サービス品質を保証しつつサービスリソースの利用率が改善される。
本出願の実施形態では、容量を拡張する必要があるサービスオブジェクトのアプリケーションリンクは、事前に収集することができ、アプリケーションリンクは、サービスシナリオに関して少なくとも2つの関連付けられたアプリケーションによって形成される経路である。
実際のアプリケーションでは、サービスの属性に従って、これらのアプリケーションサービスは多数のオブジェクトと関連関係を持つことができる。あるサービスシナリオのリンク指向のサービス経路だけが関係する場合、それはリンク指向の関係として抽象化することができる。
さらに、少なくとも2つのアプリケーションがアプリケーションリンク内で順序付けされている。先順序のアプリケーションが、その後の順序とされたアプリケーションによって提供されるサービスを呼び出すことにより、先順序のアプリケーションによって提供されるサービスを実行する。
電子商取引の購入者のリンクが、アプリケーションリンクの例として使用される。購入者のリンクには以下が含まれる。
製品データの照会→会員情報、配送先住所を取得→製品在庫を確認→未払いの注文数を確認→注文を分割、最適化情報を確認→物理的情報、郵便料金、送料、及び購入制限を確認→付加価値サービスを確認→注文を生成→支払いを実行→評価、アフターセールスなど
製品データ照会などのオペレーションは、アプリケーションによって実行される機能であり、「→」はアプリケーション間の呼び出し関係を表す。
ステップ102:アプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソース情報を決定する。
具体的な実装では、アプリケーションリンク内のアプリケーションは一般に依存関係を有するので、アプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソース情報は、全体として事前に推定することができる。
本出願の実施形態では、ステップ102は、以下のサブステップを含み得る。
サブステップS11:アプリケーションリンクに対して構成されているターゲットフロー情報を取得する。
サブステップS12:ターゲットフロー情報に基づいて、アプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソース情報を計算する。
具体的な実装形態では、サービスシナリオの特徴に従って、アプリケーションリンク全体のエントリ開始要求のピークフロー又は提供されることが予想されるフローデータが、ターゲットフロー情報として事前に推定され得る。このターゲットフロー情報に従ってアプリケーションリンクのリソース割り当てが行われる。
例えば、電子商取引のプロモーションなどのような状況では、意思決定レベルにおいて全体的な指標がリソース準備段階で策定される。12w/sの取引注文が出された場合、12w/sの注文が作成され、8w/sの支払いが行われ、過剰な部分はアプリケーションによって自動的に制限される。このフロー制限を前提として、対応するトランザクション制限12w/sが設定されている。
対応する購入者のリンクにはキーノードが含まれる:照会した製品情報→会員情報、配送先住所を取得→製品在庫を確認→未払いの注文数を確認→注文を分割、最適化情報を確認→物理的情報、郵便料金、送料、及び購入制限を確認→付加価値サービスを確認→注文を生成→支払いを実行→評価、アフターセールスなど。
アプリケーション「製品データ照会アプリケーション」のフローは、12w/sよりはるかに大きい。アプリケーション「注文を生成」のフローのピーク値は12w/sである。「支払いを実行」アプリケーションのフローのピーク値は8w/sである。
アプリケーションリンクに対するエントリ開始要求のピークフローは、容量の準備段階における決定に由来する。この決定は、過去のシステム維持能力、新しいリソースの準備、及びシステム最適化能力に基づくものであり、その後、最大処理容量が総合的に評価される。過剰な部分はフロー制限によって放棄され、システムを保護し、対象の高可用性を確保する。
リンク関係及びリンク履歴アプリケーションフロー情報などのデータが取得され、リンク上のアプリケーションノードの直接フロー比が形成される。事前設定されたターゲットフローを処理するためにアプリケーションリンク内のすべてのアプリケーションに必要とされる総リソースに関する情報が推定される。
リンク履歴アプリケーションフロー情報について、「製品データ照会」アプリケーションのフローが120wの場合、「会員情報、配送先住所取得」アプリケーションのフローは50w、「製品在庫確認」アプリケーションのフローは歴史的に10wであり、購入者のリンク上のこれら3つのアプリケーションのフロー情報の比率は120:50:10である。
これらの比率は、アプリケーションリンク内のアプリケーションの容量が拡張されたときに要件が基本的に満たされるよう、リソースを初期化するための基礎として使用できる。
総リソースに関する情報から占有リソースに関する情報を減算することにより、アプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソースに関する情報が取得される。
例えば、フローピーク値12w/sは、購入者のリンクのアプリケーション「製品データ照会」のリソース割り当てに対応する。サービス能力のこの部分は、N*12wのサービス能力としてモデル化され、ここでNは倍数、すなわち12wのサービス能力の数倍である。12wの場合、2 * Nのリソースが必要である。14wのとき、14/12 * 2 * N = 7/3Nのリソースが必要である。2Nのリソースを準備する場合、1/3Nのリソースを準備する必要がある。
このような詳細な分割により、アプリケーションリンク上の各アプリケーションのターゲットリソース情報が取得され、リソースが追加又は解放される。
本出願の実施形態では、アプリケーションが複数のアプリケーションリンクを伴う場合、複数のアプリケーションリンクにおけるアプリケーションの容量拡張に必要なターゲットリソースのそれぞれの情報を組み合わせることによって、アプリケーションの容量拡張に必要なターゲットリソースの情報が決定される。
例えば、購買者のリンクに対応するアプリケーション「製品データ照会」の次のアプリケーション「会員情報、配送先住所」は会員リンクに関連しており、購買者のリンクのエントリへのフローに対して線形ではない。
必要なリソースは、メンバーリンクのユーザーの増加傾向、同時にオンライン接続するユーザー数などの情報を使用して評価する必要がある。
ステップ103:ターゲットリソース情報に従ってアプリケーションにリソースを割り当てる。
コンピュータクラスタでは、アイドル状態のリソースを有するサーバを、アプリケーション実行機能、アプリケーション安定性機能、及び隣接アプリケーション機能などのデータに基づいて選択することができ、リソースがアプリケーションに割り当てられる。
例えば、特定のアプリケーションが比較的大量のCPU/帯域幅(アプリケーション実行機能)を占有する場合は、比較的少量のCPU/帯域幅を占有するアプリケーション(隣接アプリケーション機能)が展開されているターゲットサーバーが選択される。例えば、注文アプリケーション(注文が失われた場合、ショッピングサイトは支払いを返金する必要がある)など、特定のアプリケーション(アプリケーション実行機能)がリソースの損失を伴う場合、リソースの損失を伴うアプリケーション(隣接アプリケーション機能)の展開がより少ないターゲットサーバーが選択される。
別の例では、あるアプリケーションが調整ノード(アプリケーション安定性機能)である場合、その展開は、同じサーバ上に集中して展開されることを回避するためにできるだけ分散される。アプリケーションのインスタンスはできるだけ分散され(アプリケーション安定性機能)、例えば、同じサーバへの集中的な展開は避けられる。
仮想マシンは、サーバに基づいて「仮想化」されているリソースである。仮想マシンをサーバに適用することは、アプリケーションの容量拡張に必要なインスタンスのリソースをサーバに適用することと同じである。
ステップ104:リソースを使用してアプリケーション用のインスタンスを生成する。
アプリケーションが成功した後、予め設定されたコンテナミラーリングセンター内のアプリケーションのイメージファイルがアプリケーションの名前に従って取得され、サーバにダウンロードされる。ターゲットサーバー上のエージェント(agent)がミラーリング展開タスクを実行するために実行される。
仮想マシンがXEN、LVM、CLOCKER、LXCなど、様々であるため、ミラーリング展開タスクも異なる。
仮想化タスクが完了した後、インスタンス、すなわち実行アプリケーションを起動することができる。
例えば、仮想マシンがCLOCKERの場合、仮想化時にコンテナが使用される。コマンドclocker pull <image_name>及びclocker run<image_name>を入力後、仮想マシンが展開されコンテナが起動される。Image_nameはイメージの名前である。
別の例では、仮想マシンがVMの場合、エージェントがVMにインストールされる。アプリケーションの命令が開始されると、VMに展開されるアプリケーションを開始するために、開始コマンドをVMエージェントに送信する必要がある。
本出願の実施形態では、アプリケーションリンク内のアプリケーションについて容量拡張に必要なターゲットリソースの情報が決定され、そのターゲットリソース情報に従ってリソースがアプリケーションに割り当てられる。アプリケーションのインスタンスがリソースを使用して生成される。サービスの観点からは、リンク内の関連アプリケーションの容量が全体として評価され、リンク全体の容量拡張がなされることによりリソースが完全利用され、アプリケーションが他のアプリケーションから呼び出されリソース不足に陥ることが防止される。これにより、アプリケーションがシステムの脆弱性となることが確実に防止され、さらにシステムの安定性が確保される。また、アプリケーションへの過剰なリソース割り当てが回避され、リソースの浪費が削減される。
図2を参照すると、他のアプリケーションリンク拡張方法の一実施形態のフローチャートが示されている。具体的には、この方法は以下のステップを含み得る。
ステップ201:アプリケーションリンクを取得する。
アプリケーションリンクは、サービスシナリオのために少なくとも関連付けられたアプリケーションによって形成される経路である。
ステップ202:アプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソース情報を決定する。
ステップ203:ターゲットリソース情報に従ってアプリケーションにリソースを割り当てる。
ステップ204:リソースを使用してアプリケーション用のインスタンスを生成する。
ステップ205:アプリケーションリンク上でストレステストを実行する。
アプリケーションリンク用のリソースを最初に準備した後、リンクストレス測定ツールを使用してリンク指向のパフォーマンステストを実行できる。
特定の実施形態では、シミュレーション要求データを構築することができ、ストレス測定ツールはシミュレーション要求データを読み取り、同時要求をシミュレートする。要求はアプリケーションリンクのアプリケーション間で送信される。
アプリケーションは、同時に複数のアプリケーションリンクを伴うことがある。実際のシナリオでは複数のアプリケーションリンクが同時に開始されるので、アプリケーションクロスリンク要求の数及びアプリケーションクロスリンク要求の時点を各シミュレーションに対して完全に一致させることは困難である。従って、これらすべてをリソースに対して部分的に修正する必要がある。
この場合、最初に単一のアプリケーションリンクのリソースが十分であることを保証することができ、次いですべてのアプリケーションリンクに対するストレステストが同時に実行されることによりリソース修正が行われる。
特定のアプリケーションが複数のアプリケーションリンクを伴うとき、ターゲットリソースはそのアプリケーションにロックされることに留意されたい。ターゲットリソースは、ストレステストを受ける対象となるアプリケーションリンクの容量拡張に必要なリソース以外のリソースである。
ロックが成功すると、ストレステストが行われる予定のアプリケーションリンクに対してストレステストが実行される。
例えば、あるアプリケーションはアプリケーションリンクAとアプリケーションリンクBとを伴う。アプリケーションがアプリケーションリンクA上の容量拡張のために50個のリソースとアプリケーションリンクB上の容量拡張のために90個のリソースを必要とする場合、リソースの準備の間140個のリソースが準備され得る。ただし、アプリケーションリンクAでストレステストが実行されると、50個のリソースがアプリケーションに割り当てられ、残りの90個のリソースはロックされる。アプリケーションリンクBでストレステストが実行されると、90個のリソースがアプリケーションに割り当てられ、残りの50個のリソースはロックされる。ストレステストがアプリケーションリンクAとアプリケーションリンクBに同時に適用されると、140個のリソースがアプリケーションに割り当てられる。
ステップ206:ストレステストの結果に従ってアプリケーションに割り当てられたリソースを調整する。
ストレステスト中、ストレステストの結果には、アプリケーションリンク内のアプリケーションの負荷情報とフローが含まれる。
ある場合には、アプリケーションリンク内のアプリケーションの負荷情報が予め設定されたターゲット負荷情報に達しておらず、予め設定されたターゲットフローに達したときに、アプリケーションのリソースの冗長性が確認される。
削減するリソース量は負荷情報とアプリケーションのフローに基づいて計算され、現在のアプリケーションリンクのアプリケーションに対して隔離と削減の処理が実行される。
分離及び削減処理は、実際には容量の削減ではない。冗長インスタンスはまだ存在するが、現在のアプリケーションリンクのストレステストには関与しない。他のアプリケーションリンクはより多くのインスタンスを必要とし得る。この場合、この冗長部分を直接使用できる。
各アプリケーションリンクの冗長性を最初に記録できる。ストレステストがすべてのアプリケーションリンクに対して実行された後、容量の実際の削減が実行される。
例えば、アプリケーションAがアプリケーションリンク1上に冗長性を有する場合、アプリケーションリンク2上に冗長性が存在しない可能性がある。冗長リソースはアプリケーションリンク1内で分離され、アプリケーションリンク1のストレステストに含まれない。ストレステストがアプリケーションリンク2で実行される際に、冗長リソースが再び追加される。アプリケーションリンク2のリソースが不足する場合は、リソースを直接追加することができる。
容量削減には2つのアプローチがある。1つのアプローチは、アプリケーションをオフラインにしてリソースを解放することである。もう1つのアプローチは、アプリケーションをオフラインにし、リソースを他のアプリケーションによる使用のために予約することである。すなわち、他のアプリケーションがこれらのリソースを使用する場合、完全なリソース適用は行なわずアプリケーション情報の更新のみが必要である。
あるいは、アプリケーションリンク内のアプリケーションの負荷情報が予め設定されたターゲット負荷情報を超えている場合、フローが予め設定されたターゲットフローに達していてもいなくても、アプリケーションのリソース不足が確認される。
拡張すべきリソース量が、負荷情報とアプリケーションのフローに基づいて計算され、アプリケーションに対する容量拡張が行われる。
本出願の実施形態は、アプリケーションリンク上でストレステストを実行し、ストレステストの結果に従ってアプリケーションに割り当てられたリソースを調整する。ストレステストと調整を複数回実行することで、リソースの使用率をさらに向上させ、リソースの可用性を確保し、システムを安定させつつリソースの浪費を最小限に抑えることができる。
当業者が本出願の実施形態をよりよく理解することを可能にするために、本出願の実施形態によるアプリケーションの容量を拡張するための方法が、図3に示されるような特定の例を使用して以下に説明される。
ステップ1:リンク拡張要求ページでリンク拡張要求を開始し、拡張情報を送信する。
ステップ2:リンク拡張制御システムは、リンク拡張要求を受信した後、リンク関係情報システムからリンク情報を取得する。
リンク関係情報システムは、リンク情報をリンク拡張制御システムに送信する。
ステップ3:リンク拡張制御システムは、リンク容量評価を実行するために、リンク関係及び容量要件をリンク容量評価システムに転送する。
リンク容量評価システムは、容量評価結果をリンク拡張制御システムに返す。
ステップ4:リンク拡張制御システムは、フロー分割のためにリンクノードフロー分割システムにリンク容量を送信する。
ステップ5:リンクノードのフローを分割した後、リンクノードフロー分割システムはリンクノード拡張システムを呼び出してリンク指向ノード容量拡張を実行する。
ステップ6:リンクノード拡張システムは初期容量拡張を完了し、結果をリンク拡張制御システムに返し、リンク拡張制御システムはリンクストレステストシステムにリンクストレステストを実行するように要求する。
ステップ7:リンクストレステストシステムは、リンクに対してストレステストを実行し、リンク容量調整要求を開始する。
ステップ8:リンクノード拡張システムは、ノードの容量拡張及び縮小要求を受信し、リンクノードの容量拡張の調整をリンク拡張調整システムに対して実行し、リンクノード拡張システムを呼び出してノードの容量拡張又は縮小を実行する。ノードの容量拡張又は縮小が完了した後、実行結果がリンク拡張制御システムに返される。
ステップ9:リンク拡張制御システムはリンクのストレステストを再度開始し、リンクストレステストシステムにリンクのストレステストを実行するように要求する。
リンクストレステストシステムはリンクのストレステストを実行し、リンク容量調整要求を開始する。
リンクノード拡張システムは、ノードの容量拡張及び縮小要求を受けてリンク拡張調整システムに対してリンクノードの容量増設の調整を行い、リンクノード拡張システムを呼び出してノードの容量増減を行う。ノードの容量拡張又は縮小が完了した後、実行結果がリンク拡張制御システムに返される。
ステップ10:ステップ7〜9が繰り返され、最終的に期待される効果を満たす容量が、ストレステスト・調整・ストレステスト・調整によって達成される。
ステップ11:容量拡張が終了すると、容量の実行結果をリンク拡張要求システムに返し、処理情報を記録する。
方法の実施形態はすべて、説明のために一連の動作の組み合わせとして表現されていることに留意されたい。しかしながら、当業者は、特定のステップが本出願の実施形態に従って他の順序で又は並行して実行され得るので、本出願の実施形態が記載された動作順序によって限定されないことを理解されたい。さらに、当業者はまた、本明細書に記載されている実施形態はすべて好ましい実施形態であり、それらに含まれる動作は本出願の実施形態において必ずしも必要ではない場合があることを理解されたい。
図4を参照すると、本出願のアプリケーションリンク拡張装置の一実施形態の構造ブロック図が示されており、それは特に以下のモジュールを含むことができる。
アプリケーションリンク取得モジュール401は、アプリケーションリンクを取得するように構成されており、アプリケーションリンクは、サービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路である。
ターゲットリソース情報決定モジュール402は、アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定するように構成される。
リソース割り当てモジュール403は、ターゲットリソースの情報に従ってそれぞれのリソースをアプリケーションに割り当てるように構成される。
インスタンス生成モジュール404は、それぞれのリソースに従ってアプリケーションのインスタンスを生成するように構成されている。
特定の実施形態では、少なくとも2つのアプリケーションがアプリケーションリンク内で順序付けされ、先順序のアプリケーションが、その後の順序とされたアプリケーションによって提供されるサービスを呼び出すことにより、先順序のアプリケーションによって提供されるサービスを実行する。
本出願の実施形態では、ターゲットリソース情報決定モジュール402は、以下のサブモジュールを含むことができる。
アプリケーションリンク用に構成されたターゲットフロー情報を取得するように構成されたターゲットフロー情報取得サブモジュール、及び、ターゲットフロー情報に基づいてアプリケーションリンク内のすべてのアプリケーションの容量拡張に必要なターゲットリソース情報を計算するように構成されたターゲットリソース情報計算サブモジュール。
本出願の実施形態では、ターゲットリソース情報計算サブモジュールは、以下のユニットを含むことができる。
アプリケーションリンク内のすべてのアプリケーションが予め設定されたターゲットフローを処理するのに必要な総リソースの情報を推定するように構成された総リソース情報推定ユニット、及び、総リソース情報から占有リソース情報を減算してアプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソースの情報を取得するように構成されたリソース情報減算ユニット。
本出願の実施形態において、ターゲットリソース情報計算サブモジュールは、以下のユニットを含むことができる。
アプリケーションが複数のアプリケーションリンクを伴う場合、複数のアプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソース情報の複数のリソースを組み合わせることによってアプリケーションの容量拡張に必要なターゲットリソースの情報を決定するように構成されたマルチリソース情報結合ユニット。
本出願の実施形態では、装置はさらに以下のモジュールを含むことができる。
アプリケーションリンク上でストレステストを実行するように構成されたストレステストモジュール、及び、ストレステストの結果に従ってアプリケーションに割り当てられたリソースを修正するように構成されたリソース調整モジュール。
本出願の実施形態では、ストレステストモジュールは、以下のサブモジュールを含むことができる。
ターゲットリソースがストレステストを受ける対象となるアプリケーションリンク(複数可)の容量拡張に必要なリソース以外のリソースであって、アプリケーションが複数のアプリケーションリンクを伴う場合、ターゲットリソースを特定のアプリケーションにロックするように構成されたターゲットリソースロックサブモジュール、及び、ロックが成功したときにストレステストを受ける対象となるアプリケーションリンク(複数可)に対してストレステストを実行するように構成されたターゲットテストサブモジュール。
本出願の実施形態では、ストレステストの結果は、アプリケーションリンク内のアプリケーションの負荷情報及びフローを含み、リソース調整モジュールは、以下のサブモジュールを含むことができる。
アプリケーションリンク内のアプリケーションの負荷情報が事前設定されたターゲット負荷情報に達せず、フローが事前設定されたターゲットフローに達したときにアプリケーションのリソース冗長性を確認するよう構成されたリソース冗長性決定サブモジュール、及び、負荷情報とアプリケーションのフローに従って、アプリケーションリンク配下のアプリケーションの隔離及び容量削減処理を行うように構成された容量削減処理サブモジュール。
本出願の実施形態では、ストレステストの結果は、アプリケーションリンク内のアプリケーションの負荷情報及びフローを含み、リソース調整モジュールは、以下のサブモジュールを含むことができる。
アプリケーションリンク内のアプリケーションの負荷情報が事前設定されたターゲット負荷情報を超えた場合、フローが事前に設定されたターゲットフローに達していても達していなくても、アプリケーションのリソースが不十分であることを確認するように構成されたリソース不足確認サブモジュール、及び、負荷情報及びアプリケーションのフローに従ってアプリケーションの容量拡張処理を行うように構成された容量拡張処理サブモジュール。
装置の実施形態の説明は、方法の実施形態と基本的に類似しているため、比較的単純であり、関連する部分は方法の実施形態のそれぞれの部分の説明を参照することができる。
本発明の実施形態では、さらに、アプリケーションリンク拡張システムが提供される。システムは以下を含む。
1つ以上のプロセッサと、メモリと、メモリに格納され1つ以上のプロセッサによって実行されるように構成された1つ以上のモジュールであって、1つのサービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路であるアプリケーションリンクを取得し、アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定し、ターゲットリソースの情報に従ってそれぞれのリソースをアプリケーションに割り当て、それぞれのリソースに従ってアプリケーションのインスタンスを生成する、1つ以上のモジュール。
特定の実施形態では、少なくとも2つのアプリケーションがアプリケーションリンク内で順序付けされ、先順序のアプリケーションが、その後の順序とされたアプリケーションによって提供されるサービスを呼び出すことにより、先順序のアプリケーションによって提供されるサービスを実行する。
任意選択で、1つ以上のモジュールは以下の機能を有することができる。
アプリケーションリンクに対して構成されているターゲットフロー情報を取得すること。そして、ターゲットフロー情報に基づいて、アプリケーションリンク内の全アプリケーションの容量拡張に必要なターゲットリソース情報を計算すること。
任意選択で、1つ以上のモジュールは以下の機能を有することができる。
アプリケーションリンク内のすべてのアプリケーションが予め設定されたターゲットフローを処理するのに必要な総リソースの情報を推定すること。そして、アプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソースの情報を取得するために、総リソース情報から占有リソース情報を減算すること。
任意選択で、1つ以上のモジュールは以下の機能を有することができる。
アプリケーションが複数のアプリケーションリンクを伴う場合、複数のアプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソース情報の複数の部分を組み合わせることによって、アプリケーションの容量拡張に必要なターゲットリソース情報を決定すること。
任意選択で、1つ以上のモジュールは以下の機能を有することができる。
アプリケーションリンクのストレステストを実行すること。そして、ストレステストの結果に従ってアプリケーションに割り当てられたリソースを修正すること。
任意選択で、1つ以上のモジュールは以下の機能を有することができる。
アプリケーションが複数のアプリケーションリンクを伴い、ターゲットリソースが、ストレステストを受けるべきアプリケーションリンク(複数可)の容量拡張に必要なリソース以外のリソースである場合に、ターゲットリソースを特定のアプリケーションのためにロックすることと、ロックが成功した場合、ストレステストを受けるアプリケーションリンク(複数可)のストレステストを実行すること。
任意選択で、ストレステストの結果は、アプリケーションリンク内のアプリケーションの負荷情報及びフローを含み、1つ以上のモジュールは、以下の機能を有することができる。
アプリケーションリンク内のアプリケーションの負荷情報が事前設定されたターゲット負荷情報に達せず、フローが事前設定されたターゲットフローに達したときに、アプリケーションのリソース冗長性を確認することと、負荷情報とアプリケーションのフローに従って、アプリケーションリンク配下のアプリケーションの隔離及び容量削減処理を行うこと。
任意選択で、ストレステストの結果は、アプリケーションリンク内のアプリケーションの負荷情報及びフローを含み、1つ以上のモジュールは、以下の機能を有することができる。
アプリケーションリンク内のアプリケーションの負荷の情報が事前に設定されたターゲット負荷情報を超えた場合、フローが事前に設定されたターゲットフローに達していても達していなくても、アプリケーションのリソースが不足していることを確認し、負荷情報とアプリケーションのフローに従って、アプリケーションの容量拡張処理を行うこと。
図5は本出願の実施形態によって提供されるサーバの概略構造図である。サーバ500は、構成又は性能に従ってかなり変動する可能性があり、1つ以上の中央処理装置(CPU)522(例えば1つ以上のプロセッサ)、メモリ532、及びアプリケーションプログラム542又はデータ544を記憶する1つ以上の記憶媒体530(例えば1つ以上の大容量記憶装置)を含むことができる。メモリ532及び記憶媒体530は、一時記憶装置又は永続記憶装置とすることができる。記憶媒体530に記憶されたプログラムは、1つ以上のモジュール(図示せず)を含むことができ、各モジュールはサーバ内の一連の命令動作を含むことができる。さらに、中央処理装置522は、記憶媒体530と通信し、サーバ500上の記憶媒体530内で一連の命令動作を実行するように構成することができる。
サーバ500は、1つ以上の電源526、1つ以上の有線又は無線ネットワークインターフェース550、1つ以上の入出力インターフェース558、1つ以上のキーボード556、及び/又はWindowsServer(登録商標)、MacOSX(登録商標)、Unix(登録商標)、Linux(登録商標)、FreeBSD(登録商標)などの1つ以上のオペレーティングシステム541も含み得る。
中央処理装置522は、サーバ500上で以下の動作の命令を実行することができる。
1つのサービスシナリオに関して少なくとも2つの関連付けられたアプリケーションによって形成される経路であるアプリケーションリンクを取得すること、アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定すること、ターゲットリソースの情報に従ってそれぞれのリソースをアプリケーションに割り当てること、及びそれぞれのリソースに従ってアプリケーションのためのインスタンスを生成すること。
任意選択で、少なくとも2つのアプリケーションがアプリケーションリンク内で順序付けされ、先順序のアプリケーションが、その後の順序とされたアプリケーションによって提供されるサービスを呼び出すことにより、先順序のアプリケーションによって提供されるサービスを実行する。
任意選択で、中央処理装置522は、サーバ500上で以下の動作の命令を実行することもできる。
アプリケーションリンク用に構成されたターゲットフロー情報を取得すること。そして、ターゲットフロー情報に基づいて、アプリケーションリンク内の全アプリケーションの容量拡張に必要なターゲットリソース情報を計算すること。
任意選択で、中央処理装置522は、サーバ500上で以下の動作の命令を実行することもできる。
事前設定されたターゲットフローを処理するためにアプリケーションリンク内のすべてのアプリケーションによって必要とされる総リソース情報を推定すること。そして、アプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソース情報を取得するために、総リソース情報から占有リソース情報を減算すること。
任意選択で、中央処理装置522は、サーバ500上で以下の動作の命令を実行することもできる。
アプリケーションが複数のアプリケーションリンクを伴う場合、複数のアプリケーションリンク内のアプリケーションの容量拡張に必要なターゲットリソース情報の複数の部分を組み合わせることによって、アプリケーションの容量拡張に必要なターゲットリソース情報を決定すること。
任意選択で、中央処理装置522は、サーバ500上で以下の動作の命令を実行することもできる。
アプリケーションリンク上のストレステストを実行すること。そして、ストレステストの結果に従ってアプリケーションに割り当てられたリソースを修正すること。
任意選択で、中央処理装置522は、サーバ500上で以下の動作の命令を実行することもできる。
アプリケーションが複数のアプリケーションリンクを伴い、ターゲットリソースが、ストレステストを受けるべきアプリケーションリンク(複数可)の容量拡張に必要なリソース以外のリソースである場合に、ターゲットリソースを特定のアプリケーションのためにロックすること。そして、ロックが成功した場合、ストレステストを受けるアプリケーションリンク(複数可)のストレステストを実行すること。
任意選択で、ストレステストの結果はアプリケーションリンク内のアプリケーションの負荷情報及びフローを含み、中央処理522はサーバ500上で次の動作の命令を実行することもできる。
アプリケーションリンク内のアプリケーションの負荷情報は事前設定されたターゲット負荷情報に達せず、フローは事前設定されたターゲットフローに達したときに、アプリケーションのリソース冗長性を確認すること。そして、負荷情報とアプリケーションのフローに従って、アプリケーションリンク配下のアプリケーションの隔離及び容量削減処理を行うこと。
任意選択で、ストレステストの結果は、アプリケーションリンクにおける負荷情報及びアプリケーションのフローを含み、中央処理522は、サーバ500上で以下の動作の命令を実行することもできる。
アプリケーションリンク内のアプリケーションの負荷の情報が事前に設定されたターゲット負荷情報を超えた場合、フローが事前に設定されたターゲットフローに達していても達していなくても、アプリケーションのリソースが不足していることを確認すること。そして、負荷情報とアプリケーションのフローに従って、アプリケーションの容量拡張処理を行うこと。
本明細書における様々な実施形態は漸進的に記載されており、各実施形態は他の実施形態のものとは異なる態様に焦点を合わせている。様々な実施形態間の同一又は類似の部分は互いに参照することができる。当業者は、本出願の実施形態の実装が方法、装置、又はコンピュータプログラム製品の提供としてなされ得ることを理解されたい。したがって、本出願の実施形態は、完全にハードウェアとしての実装、完全にソフトウェアとしての実装、又はソフトウェアとハードウェアの組み合わせとしての実装の形態を取り得る。さらに、本願の実施形態は、コンピュータ使用可能プログラムコードを含む1つ以上のコンピュータ使用可能記憶媒体(ディスクストレージ、CD−ROM、光学式ストレージなどを含むがこれらに限定されない)上に具現化されたコンピュータプログラム製品の形を取ることができる。
典型的な設定では、コンピュータデバイスは、1つ以上のプロセッサ(CPU)、入出力インターフェース、ネットワークインターフェース、及びメモリを含む。メモリは、揮発性メモリ、ランダムアクセスメモリ(RAM)、及び/または、例えば、読み取り専用メモリ(ROM)またはフラッシュRAMの不揮発性メモリなどのコンピュータ可読媒体である。メモリはコンピュータ可読媒体の一例である。コンピュータ可読媒体は、揮発性又は不揮発性の種類、取り外し可能又は固定の媒体を含むことができ、それらは任意の方法又は技術を使用して情報の記憶を達成することができる。情報は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータを含み得る。コンピュータ記憶媒体の例としては、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、他のタイプのランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電子的に消去可能なプログラマブル読み取り専用メモリ(EEPROM)、クイックフラッシュメモリ又は他の内部記憶技術、コンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)又は他の光学記憶装置、磁気カセットテープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、又は任意の他の非伝送媒体が挙げられ、コンピュータデバイスによってアクセスされ得る情報を格納するために使用され得るが、これらに限定されない。本明細書の定義において、コンピュータ可読媒体は、変調データ信号及び搬送波などの一時的媒体を含まない。
本出願の実施形態は、本出願の実施形態による方法、端末装置(システム)、及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して説明される。フローチャート及び/又はブロック図における各フロー及び/又はブロック、並びにフローチャート及び/又はブロック図におけるフロー及び/又はブロックの組み合わせは、コンピュータプログラム命令によって実施され得ることを理解されたい。コンピュータプログラム命令は、汎用コンピュータ、特殊用途コンピュータ、組み込みプロセッサ、又は他のプログラム可能なデータ処理端末装置のプロセッサに提供されて機械を産み出し、それによりコンピュータ又は他のプログラム可能データ処理端末装置のプロセッサによる命令の実行を通じて、フローチャートの1つ以上のフロー及び/又はブロック図の1つ以上のブロックで指定された機能を実施するための装置が創出される。
これらのコンピュータプログラム命令はまた、コンピュータ又は他のプログラム可能データ処理端末装置に特定の方法で動作するように指示することができるコンピュータ可読記憶装置に記憶することができ、それにより、コンピュータ可読記憶装置に格納された命令は、命令装置を含む製品を生成する。命令装置は、フローチャートの1つ以上のフロー及び/又はブロック図の1つ以上のブロックで指定された機能を実施する。
これらのコンピュータプログラム命令はまた、コンピュータ実施プロセスを生成するためにコンピュータ又は他のプログラム可能端末装置上で一連の動作ステップが実行されるように、コンピュータ又は他のプログラム可能データ処理端末装置上にロードされ得る。コンピュータ又は他のプログラム可能な端末装置で実行される命令は、フローチャートの1つ以上のフロー及び/又はブロック図の1つ以上のブロックで指定された機能を実施するためのステップを提供する。
本出願の実施形態の好ましい実施形態が説明されたが、基本的な発明の概念が学習されれば、当業者はこれらの実施形態に対してさらなる変更及び修正を加えることができる。したがって、添付の特許請求の範囲は、好ましい実施形態、並びに本出願の実施形態の範囲内に含まれるすべての変更及び修正を含むと解釈されることを意図している。
最後に、第1及び第2のような関係を示す用語は、本明細書中の1つの実体又は動作を別の実体又は動作と区別するために使用されているだけであり、必ずしもこれらの操作又は実体間のそのような関係又は順序の存在を必要とせず暗示もしない。さらに、用語「含む(include)」、「包含する(contain)」又はそれらの任意の他の変形は非排他的な包含を意味することを意図しており、一連の要素を含むプロセス、方法、物品、又は端末装置にはこれらの要素だけでなく明示的に列挙されていない他の要素も含むこと、又はそのようなプロセス、方法、物品、もしくは端末装置に本来備わっている要素も含む。何らのさらなる限定がない場合、「〜を含む」という文によって定義される要素は、その要素を含むプロセス、方法、物品、又は端末装置を、別の同一の要素をさらに含むことから除外するものではない。
本出願で提供されるアプリケーションリンク拡張方法、アプリケーションリンク拡張装置、及びアプリケーションリンク拡張システムは、上記に詳細に説明されている。本明細書は、本出願の原理及び実装について説明するために特定の例を使用する。上記の実施形態の説明は、本出願の方法及び中核となる概念の理解を容易にするために使用されているに過ぎない。同時に、当業者にとっては、本出願の思想に基づいて特定の実施態様及び適用範囲に変更を加えることができる。要約すると、本明細書の内容は本出願に対する限定として解釈されるべきではない。

Claims (11)

  1. アプリケーションリンク拡張システムであって、前記システムは、
    1つ以上のプロセッサと、
    メモリと、
    1つ以上のモジュールと、を備え、
    前記1つ以上のモジュールは、前記メモリに格納され、前記1つ以上のプロセッサによって実行されるように構成され、前記1つ以上のモジュールは、
    サービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路であるアプリケーションリンクを取得し、
    前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定し、
    前記ターゲットリソースの前記情報に従ってそれぞれのリソースを前記アプリケーションに割り当て、
    前記それぞれのリソースに従って前記アプリケーションのインスタンスを生成する、機能を有する
    前記システム。
  2. アプリケーションリンク拡張方法であって、
    サービスシナリオに関連付けられた少なくとも2つのアプリケーションによって形成される経路であるアプリケーションリンクを取得することと、
    前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソース情報を決定することと、
    前記ターゲットリソース情報に従ってそれぞれのリソースを前記アプリケーションに割り当てることと、
    前記それぞれのリソースに従って前記アプリケーションのインスタンスを生成することと、を含む方法。
  3. 少なくとも2つのアプリケーションが前記アプリケーションリンク内で順序付けされ、先順序のアプリケーションが、その後の順序とされたアプリケーションによって提供されるサービスを呼び出して、前記先順序の前記アプリケーションによって提供されるサービスを実行する、請求項2に記載の方法。
  4. 前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定することは、
    前記アプリケーションリンクに設定されているターゲットフロー情報を取得することと、
    前記ターゲットフロー情報に基づいて、前記アプリケーションリンク内のすべての前記アプリケーションの前記容量拡張に必要な前記ターゲットリソース情報を計算することと、
    を含む、請求項2又は3に記載の方法。
  5. 前記ターゲットフロー情報に基づいて、前記アプリケーションリンク内のすべての前記アプリケーションの前記容量拡張に必要な前記ターゲットリソース情報を計算することは、
    事前設定されたターゲットフローを処理するために前記アプリケーションリンク内のすべての前記アプリケーションによって必要とされる総リソース情報を推定することと、
    前記アプリケーションリンク内の前記アプリケーションの前記容量拡張に必要な前記ターゲットリソース情報を取得するために、前記総リソース情報から占有リソース情報を減算すること、
    とを含む、請求項4に記載の方法。
  6. 前記ターゲットフロー情報に基づいて、前記アプリケーションリンク内のすべての前記アプリケーションの前記容量拡張に必要な前記ターゲットリソース情報を計算することは、
    前記アプリケーションが複数の前記アプリケーションリンクを伴う場合、前記複数のアプリケーションリンク内の前記アプリケーションの容量拡張に必要なターゲットリソース情報の複数の部分を組み合わせることによって、前記アプリケーションの前記容量拡張に必要な前記ターゲットリソース情報を決定することを含む、請求項4に記載の方法。
  7. 前記アプリケーションリンクのストレステストを実行することと、
    前記ストレステストの結果に従って、前記アプリケーションに割り当てられた前記リソースの修正を行うことと、
    をさらに含む、請求項2〜6のいずれか一項に記載の方法。
  8. 前記アプリケーションリンクの前記ストレステストを実行することは、
    前記アプリケーションが複数のアプリケーションリンクを伴い、ターゲットリソースが、ストレステストを受けるべきアプリケーションリンクの容量拡張に必要なリソース以外のリソースである場合に、前記ターゲットリソースを特定のアプリケーションにロックすることと、
    ロックが成功した場合、前記ストレステストを受ける前記アプリケーションリンクの前記ストレステストを実行することと、
    を含む、請求項7に記載の方法。
  9. 前記ストレステストの前記結果は、前記アプリケーションリンク内の前記アプリケーションの負荷情報及びフローを含み、
    前記アプリケーションに割り当てられた前記リソースを前記ストレステストの結果に従って修正することは、
    前記アプリケーションリンク内の前記アプリケーションの前記負荷情報は事前設定されたターゲット負荷情報に達せず、前記フローは事前設定されたターゲットフローに達したときに、前記アプリケーションのリソース冗長性を確認することと、
    前記アプリケーションの前記負荷情報と前記フローに従って、前記アプリケーションリンク配下の前記アプリケーションの隔離及び容量削減処理を行うことと、
    を含む、請求項7に記載の方法。
  10. 前記ストレステストの前記結果は、前記アプリケーションリンク内の前記アプリケーションの負荷情報及びフローを含み、
    前記アプリケーションに割り当てられた前記リソースを前記ストレステストの前記結果に従って修正することは、
    前記アプリケーションリンク内の前記アプリケーションの前記負荷の情報が事前に設定されたターゲット負荷情報を超えた場合、前記フローが事前に設定されたターゲットフローに達していても達していなくても、前記アプリケーションの前記リソースが不足していることを確認することと、
    前記アプリケーションの前記負荷情報と前記フローに従って、前記アプリケーションの容量拡張処理を行うことと、
    を含む、請求項7に記載の方法。
  11. アプリケーションリンク拡張装置であって、
    アプリケーションリンクを取得するように構成されたアプリケーションリンク取得モジュールであって、前記アプリケーションリンクは、サービスシナリオに関して少なくとも2つの関連付けられたアプリケーションによって形成される経路である前記アプリケーションリンク取得モジュールと、
    前記アプリケーションリンク内のすべてのアプリケーションのための容量拡張に必要なターゲットリソースの情報を決定するように構成されたターゲットリソース情報決定モジュールと、
    それぞれのリソースを前記ターゲットリソースの前記情報に従って前記アプリケーションに割り当てるように構成されたリソース割り当てモジュールと、
    前記アプリケーションのためのインスタンスを前記それぞれのリソースに従って生成するように構成されたインスタンス生成モジュールと、
    を含む装置。
JP2019522310A 2016-11-01 2017-10-20 アプリケーションリンク拡張方法、装置、及びシステム Active JP7086065B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610951548.3 2016-11-01
CN201610951548.3A CN108009017B (zh) 2016-11-01 2016-11-01 一种应用链路的扩容方法、装置和系统
PCT/CN2017/106983 WO2018082451A1 (zh) 2016-11-01 2017-10-20 一种应用链路的扩容方法、装置和系统

Publications (2)

Publication Number Publication Date
JP2019533256A true JP2019533256A (ja) 2019-11-14
JP7086065B2 JP7086065B2 (ja) 2022-06-17

Family

ID=62047205

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019522310A Active JP7086065B2 (ja) 2016-11-01 2017-10-20 アプリケーションリンク拡張方法、装置、及びシステム

Country Status (5)

Country Link
US (1) US11698817B2 (ja)
JP (1) JP7086065B2 (ja)
CN (1) CN108009017B (ja)
TW (1) TWI741002B (ja)
WO (1) WO2018082451A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271453B (zh) * 2018-10-22 2021-08-27 创新先进技术有限公司 一种数据库容量的确定方法和装置
CN111435302B (zh) * 2019-01-14 2023-06-20 阿里巴巴集团控股有限公司 一种应用程序的处理方法及装置
CN109981396B (zh) * 2019-01-22 2022-07-08 平安普惠企业管理有限公司 docker服务容器集群的监控方法及装置、介质及电子设备
CN111193634B (zh) * 2019-09-12 2021-08-31 腾讯科技(深圳)有限公司 一种压力测试方法、装置和计算机可读存储介质
US20210383295A1 (en) * 2020-06-05 2021-12-09 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for stress testing, electronic device and computer readable medium
CN113938392B (zh) * 2020-07-09 2023-11-14 亚信科技(南京)有限公司 资源分配方法、装置、电子设备及计算机可读存储介质
CN112866055A (zh) * 2021-01-05 2021-05-28 广州品唯软件有限公司 业务流量评估方法、装置、计算机设备和存储介质
CN113114504B (zh) * 2021-04-13 2022-08-30 百度在线网络技术(北京)有限公司 用于分配资源的方法、装置、设备、介质和产品
CN113590403B (zh) * 2021-08-05 2023-08-01 北京百度网讯科技有限公司 压力测试方法、装置、系统、电子设备、存储介质及产品
CN116954761A (zh) * 2022-04-18 2023-10-27 鼎捷软件股份有限公司 自动服务编排和执行系统及其方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010272090A (ja) * 2009-05-25 2010-12-02 Hitachi Ltd 処理依頼先管理装置、処理依頼先管理プログラムおよび処理依頼先管理方法
JP2015512099A (ja) * 2012-02-14 2015-04-23 アマゾン テクノロジーズ インコーポレイテッド 構成可能なワークフロー機能の提供
JP2015115059A (ja) * 2013-12-13 2015-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation クラウド・コンピューティング環境を動的に変更する方法、情報処理システム、およびコンピュータ・プログラム

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9087319B2 (en) 2002-03-11 2015-07-21 Oracle America, Inc. System and method for designing, developing and implementing internet service provider architectures
US20070288274A1 (en) 2006-06-05 2007-12-13 Tian Jy Chao Environment aware resource capacity planning for service delivery
CN101911047A (zh) * 2007-11-06 2010-12-08 瑞士信贷证券(美国)有限责任公司 根据服务水平协议预测并管理资源分配
US8434088B2 (en) * 2010-02-18 2013-04-30 International Business Machines Corporation Optimized capacity planning
JP2012099062A (ja) * 2010-11-05 2012-05-24 Hitachi Ltd サービス連携システムおよび情報処理システム
US8782215B2 (en) * 2011-05-31 2014-07-15 Red Hat, Inc. Performance testing in a cloud environment
US9086923B2 (en) * 2011-09-16 2015-07-21 Rutgers, The State University Of New Jersey Autonomic workflow management in dynamically federated, hybrid cloud infrastructures
CN103024825B (zh) * 2011-09-26 2015-07-01 中国移动通信集团公司 终端多应用间网络资源分配方法及其设备
CN102710431A (zh) * 2012-04-25 2012-10-03 华信邮电咨询设计研究院有限公司 业务驱动型传送网网络拓扑自动设计方法
CN102694846B (zh) * 2012-05-03 2015-01-28 华为技术有限公司 一种应用程序的推荐方法、设备和系统
US9326161B2 (en) * 2012-06-21 2016-04-26 Microsoft Technology Licensing, Llc Application-driven control of wireless networking settings
US9548884B2 (en) * 2012-12-10 2017-01-17 Alcatel Lucent Method and apparatus for providing a unified resource view of multiple virtual machines
US9817699B2 (en) * 2013-03-13 2017-11-14 Elasticbox Inc. Adaptive autoscaling for virtualized applications
US20140365662A1 (en) 2013-03-15 2014-12-11 Gravitant, Inc. Configuring cloud resources
US9824390B2 (en) 2013-03-15 2017-11-21 International Business Machines Corporation Cloud service brokerage service store
US20150341230A1 (en) 2013-03-15 2015-11-26 Gravitant, Inc Advanced discovery of cloud resources
US20150222723A1 (en) 2013-03-15 2015-08-06 Gravitant, Inc Budget management functionality within a cloud service brokerage platform
US9818127B2 (en) 2013-03-15 2017-11-14 International Business Machines Corporation Implementing comparison of cloud service provider package offerings
US9832205B2 (en) 2013-03-15 2017-11-28 International Business Machines Corporation Cross provider security management functionality within a cloud service brokerage platform
US9454294B2 (en) 2013-03-15 2016-09-27 International Business Machines Corporation Creating, provisioning and managing virtual data centers
CN104142860A (zh) * 2013-05-10 2014-11-12 中国电信股份有限公司 应用服务系统的资源调整方法与装置
US9461969B2 (en) * 2013-10-01 2016-10-04 Racemi, Inc. Migration of complex applications within a hybrid cloud environment
GB201319271D0 (en) * 2013-10-31 2013-12-18 Microsoft Corp Sharing network resources
US9407676B2 (en) * 2013-11-25 2016-08-02 At&T Intellectual Property I, Lp Method and apparatus for distributing media content
US9811365B2 (en) 2014-05-09 2017-11-07 Amazon Technologies, Inc. Migration of applications between an enterprise-based network and a multi-tenant network
US10205775B2 (en) * 2014-09-27 2019-02-12 Oracle International Corporation Server selection in a highly available network
CN104580524A (zh) * 2015-01-30 2015-04-29 华为技术有限公司 一种云平台上的资源伸缩方法和一种云平台
US9848041B2 (en) 2015-05-01 2017-12-19 Amazon Technologies, Inc. Automatic scaling of resource instance groups within compute clusters
CN104850450B (zh) * 2015-05-14 2017-11-28 华中科技大学 一种面向混合云应用的负载均衡方法及系统
US10362099B2 (en) 2015-06-23 2019-07-23 Amazon Technologies, Inc. Multiple instance types serving a single workload or application
US9690555B2 (en) * 2015-06-29 2017-06-27 International Business Machines Corporation Optimization of application workflow in mobile embedded devices
US9811386B2 (en) * 2015-10-23 2017-11-07 Oracle International Corporation System and method for multitenant execution of OS programs invoked from a multitenant middleware application
US10419530B2 (en) * 2015-11-02 2019-09-17 Telefonaktiebolaget Lm Ericsson (Publ) System and methods for intelligent service function placement and autoscale based on machine learning
US10361714B2 (en) * 2015-12-16 2019-07-23 International Business Machines Corporation Reading and writing compressed data using long-term storage
US10216509B2 (en) * 2016-03-18 2019-02-26 TUPL, Inc. Continuous and automatic application development and deployment
CN105846887B (zh) * 2016-04-21 2019-02-15 南京大学 一种星间通信链路中带宽和功率协调分配方法
US10230662B2 (en) 2016-05-20 2019-03-12 Mitel Networks, Inc. Hybrid cloud deployment for hybrid unified communications
US10423342B1 (en) 2017-03-30 2019-09-24 Amazon Technologies, Inc. Scaling events for hosting hierarchical data structures

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010272090A (ja) * 2009-05-25 2010-12-02 Hitachi Ltd 処理依頼先管理装置、処理依頼先管理プログラムおよび処理依頼先管理方法
JP2015512099A (ja) * 2012-02-14 2015-04-23 アマゾン テクノロジーズ インコーポレイテッド 構成可能なワークフロー機能の提供
JP2015115059A (ja) * 2013-12-13 2015-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation クラウド・コンピューティング環境を動的に変更する方法、情報処理システム、およびコンピュータ・プログラム

Also Published As

Publication number Publication date
US20190258517A1 (en) 2019-08-22
TWI741002B (zh) 2021-10-01
TW201818239A (zh) 2018-05-16
CN108009017A (zh) 2018-05-08
WO2018082451A1 (zh) 2018-05-11
CN108009017B (zh) 2022-02-18
JP7086065B2 (ja) 2022-06-17
US11698817B2 (en) 2023-07-11

Similar Documents

Publication Publication Date Title
JP7086065B2 (ja) アプリケーションリンク拡張方法、装置、及びシステム
CN108023742B (zh) 一种应用的扩容方法、装置和系统
Al-Dhuraibi et al. Autonomic vertical elasticity of docker containers with elasticdocker
US10798016B2 (en) Policy-based scaling of network resources
US9596302B2 (en) Migrating applications between networks
US8862933B2 (en) Apparatus, systems and methods for deployment and management of distributed computing systems and applications
CN107534571B (zh) 用于管理虚拟网络功能的方法、系统和计算机可读介质
US8117611B2 (en) Method, system, and program product for deploying a platform dependent application in a grid environment
Calatrava et al. Self-managed cost-efficient virtual elastic clusters on hybrid Cloud infrastructures
US9729610B2 (en) Method for intercepting an instruction produced by an application on a computer
US20220329651A1 (en) Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same
US20160357584A1 (en) Hybrid simulation in a cloud computing environment
Lebre et al. Putting the next 500 vm placement algorithms to the acid test: The infrastructure provider viewpoint
CN112860450B (zh) 一种请求处理方法及装置
US20080282242A1 (en) Simulation management within a grid infrastructure
Satzke et al. Efficient gpu sharing for serverless workflows
US10469329B1 (en) Computing service capacity management
Mangal et al. Flexible cloud computing by integrating public-private clouds using openstack
US9798571B1 (en) System and method for optimizing provisioning time by dynamically customizing a shared virtual machine
Kaur et al. Docker and its features
KR102231358B1 (ko) 고성능 클라우드 서비스를 위한 단일 가상화 방법 시스템
CN112583653A (zh) 压力测试方法、装置及计算机存储介质
Khaneghah et al. ExaLazy: A Model for Lazy-Copy Migration Mechanism to Support Distributed Exascale System
US11243764B1 (en) Code deployment
CN113742090B (zh) 面向虚拟机的负载均衡方法、装置和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220607

R150 Certificate of patent or registration of utility model

Ref document number: 7086065

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150