JP2017506400A - クラウドリリースパイプラインの診断および最適化 - Google Patents

クラウドリリースパイプラインの診断および最適化 Download PDF

Info

Publication number
JP2017506400A
JP2017506400A JP2016553561A JP2016553561A JP2017506400A JP 2017506400 A JP2017506400 A JP 2017506400A JP 2016553561 A JP2016553561 A JP 2016553561A JP 2016553561 A JP2016553561 A JP 2016553561A JP 2017506400 A JP2017506400 A JP 2017506400A
Authority
JP
Japan
Prior art keywords
application
data associated
data
user
processors
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.)
Withdrawn
Application number
JP2016553561A
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2017506400A publication Critical patent/JP2017506400A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

ユーザのアプリケーションの開発および実行をどのように最適化するかに関する勧告を提供することができるツールをユーザに提供するための方法およびシステムを提供する。診断および最適化方法、システムおよびエンジンは、例えばユーザのアプリケーションの構築、展開、リリースおよび実行に関連付けられたさまざまなデータを取込み、このようなデータを利用して、どのようにユーザが高いリリース生産性と、管理のしやすさと、コスト最適化とのバランスを最適にとることができるかに関する勧告/提案を生成する。当該方法およびシステムは、ユーザの開発プロセスの端から端まで(例えば、ユーザがコードを提出したときから、アプリケーションが実際にアップされて実行されるときまで)のストーリを利用して、ユーザがシステムを最適化できる方法に関する勧告を生成する。当該勧告は、例えば、どのようにユーザがアプリケーショントポロジを異なったようにレイアウトできるか、どのようにユーザが待ち時間を減少させることができるか、どのようにユーザがデータ局所性を増大させることができるか、または、どのようにユーザが課金コストを最適化できるかを含む。

Description

背景
クラウドは、ユーザのワークロードをスケーリングするための新たな機能をユーザに提供する。リリースワークフローは、当該機能から大いに利益を得る。例えば、ハードウェアリソースによって課される制約がもはやないので、今ではさまざまなシナリオのテストを並行して行うことができる。
しかし、このスケーリングは、適切に管理されなければコストが高くなる可能性がある。クラウドの顧客は、コストに対する意識が非常に高くなってきている。クラウドの顧客は、高いリリース生産性と、管理のしやすさと、コスト最適化とのバランスをとることができることを望んでいる。クラウドリリースパイプラインの最適化に寄与し得る要因は数多くあり、例えば、パイプライントポロジ、リリーススケジュール、スケーリング規則、自動化レベル、選択されたリソース、価格設定オプション、および支払方法を含む。これらの要因の全てを把握してそれらを最適なセットアップに調整することは、手動で行うのは困難である。
概要
この概要は、本開示のいくつかの態様の基本的理解を与えるために、単純化された形態で一連の概念を紹介している。この概要は、本開示の広範な概略ではなく、本開示の重要もしくは不可欠な要素を特定することを意図したものではなく、または本開示の範囲を描写することを意図したものでもない。この概要は、単に、本開示の概念のうちのいくつかを、以下に提供される詳細な説明への前置きとして提示しているに過ぎない。
本開示は、一般に、オンラインサービスをユーザに提供するための方法およびシステムに関する。より具体的には、本開示の態様は、ユーザのアプリケーションの開発および実行の最適化に関する勧告を受取ることができる機能をユーザに提供することに関する。
本開示の一実施例は、コンピュータによって実行される方法に関し、上記方法は、アプリケーションに関連付けられたリリースワークフローデータを取得するステップと、上記アプリケーションに関連付けられたプロダクションワークロードデータを取得するステップと、上記リリースワークフローデータおよび上記プロダクションワークロードデータをデータベースに格納するステップと、上記アプリケーションのために取得された上記リリースワークフローデータおよび上記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせるステップと、上記組み合わせられたデータを分析して、診断および最適化の勧告を生成するステップと、上記生成された勧告を上記ユーザに提供するステップとを備える。
別の実施例では、上記アプリケーションに関連付けられたリリースワークフローデータを取得するステップは、上記アプリケーションのために規定されたパイプラインの1つ以上のステージの実行に関連付けられたデータを取込むステップを含む。
さらに別の実施例では、上記アプリケーションに関連付けられたプロダクションワークロードデータを取得するステップは、上記アプリケーションが展開されたと判断するステップと、上記展開されたアプリケーションをモニタリングするステップと、上記展開されたアプリケーションの上記モニタリングに基づいてデータを生成するステップとを含む。
別の実施例では、上記展開されたアプリケーションをモニタリングするステップは、上記展開されたアプリケーションによって利用されているリソースの量を判断するステップを含む。
さらに別の実施例では、上記展開されたアプリケーションをモニタリングするステップは、上記展開されたアプリケーションにわたる利用されるリソースの割当てを判断するステップを含む。
別の実施例では、上記生成された勧告を上記ユーザに提供するステップは、上記ユーザによってアクセス可能なユーザインターフェイススクリーンに表示されるように上記勧告を提供するステップを含む。
本開示の別の実施例は、システムに関し、上記システムは、1つ以上のプロセッサと、上記1つ以上のプロセッサに結合された非一時的なコンピュータ読取可能な媒体とを備え、上記コンピュータ読取可能な媒体は、命令を格納し、上記命令は、上記1つ以上のプロセッサによって実行されたときに、上記1つ以上のプロセッサにオペレーションを実行させ、上記オペレーションは、アプリケーションに関連付けられたリリースワークフローデータを取得することと、上記アプリケーションに関連付けられたプロダクションワークロードデータを取得することと、上記リリースワークフローデータおよび上記プロダクションワークロードデータをデータベースに格納することと、上記アプリケーションのために取得された上記リリースワークフローデータおよび上記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせることと、上記組み合わせられたデータを分析して、診断および最適化の勧告を生成することと、上記生成された勧告を上記ユーザに提供することとを備える。
別の実施例では、上記システムの上記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、上記さらに他のオペレーションは、上記アプリケーションのために規定されたパイプラインの1つ以上のステージの実行に関連付けられたデータを取込むことを備える。
さらに別の実施例では、上記システムの上記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、上記さらに他のオペレーションは、上記アプリケーションが展開されたと判断することと、上記展開されたアプリケーションをモニタリングすることと、上記展開されたアプリケーションの上記モニタリングに基づいてデータを生成することとを備える。
さらに別の実施例では、上記システムの上記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、上記さらに他のオペレーションは、上記展開されたアプリケーションによって利用されているリソースの量を判断することを備える。
さらに別の実施例では、上記システムの上記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、上記さらに他のオペレーションは、上記1つ以上の他のアプリケーションに関連付けられた価格設定データを、上記アプリケーションとは別の1つ以上のソースから取得することを備える。
別の実施例では、上記システムの上記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、上記さらに他のオペレーションは、上記ユーザによってアクセス可能なユーザインターフェイススクリーンを生成することと、上記ユーザインターフェイススクリーンに表示されるように上記勧告を提供することとを備える。
本開示のさらに別の実施例は、コンピュータによって実行可能な命令を格納する1つ以上の非一時的なコンピュータ読取可能な媒体に関し、上記コンピュータによって実行可能な命令は、1つ以上のプロセッサによって実行されたときに、上記1つ以上のプロセッサにオペレーションを実行させ、上記オペレーションは、アプリケーションに関連付けられたリリースワークフローデータを取得することと、上記アプリケーションに関連付けられたプロダクションワークロードデータを取得することと、上記リリースワークフローデータおよび上記プロダクションワークロードデータをデータベースに格納することと、上記アプリケーションのために取得された上記リリースワークフローデータおよび上記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせることと、上記組み合わせられたデータを分析して、診断および最適化の勧告を生成することと、上記生成された勧告を上記ユーザに提供することとを備える。
1つ以上の他の実施例では、本明細書に記載されている方法、システムおよびコンピュータ読取可能な媒体は、以下のさらに他の特徴のうちの1つ以上を任意に含み得る。1つ以上の他のアプリケーションに関連付けられた上記データは、1つ以上の他のアプリケーションに関連付けられた価格設定データを含み、上記アプリケーションに関連付けられた上記リリースワークフローデータは、上記アプリケーションの構築に関連付けられたデータ、上記アプリケーションの展開に関連付けられたデータ、および上記アプリケーションのリリースに関連付けられたデータのうちの少なくとも1つを含み、および/または、上記1つ以上の他のアプリケーションに関連付けられた上記価格設定データは、上記アプリケーションとは異なる1つ以上のソースから取得される。
本開示の適用可能性のさらに他の範囲は、以下に提供される詳細な説明から明らかになるであろう。しかし、本開示の精神および範囲の範囲内のさまざまな変更および変形がこの詳細な説明から当業者に明らかになるので、詳細な説明および具体的な例は、好ましい実施例を示しているが、単に例示として提供されているに過ぎないということが理解されるべきである。
本開示のこれらのおよび他の目的、特徴および特性は、全てが本明細書の一部を構成する添付の特許請求の範囲および図面とともに以下の詳細な説明を検討することにより当業者により明らかになるであろう。
本明細書に記載されている見出しは、単に便宜上のものであるに過ぎず、本開示に記載されているものの範囲または意味に必ずしも影響を及ぼすものではない。
理解を容易にするため、および便宜上、図中の同一の参照番号およびいかなる頭字語も、同一または同様の構造または機能を有する要素または行為を特定する。図面は、以下の詳細な説明の中で詳細に説明されている。
本明細書に記載されている1つ以上の実施例に係る例示的なクラウドコンピューティング環境を示すブロック図である。 本明細書に記載されている1つ以上の実施例に係るシステムの構成要素間の例示的なデータフローを含むクラウドリリースパイプラインの診断および最適化のための例示的なシステムを示す概略図である。 本明細書に記載されている1つ以上の実施例に係るユーザのアプリケーションの開発および実行に関連付けられたデータに基づいて診断および最適化の勧告をユーザに提供するための例示的な方法を示すフローチャートである。 本明細書に記載されている1つ以上の実施例に係る例示的なクラウド管理コンソールを示すユーザインターフェイスである。 本明細書に記載されている1つ以上の実施例に係るクラウド管理コンソールの別の例を示すグラフィカルユーザインターフェイススクリーンである。 本明細書に記載されている1つ以上の実施例に係るクラウド管理コンソールの別の例を示すグラフィカルユーザインターフェイススクリーンである。 本明細書に記載されている1つ以上の実施例に係るユーザのアプリケーションの開発および実行をどのように最適化するかに関する勧告を受取ることができる機能をユーザに提供するように配置された例示的なコンピューティングデバイスを示すブロック図である。
詳細な説明
ここで、さまざまな例および実施例について説明する。以下の説明は、これらの例を完全に理解してこれらの例の説明を可能にするための具体的な詳細を提供している。しかし、本明細書に記載されている1つ以上の実施例は、これらの詳細のうちの多くがなくても実施できることを当業者は理解するであろう。同様に、本開示の1つ以上の実施例は、本明細書に詳細に記載されていない多くの他の自明な特徴を含み得ることも当業者は理解するであろう。さらに、関連する説明を不必要に曖昧にすることを回避するために、いくつかの周知の構造または機能については、以下で詳細に図示または説明していない。
クラウドコンピューティングの出現により、より多くのアプリケーション開発プロセスをオンラインで行う機会がある。例えば、開発者のアプリケーションソースコード、構築、どのようにアプリケーションが展開されているか、どこにアプリケーションが展開されているか、いつアプリケーションが重/軽負荷下で実行されるかなどに関する知識を持つことにより、アプリケーションの開発プロセスについての関連するデータを収集することが可能になる。このような収集されたデータは、どのように展開、ソースコードコンフィギュレーションなどを最適化するかに関する勧告を開発者に提供するために使用されることができる。
本開示の実施例は、ユーザのアプリケーションの開発および実行の最適化に関する勧告を提供することができるツールをユーザに提供するための方法およびシステムに関する。例えば、本明細書に記載されている1つ以上の実施例に従って、診断および最適化エンジンは、例えばアプリケーションの構築、展開、リリースおよび実行に関連付けられたさまざまなデータを取込み、このようなデータを利用して、どのようにユーザ(例えば、アプリケーションの開発者)が高いリリース生産性と、管理のしやすさと、コスト最適化とのバランスを最適にとることができるかに関する勧告/提案を生成し得る。
以下により詳細に記載されるように、本開示の方法およびシステムは、ユーザのアプリケーションのための展開パイプラインのさまざまなステージ中に収集されたデータに基づいて診断および最適化の提案を受取ることができる機能をユーザ(例えば、顧客、加入者、開発者など)に提供する。ユーザのアプリケーションおよび優先事項が時間とともに変化するにつれて、ユーザは、最適化を再調整して、何らかの状況を仮定したシナリオを実行して、トレードオフを理解することも必要である。例えば、多くのクラウドプロバイダは、使用量が経時的に一定であると想定した予約を提供する。しかし、それは、大半のワークロードが実際にどのように作用するかということではない。したがって、本明細書に記載されている1つ以上の実施例は、顧客の開発ワークフローの知識を利用して、一定でない使用量パターンのための予約パッケージを提供する。
本開示の方法およびシステムは、ユーザの開発プロセスの端から端まで(例えば、ユーザがコードを提出したときから、アプリケーションが実際にアップされて実行されるときまで)のストーリを利用して、ユーザがシステムを最適化できる方法に関する勧告を生成する。例えば、勧告は、どのようにユーザがアプリケーショントポロジを異なったようにレイアウトできるか、どのようにユーザが待ち時間を減少させることができるか、どのようにユーザがデータ局所性を増大させることができるか、またはさらには、どのようにユーザが課金コストを最適化できるかに関してなされてもよい。例えば、本明細書に記載されている最適化エンジンは、一般にユーザがこのようなリソースを利用する期間中は、他の期間中よりもさまざまなクラウドリソースが高価であると判断することができる。したがって、最適化エンジンは、(例えば、国の異なる場所では)より低い価格を利用するためにユーザが既存のワークロードを調節するよう勧告することができる。
図1は、本開示の1つ以上の実施例を実現することができる例示的なクラウドコンピューティング環境100である。クラウドコンピューティング環境100は、1つ以上のネットワークまたはクラウドコンピューティングノード120,125を含み得て、当該ノード120,125と、エンドノード105a,105b,105c,105n(nは任意の数)とが通信し得る。エンドノード105a,105b,105c,105n(例えば、ローカルコンピューティングデバイス、ユーザデバイスなど)は、例えば、タブレットコンピュータ(105a)、ラップトップコンピュータ(105b)などの携帯型コンピューティングデバイス、デスクトップコンピュータ(105c)、パーソナルデジタルアシスタント(personal digital assistant:PDA)(105n)、携帯電話、スマートフォンなどを含み得る。図1に示される特定のエンドノード(105a,105b,105c,105n)は、クラウドコンピューティングノード120,125と通信することができるタイプのデバイスのいくつかの例に過ぎず、多数の他のタイプのエンドノードも、さまざまな異なるネットワークおよび/またはネットワークアドレス可能な接続(例えば、ウェブブラウザ)を介してクラウドコンピューティング環境100と通信してもよい、ということが理解されるべきである。
図2は、クラウドリリースパイプラインに診断および最適化の勧告を提供するための例示的なシステム200である。本明細書に記載されている1つ以上の実施例に従って、システム200は、診断および最適化エンジン250と、パイプラインマネージャ240と、アプリケーション230(例えば、ウェブアプリケーション)とを含み得る。
以下により詳細に記載されるように、ユーザは、アプリケーションのための「パイプライン」を規定することができる。例えば、ユーザ205は、アプリケーション230に関するさまざまなデータ(例えば、アプリケーションのためのパイプラインを規定するデータ(260))をパイプラインマネージャ240に提供することによってアプリケーション230のためのパイプラインを規定してもよい。本明細書に記載されている1つ以上の実施例に従って、パイプラインを規定するためにユーザによって提供され得るデータは、例えば、どのようにアプリケーション230が構築されるべきであるか、どのようにおよびどこにアプリケーション230が展開されるべきであるか、どのぐらいの頻度でアプリケーション230がリリースされるべきであるか、アプリケーション230の前回のリリースに戻るための条件などを指定するデータを含み得る。
本開示の1つ以上の実施例に従って、ユーザ205は、アプリケーションのためのパイプラインを規定するデータ(260)をウェブベースのユーザインターフェイスエディタ(例えば、図4〜図6に示され、以下にさらに詳細に記載されるクラウド管理コンソールユーザインターフェイス400,500および600)を介して提供することができる。例えば、ユーザインターフェイスエディタは、パイプラインマネージャ240に関連付けられてもよく、ユーザがアプリケーションの開発、テスト、生産および展開に関連付けられたさまざまなデータを入力および提出することを可能にするように構成された1つ以上のコンソールを含んでいてもよい。
図4〜図6は、本明細書に記載されている方法およびシステムのうちの1つ以上を実現する際に使用可能な例示的なユーザインターフェイスを示す。例えば、ユーザは、ユーザがユーザのアプリケーションのためのパイプラインをセットアップ、提出および管理することを可能にするために、クラウド管理コンソール(図4、図5および図6のユーザインターフェイススクリーン400,500および600にそれぞれ図示)を備えていてもよい。本開示の1つ以上の実施例に従って、ユーザは、単一のダッシュボードからのクラウド展開および資源の全てをモニタリング、比較および最適化することができる能力を備えている。
図4〜図6に示される例示的なユーザインターフェイスのさまざまな特徴および構成要素は、アプリケーション「TacoTruck」を伴う例示的なシナリオの文脈において記載されており、アプリケーション「TacoTruck」は、規定されたパイプライン(例えば、図4に示される例示的なユーザインターフェイススクリーン400におけるパイプライン405)を含む。例示的なアプリケーション、ユーザインターフェイスの構成要素(例えば、リリース(410,510,610)、アプリケーション環境(415,515,615)、許可(420,520,620)など)、パイプラインの構成要素(例えば、リリース(430)、展開ステージ(440)など)、および図4〜図6に示される他のコンテンツを含むこの特定のシナリオは、単に例示の目的であり、本開示の範囲を限定することを意図したものでは決してないということが理解されるべきである。
(例えば、図2に示される例示的なシステム200においてパイプラインマネージャ240を介してアプリケーション230のユーザ205によって)パイプラインがアプリケーションのためにセットアップされると、規定されたパイプラインを利用することができる。例えば、ユーザは、さまざまな予め規定された機構のうちのいずれか(例えば、ソースコードを提出する、ボタンをクリックする、指定の日付および/または時刻まで待機する、など)によってパイプラインの実行をトリガしてもよい。パイプラインが実行されると、パイプラインは、アプリケーションを構築、テストおよび展開するように(例えば、ユーザ205によって)構成された全てのオペレーションを実行する。
本明細書に記載されている1つ以上の実施例に従って、本開示の診断および最適化システム200は、所与のアプリケーションのために規定されたパイプラインの実行に関連付けられたデータ(例えば、パイプラインの1つ以上のステージの実行に関連付けられたデータであり、「ステージ」は、コアタスク(例えば、構築、展開、テスト)と、1つ以上のプロジェクト(例えば、複数の開発またはテストプロジェクト)であり得るターゲット上のゲートとで構成され得る)を取込む(例えば、取得、検索、受信など)ことができる。システム200によって取込まれるまたは取得されることができるパイプラインの実行に関連付けられたデータは、本明細書では「リリースワークフローデータ」と呼ぶこともある。アプリケーションに関連付けられたリリースワークフローデータ(270)は、例えば、アプリケーションの構築に関連付けられたデータ、アプリケーションの展開に関連付けられたデータ、アプリケーションのリリースに関連付けられたデータなどを含み得る。少なくとも1つの実施例に従って、パイプラインがそのオペレーションを実行すると、システム200は、取込まれたリリースワークフローデータを(例えば、システム200に含まれるまたは関連付けられる1つ以上のデータベースに)格納することができる。
また、診断および最適化システム200は、アプリケーションに関連付けられたプロダクションワークロードデータ(275)を取込むように構成されてもよい。例えば、本明細書に記載されている1つ以上の実施例に従って、ユーザのアプリケーション(230)が展開された後、診断および最適化システム200は、「プロダクションワークロードデータ」を取得してもよく、当該「プロダクションワークロードデータ」は、例えば、ランタイムデータ、診断データ、モニタリングデータなどを含み得る。
別の例では、診断および最適化システム200は、ユーザのアプリケーションが展開されたと判断し、展開されたアプリケーションをモニタリングし、このモニタリングに基づいてさまざまなプロダクションワークロードデータ(275)を生成してもよい。少なくとも1つの実施例に従って、システムは、展開されたアプリケーションをモニタリングするときに、例えばアプリケーションによって利用されているリソースの量、どのようにおよびどこでリソースがアプリケーションによって使用されているか(例えば、アプリケーションにわたる利用されるリソースの割当て)などを判断することができる。上記のリリースワークフローデータ(270)と同様に、取込まれたプロダクションワークロードデータ(275)も、システムによって(例えば、1つ以上のデータベースに)格納されることができる。
リリースワークフローデータ(270)およびプロダクションワークロードデータ(275)を用いて、システム200は、(例えば、診断および最適化エンジン250を介して)ユーザのアプリケーションを分析し、どのようにユーザがアプリケーションを最適化できるかに関するさまざまな提案/勧告を生成することができる。少なくとも1つの実施例に従って、システム200は、リリースワークフローデータ(270)およびプロダクションワークロードデータ(275)を、アプリケーション230のために取得される価格設定データ(280)と組み合わせることができる。このような価格設定データ(280)は、アプリケーション230に関連付けられてもよく、または1つ以上の他のアプリケーションに関連付けられてもよい。例えば、システム200は、世界中のさまざまなデータセンタにおいてアプリケーションを実行するのにどれぐらいのコストがかかるかに関するデータなどの価格設定データを他のデータソースから取得するように構成されてもよい。
システム200がデータ(例えば、リリースワークフローデータ(270)、プロダクションワークロードデータ(275)、価格設定データ(280)および/またはこれらの任意の組み合わせ)を分析すると、システム200は、1つ以上の診断および最適化の勧告(290)を生成することができる。例えば、システム200は、ユーザ205がアプリケーションをよりコストがかかるデータセンタに展開しており、異なる領域を使用することによってコストを削減できる、と判断し得る。別の例として、システム200は、ユーザのアプリケーション230が(他のデータセンタと比較して)特定のデータセンタにおいてより多くのトラフィックを受けており、そのため、ユーザ205は、当該データセンタにより多くのレプリカ/インスタンスを置くことによってCPU負荷を減少させることができる、と判断し得る。1つ以上の実施例に従って、診断および最適化の勧告(290)は、使用量(例えば、特定の既存のリソースを再利用できるか、または引退させることができるか)、性能(例えば、よりよい態様でリソースをサイズ決め(拡張/縮小)することができるか否か)、コスト(例えば、予約価格設定を利用すべきか否か)、ユーザのプロダクションワークロードおよびリリースワークフローの理解に関連する多数の他の要因、ならびにクラウド価格設定オプションおよび可用性に関して、生成および提供されることができる。
図3は、ユーザのアプリケーションの開発および実行をどのように最適化するかに関する勧告をユーザに提供するための例示的なプロセスを示す。少なくとも1つの実施例に従って、例示的なプロセス300は、診断および最適化エンジン(例えば、図2に示される例示的なシステム200における診断および最適化エンジン250)によって実行されることができる。
ブロック305において、アプリケーションに関連付けられたリリースワークフローデータを取得することができる。例えば、少なくとも1つの実施例に従って、診断および最適化エンジンは、アプリケーションに関連付けられたリリースワークフローデータ(例えば、図2に示される例示的なシステム200における診断および最適化エンジン250によってパイプラインマネージャ240から取得された、アプリケーション230に関連付けられたリリースワークフローデータ(270))をパイプラインマネージャから取得してもよい。ブロック310において、ブロック305で取得されたリリースワークフローデータを(例えば、図2に示される例示的なシステム200に含まれるまたは接続される1つ以上のデータベースに)格納することができる。
ブロック315において、アプリケーションに関連付けられたプロダクションワークロードデータを取得することができる。例えば、少なくとも1つの実施例に従って、ユーザのアプリケーションが展開されたと判断し、展開されたアプリケーションをモニタリングし、このモニタリングに基づいてさまざまなプロダクションワークロードデータ(例えば、図2に示される例示的なシステム200における診断および最適化エンジン250によってパイプラインマネージャ240から取得された、アプリケーション230に関連付けられたプロダクションワークロードデータ(275))を生成するように設計された診断および最適化エンジンによって、プロダクションワークフローデータが取込まれてもよい。少なくとも1つの実施例に従って、ブロック315で取得されることができるプロダクションワークロードデータは、例えば、アプリケーションによって利用されているリソースの量、どのようにおよびどこでリソースがアプリケーションによって使用されているか(例えば、アプリケーションにわたる利用されるリソースの割当て)などを含み得る。ブロック320において、ブロック315で取得されたプロダクションワークロードデータを(例えば、図2に示される例示的なシステム200に含まれるまたは接続される1つ以上のデータベースに)格納することができる。
ブロック325において、アプリケーションのためにブロック305で取得されたリリースワークフローデータおよびアプリケーションのためにブロック315で取得されたプロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせることができる。例えば、少なくとも1つの実施例に従って、ブロック325において、リリースワークフローデータおよびプロダクションワークロードデータは、アプリケーションのために取得された価格設定データ(例えば、図2に示される例示的なシステム200における価格設定データ(280))と組み合わせられてもよい。このような価格設定データは、例えば、アプリケーションに関連付けられてもよく、または1つ以上の他のアプリケーションに関連付けられてもよい。例えば、ブロック325において、価格設定データは、アプリケーションとは別の(例えば、図2に示される例示的なシステム200の外側の)1つ以上のデータソースから取得されてもよい。
ブロック330において、組み合わせられたデータ(例えば、アプリケーションのためにブロック305で取得されたリリースワークフローデータ、アプリケーションのためにブロック315で取得されたプロダクションワークロードデータ、およびブロック325で取得された、1つ以上の他のアプリケーションに関連付けられたデータ(例えば、価格設定データ))を分析して、1つ以上の診断および最適化の勧告(例えば、図2に示される例示的なシステム200における診断および最適化の勧告(290))を生成することができる。
ブロック335において、ブロック330で生成された診断および最適化の勧告をユーザに提供することができる。例えば、少なくとも1つの実施例に従って、ブロック330で生成された診断および最適化の勧告は、ユーザによってアクセス可能なユーザインターフェイススクリーン(例えば、図4、図5および図6にそれぞれ示される例示的なユーザインターフェイス400,500および600のうちの1つ以上)に表示されるように提供されてもよい。
図7は、ユーザのアプリケーションの開発および実行をどのように最適化するかに関する勧告を受取るためのツールをユーザに提供するように配置された例示的なコンピュータ(700)のハイレベルブロック図である。例えば、本明細書に記載されている1つ以上の実施例に従って、コンピュータ(700)は、ユーザのアプリケーションのための展開パイプラインのさまざまなステージ中に収集されたデータに基づいて診断および最適化の提案を受取ることができる機能をユーザに提供するように構成されてもよい。非常に基本的な構成(701)では、コンピューティングデバイス(700)は、一般に、1つ以上のプロセッサ(710)と、システムメモリ(720)とを含む。プロセッサ(710)とシステムメモリ(720)との間での通信には、メモリバス(730)を使用することができる。
所望の構成に応じて、プロセッサ(710)は、任意のタイプのものであってもよく、マイクロプロセッサ(μP)、マイクロコントローラ(μC)、デジタル信号プロセッサ(digital signal processor:DSP)、またはこれらの任意の組み合わせを含むが、これらに限定されるものではない。プロセッサ(710)は、レベル1キャッシュ(711)およびレベル2キャッシュ(712)などの1つ以上のキャッシングレベルと、プロセッサコア(713)と、レジスタ(714)とを含み得る。プロセッサコア(713)は、算術論理演算装置(arithmetic logic unit:ALU)、浮動小数点演算装置(floating point unit:FPU)、デジタル信号処理コア(DSPコア)、またはこれらの任意の組み合わせを含み得る。プロセッサ(710)とともにメモリコントローラ(716)も使用することができ、またはいくつかの実現例では、メモリコントローラ(715)は、プロセッサ(710)の内部部品であってもよい。
所望の構成に応じて、システムメモリ(720)は、任意のタイプのものであってもよく、(RAMなどの)揮発性メモリ、(ROM、フラッシュメモリなどの)不揮発性メモリ、またはこれらの任意の組み合わせを含むが、これらに限定されるものではない。システムメモリ(720)は、一般に、オペレーティングシステム(721)と、1つ以上のアプリケーション(722)と、プログラムデータ(724)とを含む。アプリケーション(722)は、例えばアプリケーションの構築、展開、リリースおよび実行に関連付けられたさまざまなデータを取込み、このようなデータを利用して、高いリリース生産性、管理のしやすさおよびコスト最適化という検討事項のバランスをどのようにユーザがとることができるかに関する勧告/提案を生成するための診断および最適化システム(例えば、図2に示されるシステム200)を含み得る。
プログラムデータ(724)は、1つ以上の処理装置によって実行されたときに、ユーザのアプリケーションの開発および実行に関連付けられたデータに基づいてユーザに診断および最適化の勧告を提供するためのシステムおよび方法を実現する命令の格納を含み得る。さらに、少なくとも1つの実施例に従って、プログラムデータ(724)は、所与のアプリケーションのために取得されたリリースワークフローデータおよびプロダクションワークロードデータに関連し得るワークフロー、プロダクションおよび価格設定データ(725)と、さまざまなクラウドコンピューティングの提供および可用性に関連付けられたさまざまな価格データとを含み得る。いくつかの実施例では、アプリケーション(722)は、オペレーティングシステム(721)上でプログラムデータ(724)とともに動作するように配置されることができる。
コンピューティングデバイス(700)は、基本構成(701)と任意の必要なデバイスおよびインターフェイスとの間の通信を容易にするために、さらに他の特徴または機能と、さらに他のインターフェイスとを有し得る。
システムメモリ(720)は、コンピュータ記憶媒体の一例である。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD−ROM、デジタル多用途ディスク(digital versatile disk:DVD)もしくは他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報を格納するために使用可能であり、かつ、コンピューティングデバイス700によってアクセス可能なその他の媒体を含むが、これらに限定されるものではない。任意のこのようなコンピュータ記憶媒体は、デバイス(700)の一部であってもよい。
コンピューティングデバイス(700)は、携帯電話、スマートフォン、パーソナルデータアシスタント(PDA)、パーソナルメディアプレーヤデバイス、タブレットコンピュータ(タブレット)、無線ウェブウォッチデバイス、パーソナルヘッドセットデバイス、特定用途向けデバイス、または上記の機能のうちのいずれかを含むハイブリッドデバイスなどの、フォームファクタが小さな、携帯型の(またはモバイル)電子デバイスの一部として実現されてもよい。また、コンピューティングデバイス(700)は、ラップトップコンピュータの構成もラップトップでないコンピュータの構成も含むパーソナルコンピュータとして実現されてもよい。
上記の詳細な説明は、ブロック図、フローチャートおよび/または例を使用することによって装置および/またはプロセスのさまざまな実施例を説明してきた。このようなブロック図、フローチャートおよび/または例が1つ以上の機能および/または動作を含む限りにおいて、このようなブロック図、フローチャートまたは例における各機能および/または動作は、さまざまなハードウェア、ソフトウェア、ファームウェア、または事実上これらの任意の組み合わせによって、個々におよび/または集合的に実行可能である、ということが当業者によって理解されるであろう。一実施例では、本明細書に記載されている主題のいくつかの部分は、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA)、デジタル信号プロセッサ(DSP)または他の集積フォーマットによって実現されてもよい。しかし、本明細書に開示されている実施例のいくつかの態様は、全体または一部が、1つ以上のコンピュータで実行される1つ以上のコンピュータプログラムとして、1つ以上のプロセッサで実行される1つ以上のプログラムとして、ファームウェアとして、または事実上これらの任意の組み合わせとして、集積回路において同等に実現されてもよく、ソフトウェアおよび/またはファームウェアのために回路を設計することおよび/またはコードを書込むことは、本開示に鑑みて十分に当業者の知識の範囲内であろう、ということを当業者は認識するであろう。
また、本明細書に記載されている主題の機構は、さまざまな形態のプログラム製品として流通されることができ、本明細書に記載されている主題の例示的な実施例は、実際に流通を行うために使用される特定のタイプの非一時的な信号担持媒体にかかわらず適用される、ということを当業者は理解するであろう。非一時的な信号担持媒体の例としては、フロッピー(登録商標)ディスク、ハードディスクドライブ、コンパクトディスク(Compact Disc:CD)、デジタルビデオディスク(Digital Video Disk:DVD)、デジタルテープ、コンピュータメモリなどの記録可能なタイプの媒体、ならびに、デジタルおよび/またはアナログ通信媒体(例えば、光ファイバケーブル、導波管、有線通信リンク、無線通信リンクなど)などの伝送タイプの媒体が挙げられるが、これらに限定されるものではない。
本明細書における実質的にいずれの複数形および/または単数形の用語の使用に関しても、当業者は、文脈および/または用途に適切であるように複数形から単数形に、および/または、単数形から複数形に変換することができる。さまざまな単数形/複数形の置換は、明確にするために本明細書に明記され得る。
本明細書に記載されているシステムがユーザに関する個人情報を収集するか、または個人情報を利用する可能性がある状況では、ユーザは、プログラムまたは機能がユーザ情報(例えば、ユーザのソーシャルネットワーク、社会的行為もしくは活動、職業、ユーザの好み、またはユーザの現在位置についての情報)を収集するか否かを制御する機会を提供されることができる。
このように、主題の特定の実施例について説明してきた。他の実施例は、以下の特許請求の範囲の範囲内である。場合によっては、特許請求の範囲に記載されている行為は、異なる順序で行われてもよく、依然として望ましい結果を達成することができる。また、添付の図面に示されているプロセスは、望ましい結果を達成するために、示されている特定の順序またはシーケンシャルな順序を必ずしも必要としない。特定の実現例では、マルチタスクおよび並列処理が有利であろう。

Claims (22)

  1. コンピュータによって実行される方法であって、
    アプリケーションに関連付けられたリリースワークフローデータを取得するステップ(305)と、
    前記アプリケーションに関連付けられたプロダクションワークロードデータを取得するステップ(315)と、
    前記リリースワークフローデータおよび前記プロダクションワークロードデータをデータベースに格納するステップ(310,320)と、
    前記アプリケーションのために取得された前記リリースワークフローデータおよび前記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせるステップ(325)と、
    前記組み合わせられたデータを分析して、診断および最適化の勧告を生成するステップ(330)と、
    前記生成された勧告を前記ユーザに提供するステップ(335)とを備える、方法。
  2. 1つ以上の他のアプリケーションに関連付けられた前記データは、1つ以上の他のアプリケーションに関連付けられた価格設定データを含む、請求項1に記載の方法。
  3. 前記アプリケーションに関連付けられたリリースワークフローデータを取得するステップは、
    前記アプリケーションのために規定されたパイプラインの1つ以上のステージの実行に関連付けられたデータを取込むステップを含む、請求項1に記載の方法。
  4. 前記アプリケーションに関連付けられた前記リリースワークフローデータは、前記アプリケーションの構築に関連付けられたデータ、前記アプリケーションの展開に関連付けられたデータ、および前記アプリケーションのリリースに関連付けられたデータのうちの少なくとも1つを含む、請求項1に記載の方法。
  5. 前記アプリケーションに関連付けられたプロダクションワークロードデータを取得するステップは、
    前記アプリケーションが展開されたと判断するステップと、
    前記展開されたアプリケーションをモニタリングするステップと、
    前記展開されたアプリケーションの前記モニタリングに基づいてデータを生成するステップとを含む、請求項1に記載の方法。
  6. 前記展開されたアプリケーションをモニタリングするステップは、前記展開されたアプリケーションによって利用されているリソースの量を判断するステップを含む、請求項5に記載の方法。
  7. 前記展開されたアプリケーションをモニタリングするステップは、前記展開されたアプリケーションにわたる利用されるリソースの割当てを判断するステップを含む、請求項5に記載の方法。
  8. 前記1つ以上の他のアプリケーションに関連付けられた前記価格設定データは、前記アプリケーションとは別の1つ以上のソースから取得される、請求項2に記載の方法。
  9. 前記生成された勧告を前記ユーザに提供するステップは、前記ユーザによってアクセス可能なユーザインターフェイススクリーンに表示されるように前記勧告を提供するステップを含む、請求項1に記載の方法。
  10. システムであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに結合された非一時的なコンピュータ読取可能な媒体とを備え、前記コンピュータ読取可能な媒体は、命令を格納し、前記命令は、前記1つ以上のプロセッサによって実行されたときに、前記1つ以上のプロセッサにオペレーションを実行させ、前記オペレーションは、
    アプリケーションに関連付けられたリリースワークフローデータを取得すること(305)と、
    前記アプリケーションに関連付けられたプロダクションワークロードデータを取得すること(315)と、
    前記リリースワークフローデータおよび前記プロダクションワークロードデータをデータベースに格納すること(310,320)と、
    前記アプリケーションのために取得された前記リリースワークフローデータおよび前記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせること(325)と、
    前記組み合わせられたデータを分析して、診断および最適化の勧告を生成すること(330)と、
    前記生成された勧告を前記ユーザに提供すること(335)とを備える、システム。
  11. 1つ以上の他のアプリケーションに関連付けられた前記データは、1つ以上の他のアプリケーションに関連付けられた価格設定データを含む、請求項10に記載のシステム。
  12. 前記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、前記さらに他のオペレーションは、
    前記アプリケーションのために規定されたパイプラインの1つ以上のステージの実行に関連付けられたデータを取込むことを備える、請求項10に記載のシステム。
  13. 前記アプリケーションに関連付けられた前記リリースワークフローデータは、前記アプリケーションの構築に関連付けられたデータ、前記アプリケーションの展開に関連付けられたデータ、および前記アプリケーションのリリースに関連付けられたデータのうちの少なくとも1つを含む、請求項10に記載のシステム。
  14. 前記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、前記さらに他のオペレーションは、
    前記アプリケーションが展開されたと判断することと、
    前記展開されたアプリケーションをモニタリングすることと、
    前記展開されたアプリケーションの前記モニタリングに基づいてデータを生成することとを備える、請求項10に記載のシステム。
  15. 前記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、前記さらに他のオペレーションは、
    前記展開されたアプリケーションによって利用されているリソースの量を判断することを備える、請求項14に記載のシステム。
  16. 前記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、前記さらに他のオペレーションは、
    前記1つ以上の他のアプリケーションに関連付けられた価格設定データを、前記アプリケーションとは別の1つ以上のソースから取得することを備える、請求項11に記載のシステム。
  17. 前記1つ以上のプロセッサは、さらに他のオペレーションを実行するようにされ、前記さらに他のオペレーションは、
    前記ユーザによってアクセス可能なユーザインターフェイススクリーンを生成することと、
    前記ユーザインターフェイススクリーンに表示されるように前記勧告を提供することとを備える、請求項10に記載のシステム。
  18. コンピュータによって実行可能な命令を格納する1つ以上の非一時的なコンピュータ読取可能な媒体であって、前記コンピュータによって実行可能な命令は、1つ以上のプロセッサによって実行されたときに、前記1つ以上のプロセッサにオペレーションを実行させ、前記オペレーションは、
    アプリケーションに関連付けられたリリースワークフローデータを取得すること(305)と、
    前記アプリケーションに関連付けられたプロダクションワークロードデータを取得すること(315)と、
    前記リリースワークフローデータおよび前記プロダクションワークロードデータをデータベースに格納すること(310,320)と、
    前記アプリケーションのために取得された前記リリースワークフローデータおよび前記プロダクションワークロードデータを、1つ以上の他のアプリケーションに関連付けられたデータと組み合わせること(325)と、
    前記組み合わせられたデータを分析して、診断および最適化の勧告を生成すること(330)と、
    前記生成された勧告を前記ユーザに提供すること(335)とを備える、1つ以上の非一時的なコンピュータ読取可能な媒体。
  19. 前記コンピュータによって実行可能な命令は、前記1つ以上のプロセッサによって実行されたときに、前記1つ以上のプロセッサにさらに他のオペレーションを実行させ、前記さらに他のオペレーションは、
    前記アプリケーションのために規定されたパイプラインの1つ以上のステージの実行に関連付けられたデータを取込むことを備える、請求項18に記載の1つ以上の非一時的なコンピュータ読取可能な媒体。
  20. 前記コンピュータによって実行可能な命令は、前記1つ以上のプロセッサによって実行されたときに、前記1つ以上のプロセッサにさらに他のオペレーションを実行させ、前記さらに他のオペレーションは、
    前記アプリケーションが展開されたと判断することと、
    前記展開されたアプリケーションをモニタリングすることと、
    前記展開されたアプリケーションの前記モニタリングに基づいてデータを生成することとを備える、請求項18に記載の1つ以上の非一時的なコンピュータ読取可能な媒体。
  21. 1つ以上の他のアプリケーションに関連付けられた前記データは、1つ以上の他のアプリケーションに関連付けられた価格設定データを含む、請求項18に記載の1つ以上の非一時的なコンピュータ読取可能な媒体。
  22. 前記アプリケーションに関連付けられた前記リリースワークフローデータは、前記アプリケーションの構築に関連付けられたデータ、前記アプリケーションの展開に関連付けられたデータ、および前記アプリケーションのリリースに関連付けられたデータのうちの少なくとも1つを含む、請求項18に記載の1つ以上の非一時的なコンピュータ読取可能な媒体。
JP2016553561A 2014-02-26 2015-02-25 クラウドリリースパイプラインの診断および最適化 Withdrawn JP2017506400A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/191,168 2014-02-26
US14/191,168 US20150244773A1 (en) 2014-02-26 2014-02-26 Diagnosis and optimization of cloud release pipelines
PCT/US2015/017476 WO2015130755A1 (en) 2014-02-26 2015-02-25 Diagnosis and optimization of cloud release pipelines

Publications (1)

Publication Number Publication Date
JP2017506400A true JP2017506400A (ja) 2017-03-02

Family

ID=52727378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016553561A Withdrawn JP2017506400A (ja) 2014-02-26 2015-02-25 クラウドリリースパイプラインの診断および最適化

Country Status (7)

Country Link
US (1) US20150244773A1 (ja)
EP (1) EP3111328A1 (ja)
JP (1) JP2017506400A (ja)
KR (1) KR20160124895A (ja)
CN (1) CN106030529A (ja)
DE (1) DE202015009252U1 (ja)
WO (1) WO2015130755A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170163732A1 (en) * 2015-12-04 2017-06-08 Vmware, Inc. Inter-task communication within application-release-management pipelines
US9787779B2 (en) 2015-12-21 2017-10-10 Amazon Technologies, Inc. Analyzing deployment pipelines used to update production computing services using a live pipeline template process
US9760366B2 (en) * 2015-12-21 2017-09-12 Amazon Technologies, Inc. Maintaining deployment pipelines for a production computing service using live pipeline templates
US10334058B2 (en) 2015-12-21 2019-06-25 Amazon Technologies, Inc. Matching and enforcing deployment pipeline configurations with live pipeline templates
US10193961B2 (en) 2015-12-21 2019-01-29 Amazon Technologies, Inc. Building deployment pipelines for a production computing service using live pipeline templates
CN106095479A (zh) * 2016-05-31 2016-11-09 北京中亦安图科技股份有限公司 一种企业应用发布方法、装置及系统
US11361672B2 (en) 2016-11-14 2022-06-14 Colgate-Palmolive Company Oral care system and method
US10582764B2 (en) 2016-11-14 2020-03-10 Colgate-Palmolive Company Oral care system and method
US11043141B2 (en) 2016-11-14 2021-06-22 Colgate-Palmolive Company Oral care system and method
US10835028B2 (en) 2016-11-14 2020-11-17 Colgate-Palmolive Company Oral care system and method
US11213120B2 (en) 2016-11-14 2022-01-04 Colgate-Palmolive Company Oral care system and method
US10671368B2 (en) * 2017-11-03 2020-06-02 International Business Machines Corporation Automatic creation of delivery pipelines
KR101988043B1 (ko) 2019-03-28 2019-09-30 강현주 의료용 케이블 자동 제조 방법 및 그 시스템
US20220345471A1 (en) * 2021-04-21 2022-10-27 EMC IP Holding Company LLC Early validation of communication behavior
US11609754B2 (en) * 2021-06-17 2023-03-21 Sap Se Tool for latency optimized system placement

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080351B1 (en) * 2002-04-04 2006-07-18 Bellsouth Intellectual Property Corp. System and method for performing rapid application life cycle quality assurance
US20100235807A1 (en) * 2009-03-16 2010-09-16 Hitachi Data Systems Corporation Method and system for feature automation
US8504689B2 (en) * 2010-05-28 2013-08-06 Red Hat, Inc. Methods and systems for cloud deployment analysis featuring relative cloud resource importance
US8656023B1 (en) * 2010-08-26 2014-02-18 Adobe Systems Incorporated Optimization scheduler for deploying applications on a cloud
US20140372989A1 (en) * 2012-01-31 2014-12-18 Inbar Shani Identification of a failed code change
US9037897B2 (en) * 2012-02-17 2015-05-19 International Business Machines Corporation Elastic cloud-driven task execution
CN104254834B (zh) * 2012-06-08 2018-04-27 慧与发展有限责任合伙企业 云应用部署可移植性
US9454294B2 (en) * 2013-03-15 2016-09-27 International Business Machines Corporation Creating, provisioning and managing virtual data centers
US9413818B2 (en) * 2014-02-25 2016-08-09 International Business Machines Corporation Deploying applications in a networked computing environment

Also Published As

Publication number Publication date
US20150244773A1 (en) 2015-08-27
WO2015130755A9 (en) 2016-03-10
WO2015130755A1 (en) 2015-09-03
CN106030529A (zh) 2016-10-12
DE202015009252U1 (de) 2017-01-18
EP3111328A1 (en) 2017-01-04
KR20160124895A (ko) 2016-10-28

Similar Documents

Publication Publication Date Title
JP2017506400A (ja) クラウドリリースパイプラインの診断および最適化
US9442827B2 (en) Simulation environment for distributed programs
US9569179B1 (en) Modifying models based on profiling information
JP6349395B2 (ja) コールパスファインダ
US20160026556A1 (en) Call chain interval resource impact unification
US20150007138A1 (en) Method and system for incrementally updating a test suite utilizing run-time application executions
US20150339628A1 (en) Online software service system and method
CA2932897A1 (en) Visual effects system for "big data" analysis workflow editors, distribution platforms, execution engines, and management systems comprising same
JPWO2018066040A1 (ja) 管理計算機及びテスト環境決定方法
JP6299599B2 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
US20180316587A1 (en) Automated analysis and recommendations for highly performant single page web applications
US20150234729A1 (en) Enhancing performance in multithreaded systems
US9244652B1 (en) State management for task queues
US9164746B2 (en) Automatic topology extraction and plotting with correlation to real time analytic data
JP6094594B2 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
JP2016514326A (ja) コンピューターシステムアクティビティのトレースタイムラインを解析するための方法およびシステム
JP2006092053A (ja) システム使用率管理装置及びそれに用いるシステム使用率管理方法並びにそのプログラム
US10324822B1 (en) Data analytics in a software development cycle
KR101681154B1 (ko) 데이터 수집기 구축 방법, 이를 수행하는 데이터 수집기 구축 서버 및 이를 저장하는 기록매체
JP5967091B2 (ja) システムパラメータ設定支援システム、システムパラメータ設定支援装置のデータ処理方法、およびプログラム
KR20170044320A (ko) 분산 컴퓨팅 기반의 어플리케이션 객체 분석 방법, 이를 수행하는 어플리케이션 객체 분석 서버 및 이를 저장하는 기록매체
CN110297625B (zh) 应用的处理方法及装置
US20140244538A1 (en) Business process management, configuration and execution
CN112817573B (zh) 用于构建流式计算应用的方法、装置、计算机系统和介质
US20230106021A1 (en) Method and system for providing customized rollout of features

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160822

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160822

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20170427