JP6766495B2 - プログラム、コンピュータ及び情報処理方法 - Google Patents

プログラム、コンピュータ及び情報処理方法 Download PDF

Info

Publication number
JP6766495B2
JP6766495B2 JP2016143723A JP2016143723A JP6766495B2 JP 6766495 B2 JP6766495 B2 JP 6766495B2 JP 2016143723 A JP2016143723 A JP 2016143723A JP 2016143723 A JP2016143723 A JP 2016143723A JP 6766495 B2 JP6766495 B2 JP 6766495B2
Authority
JP
Japan
Prior art keywords
service
time
task
cpu
information
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
Application number
JP2016143723A
Other languages
English (en)
Other versions
JP2018013994A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016143723A priority Critical patent/JP6766495B2/ja
Priority to US15/647,295 priority patent/US10713142B2/en
Publication of JP2018013994A publication Critical patent/JP2018013994A/ja
Application granted granted Critical
Publication of JP6766495B2 publication Critical patent/JP6766495B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/3419Recording 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 by assessing time
    • G06F11/3423Recording 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 by assessing time where the assessed time is active or idle time
    • 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
    • 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/3447Performance evaluation by modeling
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、サービスを評価するプログラム等に関する。
従来、サービスの実行を指示するリクエストメッセージ及びリクエストメッセージに対する応答を示すレスポンスメッセージを受信することでサービスの処理時間を算出し、所要範囲内に収まるように処理の多重度を変更する技術が知られている(例えば特許文献1参照)。
特開2014−38578号公報
しかし、特許文献1に開示された技術では、ボトルネック候補を直接探索することが難しいという問題がある。
一つの側面では、容易にサービスの実行の障害となるボトルネック候補を特定することができるプログラム等を提供することにある。
一態様のプログラムは、複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出し、算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶し、前記タスク毎のサービス処理時間を平均した平均処理時間を算出し、算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する処理をコンピュータに実行させる。
一側面によれば、容易にサービスの実行の障害となるボトルネック候補を特定することができる。
情報処理システムの概要を示す模式図である。 情報処理装置及び情報処理装置のハードウェア群を示すブロック図である。 ゲートウェイ及びネットワーク機器のハードウェア群を示すブロック図である。 サービス実行順序DBに格納されているデータの一例を示す図である。 タスク情報DBに格納されているデータの一例を示す図である。 ゲートウェイ送信側時刻DBに格納されているデータの一例を示す図である。 受信側時刻DBに格納されているデータの一例を示す図である。 送信側時刻DBに格納されているデータの一例を示す図である。 サービスグループ情報DBに格納されているデータの一例を示す図である。 応答待ちのサービスを加えたサービスグループ情報DBに格納されているデータの一例を示す図である。 処理時間DBに格納されているデータの一例を示す図である。 応答待ち時間を除外した処理時間DBに格納されているデータの一例を示す図である。 サービス処理時間DBに格納されているデータの一例を示す図である。 平均処理時間DBに格納されているデータの一例を示す図である。 平均処理時間及びサービスを表示した表示例を説明する説明図である。 本実施形態におけるゲートウェイ送信側時刻DB、ルータ送信側時刻DB及びルータ受信側時刻DBの記憶方法の処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 本実施形態における情報処理システムの処理手順を示したフローチャートである。 情報処理装置のハードウェア群を示すブロック図である。 情報処理装置の機能ブロック図である。
実施の形態1
以下本実施の形態を、図面を参照して説明する。図1は情報処理システムの概要を示す模式図である。図1に示す情報処理システムは、コンピュータ(以下、情報処理装置とする)1と、中継装置(以下、ゲートウェイとする)2と、中継装置3A、3B、3C…(以下、場合により代表してネットワーク機器3とする)と、情報処理装置4A、4B、4C…(以下、場合により代表して情報処理装置4とする)とを備える。情報処理装置1はゲートウェイ2を介してインターネット、LAN(Local Area Network)または携帯電話網等の通信網Nによりネットワーク機器3と相互に接続されている。またネットワーク機器3は情報処理装置4と相互に接続されている。
以下では情報処理システムの概要を説明する。情報処理装置1は例えばパーソナルコンピュータ又はサーバコンピュータ等である。情報処理装置1はタスクに含まれる複数のサービスの実行を指示するタスク実行命令をゲートウェイ2及びネットワーク機器3を介して情報処理装置4へ送信するための装置である。サービスは例えば、ユーザ情報管理サービス又は在庫情報管理サービス等である。タスクは複数であり、情報処理装置1は複数回のタスク実行命令を情報処理装置4へ送信している。タスクは例えば会計処理等である。
ゲートウェイ2及びネットワーク機器3は例えばルータ等である。ゲートウェイ2は異なったプロトコルを持つデータの変換を行い、情報処理装置1とネットワーク機器3との間で情報を中継する装置である。ネットワーク機器3は、ゲートウェイ2及び情報処理装置4A、4B…間で情報を中継する装置である。
情報処理装置4は例えば、サーバコンピュータ又は仮想マシン等である。情報処理装置4は複数のアプリケーション又はミドルウェア等のコンテナを制御するコンテナ基盤が実装されている。情報処理装置4はネットワーク機器3から一のサービスの実行を指示する指示命令を受信した場合、情報処理装置4上のコンテナ基盤が各サービスを各コンテナに割り当てる。情報処理装置4は割り当てられたコンテナ毎に各サービスを実行する。情報処理装置4は各サービスの実行を終了した場合、指示命令に対する応答を示す応答命令をネットワーク機器3へ送信する。
ネットワーク機器3は指示命令又は指示命令に対する応答を示す応答命令を中継する。ネットワーク機器3は指示命令又は応答命令及び通信時刻を記憶する。通信時刻は例えば、指示命令及び応答命令を送信した送信時刻又は指示命令及び応答命令を受信した受信時刻等である。指示命令又は応答命令とは例えば後述する受信ID又は送信ID、指示命令又は応答命令を受信又は送信した情報処理装置4又はゲートウェイ2の名称及びサービスの名称等である。ネットワーク機器3は記憶した通信時刻を情報処理装置1へ送信する。情報処理装置1は通信時刻をネットワーク機器3から受信する。
情報処理装置1は通信時刻に基づいて情報処理装置4で処理を実行した処理時間を算出する。情報処理装置1は算出した処理時間に基づいて各サービスが実行したサービス処理時間を算出する。情報処理装置1はタスク毎にサービス処理時間の平均を示す平均処理時間を算出する。情報処理装置1は平均処理時間の中から最も長い平均処理時間及び最も長い平均処理時間に対応するサービスを抽出する。情報処理装置1は抽出した平均処理時間及びサービスを後述する表示部15に出力する。このことにより、情報処理装置1の管理者は処理の障害となるボトルネック候補を特定することができる。
以下、情報処理システムの詳細を説明する。図2は情報処理装置1及び情報処理装置4のハードウェア群を示すブロック図である。図2に示す情報処理装置1は、CPU(Central Processing Unit)11、記憶部12、RAM13、入力部14、表示部15、通信部16及び計時部17を備える。
CPU11は、バスを介してハードウェア各部と接続されている。CPU11は例えば一もしくは複数のCPU又はマルチコアCPU等を備える。CPU11は、記憶部12に記憶されたプログラム12Pに従いハードウェアの各部を制御する。
記憶部12は例えばハードディスクまたは大容量メモリ等である。記憶部12にはCPU11が処理を行う際に必要とする種々のデータ、サービス実行順序DB120、タスク情報DB121、ゲートウェイ送信側時刻DB122、受信側時刻DB123、送信側時刻DB124、サービスグループ情報DB125、処理時間DB126、サービス処理時間DB127、平均処理時間DB128及びプログラム12Pを格納する。
RAM13は例えばSRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、フラッシュメモリ等である。RAM13は、記憶部としても機能し、CPU11による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
入力部14はボタン等の入力デバイスであり、受け付けた操作情報をCPU11へ送信する。表示部15はCPU11から送信された画像データを表示する。表示部15は例えば液晶画面である。通信部16は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して各種情報をゲートウェイ2との間で送受信する。計時部17は、例えば現在の時点における時刻を計時し、CPU11の要求に従って、計時結果をCPU11に出力する。
図2に示す情報処理装置4は、CPU41、記憶部42、RAM43、入力部44、表示部45及び通信部46を備える。情報処理装置4のCPU41、記憶部42、RAM43、入力部44及び表示部45の構成は、情報処理装置1のCPU11、記憶部12、RAM13及び入力部14及び表示部15の構成と同様であるため、簡潔のため記載を省略する。通信部46は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して各種情報をネットワーク機器3との間で送受信する。
図3はゲートウェイ2及びネットワーク機器3のハードウェア群を示すブロック図である。図3に示すゲートウェイ2は、CPU21、記憶部22、RAM23、通信部26及び計時部27を備える。ゲートウェイ2のCPU21、記憶部22、RAM23及び計時部27の構成は、情報処理装置1のCPU11、記憶部12、RAM13及び計時部17の構成と同様であるため、簡潔のため記載を省略する。通信部26は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して各種情報を情報処理装置1及びネットワーク機器3との間で送受信する。
図3に示すネットワーク機器3は、CPU31、記憶部32、RAM33、通信部36及び計時部37を備える。ネットワーク機器3のCPU31、記憶部32、RAM33及び計時部37の構成は、情報処理装置1のCPU11、記憶部12、RAM13及び計時部17の構成と同様であるため、簡潔のため記載を省略する。通信部36は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して各種情報をゲートウェイ2及び情報処理装置4との間で送受信する。
図4はサービス実行順序DB120に格納されているデータの一例を示す図である。サービス実行順序DB120は各タスクに含まれるサービスの実行順序が記憶されたデータベースである。タスクは例えば複数のサービスを実行させる命令である。サービス実行順序DB120はタスク列及びサービス名列を備える。タスク列は、主キーとなるタスクが記憶される。サービス名列は1、2、3…列等を備える。サービス名列にはサービスの名称が記憶され、1、2、3…等はサービスの実行順序を示している。CPU11は予めタスクに対応するサービス及びサービスの実行順序を管理者から入力部14で入力を受け付け、受け付けたサービス及びサービスの実行順序をサービス実行順序DB120に記憶している。例えば、タスク「T1」のサービス名列の2列目にはサービス「f」が記憶される。すなわち、タスク「T1」の2番目にサービス「f」が実行されることを示す。また、タスク「T2」のサービス名列の1列目にはサービス「a」が記憶される。すなわち、タスク「T2」の1番目にサービス「a」が実行されることを示す。
図5はタスク情報DB121に格納されているデータの一例を示す図である。タスク情報DB121はタスクを識別するためのタスクIDと、タスクIDに対応する情報処理装置4を識別するための情報IDとの対応関係を記憶するデータベースである。同一の種類のタスクが実行された場合でも、回数によって一又は複数のサービスを割り当てる情報処理装置4が変更される。このため、タスク情報DB121には、タスクID毎に、タスクIDと、サービスを実行する情報処理装置4の情報IDとの対応関係を示すテーブルが記憶されている。各テーブルはタスクID列及び情報ID列を備える。タスクID列には主キーとなるタスクIDが記憶される。タスクID列には例えば「T1−1」等が記憶される。「T1−1」は例えば1回目に実行したタスクT1を示す。情報ID列はさらにl,f,j…列等を備える。l,f,j…列はサービスの名称であり、CPU11はサービス実行順序DB120を参照し、各情報ID列にタスクに対応するサービス名列を記憶する。
l,f,j…列には、各サービス名に対応する情報IDが記憶される。「T1−1」行のf列目には例えば、「A−f−001」が記憶される。「A−f−001」は例えばサービス「f」を実行する情報処理装置「A」を示す1つ目のIDであることを示す。
タスク情報DB121の記憶方法は以下の通りである。CPU11は各情報処理装置4から各情報処理装置4が実行したタスクID及び情報IDを受信する。CPU11は受信したタスクID及び情報IDをタスク情報DB121に記憶する。なお、本実施形態では明細書の枚数の都合上、タスクが3回実行された場合を想定しているが、これに限られるものではない。例えば、所定の時間が経過するまでタスクを繰り返し実行し、実行したタスクID及び実行した情報処理装置4の情報IDをタスク情報DB121に記憶してもよい。あるいは、CPU11はサービスの実行回数が所定の回数を超えるまでタスクを繰り返し実行し、実行したタスクID及び実行した情報処理装置4の情報IDをタスク情報DB121に記憶してもよい。
図6はゲートウェイ送信側時刻DB122に格納されているデータの一例を示す図である。ゲートウェイ送信側時刻DB122はタスクに含まれる複数のサービスの実行を指示するタスク実行命令を送信した送信時刻を記憶するデータベースである。ゲートウェイ送信側時刻DB122はタスクID列、送信先列、サービス列及び送信時刻列を備える。タスクID列には主キーとなるタスクIDが記憶される。送信先列にはタスク実行命令をネットワーク機器3を介して送信する情報処理装置4の名称が記憶される。サービス列には情報処理装置4が最初に実行するサービスの名称が記憶される。送信時刻列にはタスク実行命令を送信した送信時刻が記憶される。送信時刻列には例えば「2015/12/22 00:10:05.319」が記憶される。「2015/12/22 00:10:05.319」は例えば2015年12月22日0時10分5秒319を示す。
ゲートウェイ2は指示命令を送信する毎にタスクID、送信先情報処理装置、サービス及び送信時刻を記憶部22に記憶する。ゲートウェイ2は任意の時間間隔でタスクID、送信先情報処理装置、サービス及び送信時刻を通信部26から情報処理装置1へ送信する。情報処理装置1はタスクID、送信先情報処理装置、サービス及び送信時刻をゲートウェイ2から受信し、受信したタスクID、送信先情報処理装置、サービス及び送信時刻をゲートウェイ送信側時刻DB122に記憶する。
図7は受信側時刻DB123に格納されているデータの一例を示す図である。受信側時刻DB123は一のサービスの実行を指示する指示命令又は指示命令に対する応答を示す応答命令を受信した受信時刻を記憶するデータベースである。受信側時刻DB123は受信ID列、送信元列、サービス列及び受信時刻列を備える。受信ID列には受信時刻を識別するための受信IDが記憶される。送信元列には指示命令又は応答命令を受信した情報処理装置4又はゲートウェイ2の名称が記憶される。サービス列には情報処理装置4が実行するサービスの名称及び応答を待つサービスが存在するか否かを示す応答情報が記憶される。応答情報は例えば、「RES:」である。また、送信元列の「GW」は例えばゲートウェイ2を示す。送信元列の「C」又は「E」等は例えば情報処理装置4C又は4E等を示す。
ネットワーク機器3は指示命令又は応答命令を受信する毎に受信ID、送信元情報処理装置、サービス及び受信時刻を記憶部22に記憶する。ネットワーク機器3は任意の時間間隔で受信ID、送信元情報処理装置、サービス、応答情報及び受信時刻を通信部26で情報処理装置1から受信する。情報処理装置1は受信ID、送信元情報処理装置、サービス、応答情報及び受信時刻を通信部16でネットワーク機器3から受信し、受信した受信ID、送信元情報処理装置、サービス、応答情報及び受信時刻を受信側時刻DB123に記憶する。
図8は送信側時刻DB124に格納されているデータの一例を示す図である。送信側時刻DB124は一のサービスの実行を指示する指示命令又は指示命令に対する応答を示す応答命令を送信した送信時刻を記憶するデータベースである。送信側時刻DB124は送信ID列、送信先列、サービス列及び送信時刻列を備える。送信ID列には送信時刻を識別するための送信IDが記憶される。送信先列には指示命令又は応答命令を送信した情報処理装置4又はゲートウェイ2の名称が記憶される。サービス列には情報処理装置4が実行するサービスの名称及び応答情報が記憶される。
ネットワーク機器3は指示命令又は応答命令を送信する毎に送信ID、送信先情報処理装置、サービス及び送信時刻を記憶部22に記憶する。ネットワーク機器3は任意の時間間隔で送信ID、送信先情報処理装置、サービス及び送信時刻を通信部26から情報処理装置1へ送信する。情報処理装置1は送信ID、送信先情報処理装置、サービス、応答情報及び送信時刻をネットワーク機器3から受信し、受信した送信ID、送信先情報処理装置、サービス、応答情報及び送信時刻を送信側時刻DB124に記憶する。
図9はサービスグループ情報DB125に格納されているデータの一例を示す図である。サービスグループ情報DB125は連続して同一の情報処理装置4で実行したサービスをグループ化したグループとタスクとの対応関係を記憶するためのデータベースである。サービスグループ情報DB125はタスクID列及び処理順序列等を備える。タスクID列には主キーとなるタスクIDが記憶される。処理順序列はさらに1列、2列、3列等を備える。処理順序列内の各列の名称はサービスの処理順序を示しており、各列にはグループが記憶される。グループは例えば各情報処理装置4で連続して処理を実行した一又は複数のサービスをグループ化した分類である。例えば、タスク「T1−1」の1列には情報処理装置「A」で連続して処理を実行したサービス「l,f,j」が記憶される。タスク「T1−1」の2列には情報処理装置「B」で連続して処理を実行したサービス「k,e,f」が記憶される。タスク「T1−2」の1列には情報処理装置「A」で処理を実行したサービス「f」が記憶される。サービスグループ情報DB125の記憶方法については後述する。
図10は応答待ちのサービスを加えたサービスグループ情報DB125に格納されているデータの一例を示す図である。例えば、タスク「T1−2」の処理順序列の3列には「j,k,e,(4)」が記憶される。「j,k,e,(4)」は例えばサービスeが(4)、すなわち処理順序列の4列に記憶されたサービスfからの応答を待つことを示す。タスク「T1−3」の処理順序列の3列には「j,k,(4)」が記憶される。「j,k,(4)」は例えばサービスkが(4)、すなわち処理順序列の4列に記憶されたサービスe及び(5)からの応答を待つことを示す。タスク「T1−3」の処理順序列の4列には「e,(5)」が記憶される。「e,(5)」は例えばサービスeが(5)、すなわち処理順序列の5列に記憶されたサービスfからの応答を待つことを示す。応答待ちのサービスを加えたサービスグループ情報DB125の記憶方法については後述する。
図11は処理時間DB126に格納されているデータの一例を示す図である。処理時間DB126は実行された複数のサービスの合計処理時間をグループ毎に記憶したデータベースである。処理時間の単位はミリ秒である。処理時間DB126の各列はサービスグループ情報DB125の各列と同一であるため、説明を省略する。また、処理時間DB126の各列はサービスグループ情報DB125の各列と対応している。例えば、タスク「T1−1」の1列にはサービス「l,f,j」のグループの処理時間が160ミリ秒であることを示す。処理時間DB126の記憶方法については後述する。
図12は応答待ち時間を除外した処理時間DB126に格納されているデータの一例を示す図である。例えば、タスク「T2−2」の4列には20ミリ秒が記憶されている。これは図11に示すタスクID「T2−2」の4列の処理時間140ミリ秒から応答待ちをしているタスクID「T2−2」の5列の処理時間120ミリ秒を減算した値である。応答待ち時間を除外した処理時間DB126の記憶方法については後述する。
図13はサービス処理時間DB127に格納されているデータの一例を示す図である。サービス処理時間DB127はサービス毎の処理時間を示すサービス処理時間を示したデータベースである。サービス処理時間DB127はタスクID列及びサービス列を備える。タスクID列には主キーとなるタスクIDが記憶される。サービス列はさらにタスクIDに含まれるサービスであるl,f,j列等を備える。l,f,j列等にはサービス処理時間が記憶される。例えば、タスク「T1−1」のf列には「53.33」が記憶される。すなわち、タスク「T1−1」のサービスfのサービス処理時間が53.33ミリ秒であることを示す。サービス処理時間DB127の記憶方法については後述する。
図14は平均処理時間DB128に格納されているデータの一例を示す図である。平均処理時間DB128は各タスクのサービス処理時間を平均した平均処理時間が記憶されたデータベースである。平均処理時間DB128はサービスa、e、f列等を備える。サービスa、e、f列等にはサービスa、e又はfに対応する平均処理時間が記憶される。例えば、サービスa列には「50.00」が記憶される。すなわち、サービスaの平均処理時間が50.00ミリ秒であることを示す。平均処理時間DB128の記憶方法については後述する。
以下、図9に示すサービスグループ情報DB125の記憶方法について説明する。CPU11はサービス実行順序DB120、タスク情報DB121、ゲートウェイ送信側時刻DB122、受信側時刻DB123及び送信側時刻DB124を記憶部12から読み込む。CPU11は図5に示すタスク情報DB121からタスクID「T1−1」を抽出する。CPU11は抽出したタスクID「T1−1」に対応するサービス「l」をタスク情報DB121から抽出する。
タスク情報DB121におけるタスクID「T1−1」のサービス「l」列の情報IDが「A−l−001」に存在するため、CPU11はサービス「l」を実行する情報処理装置「A」を抽出する。CPU11は抽出したサービス「l」の次の列のサービス「f」を抽出する。タスクID「T1−1」のサービス「l」列の情報IDが「A−f−001」に存在するため、CPU11は抽出したサービス「f」を実行する情報処理装置「A」を抽出する。CPU11は抽出したサービス「l」及びサービス「f」の情報処理装置4が同一であるか否かを判定する。
サービス「l」及びサービス「f」の情報処理装置4が「A」であるため、CPU11は情報処理装置4が同一であると判定する。CPU11は抽出したサービス「l」及びサービス「f」をグループ化する。次にCPU11は抽出したサービス「f」の次の列のサービス「j」を抽出する。タスクID「T1−1」の最初のサービス「f」列の情報IDが「A−j−001」に存在するため、CPU11は抽出したサービス「j」を実行する情報処理装置「A」を抽出する。CPU11は抽出したサービス「f」及びサービス「j」の情報処理装置4が同一であるか否かを判定する。CPU11は抽出したサービス「l」、「f」及び「j」をグループ化する。図9に示すように、CPU11はグループ化したサービス「l, f, j」をサービスグループ情報DB125の「T1−1」行の1列に記憶する。
タスク情報DB121におけるタスクID「T1−1」のサービス「k」列の情報IDが「B−k−001」に存在するため、CPU11はサービス「k」を実行する情報処理装置「B」を抽出する。CPU11は抽出したサービス「j」及びサービス「k」の情報処理装置4が同一であるか否かを判定する。CPU11は抽出したサービス「j」及びサービス「k」の情報処理装置4が同一でないと判定し、「T1−1」行の1列にサービス「k」を記憶しない。
CPU11は抽出したサービス「k」の次の列のサービス「e」を抽出する。タスクID「T1−1」のサービス「e」列の情報IDが「B−e−001」に存在するため、CPU11は抽出したサービス「e」を実行する情報処理装置「B」を抽出する。CPU11は抽出したサービス「k」及びサービス「e」の情報処理装置4が同一であるか否かを判定する。
サービス「k」及びサービス「e」の情報処理装置4が「B」であるため、CPU11は情報処理装置4が同一であると判定する。CPU11は抽出したサービス「k」及びサービス「e」をグループ化する。次にCPU11は抽出したサービス「e」の次の列のサービス「f」を抽出する。タスクID「T1−1」の最後のサービス「f」列の情報IDが「B−f−001」に存在するため、CPU11は抽出したサービス「f」を実行する情報処理装置「B」を抽出する。CPU11は抽出したサービス「e」及びサービス「f」の情報処理装置4が同一であるか否かを判定する。CPU11は抽出したサービス「k」、「e」及び「f」をグループ化する。CPU11はタスク情報DB121の全てのタスクIDに対して同様の処理を行う。
以下、図10の応答待ちのサービスを加えたサービスグループ情報DB125の記憶方法について説明する。CPU11はタスク情報DB121からタスクID「T1−1」を抽出する。CPU11は抽出したタスクID「T1−1」に対応するサービス「l」をタスク情報DB121から抽出する。CPU11はゲートウェイ送信側時刻DB122及び受信側時刻DB123を参照する。CPU11は図6に示すゲートウェイ送信側時刻DB122のタスクID「T1−1」の送信時刻「2015/12/22 00:10:05.319」以降で受信側時刻DB123の最も早い時刻を特定する。すなわちCPU11は図7に示す受信側時刻DB123の1行目の受信時刻「2015/12/22 00:10:05.324」を特定する。CPU11は受信時刻「2015/12/22 00:10:05.324」に対応するサービスに「RES」が含まれていないため、サービス「l」が応答待ちを行わないと判定する。CPU11はサービスグループ情報DB125のタスクID「T1−1」の1列をそのままにする。CPU11はタスク情報DB121でタスクID「T1−1」に対応する全てのサービスを抽出し、応答待ちが存在するか否かを判定する。
CPU11はタスク情報DB121からタスクID「T2−2」を抽出する。CPU11は抽出したタスクID「T2−2」に対応する4列目のサービス「f」をタスク情報DB121から抽出する。CPU11はゲートウェイ送信側時刻DB122及び受信側時刻DB123を参照する。CPU11は図6に示すゲートウェイ送信側時刻DB122のタスクID「T2−2」の送信時刻「2015/12/22 00:10:13.408」以降で最も送信時刻が早く、サービスが「f」である送信時刻を特定する。すなわちCPU11は図7に示す受信側時刻DB123の4列目の受信時刻「2015/12/22 00:10:13.576」を特定する。CPU11は受信時刻「2015/12/22 00:10:13.576」に対応するサービスに「RES」が含まれているため、サービス「f」が応答待ちを行うと判定する。
CPU11はサービスグループ情報DB125を参照する。CPU11はサービス「f」が4列にあり、サービス「f」の次のサービス「g」が5列にあるため、サービス「f」とサービス「g」とが別のグループであると判定する。CPU11はサービスグループ情報DB125のタスクID「T2−2」の4列のサービス「f」の隣に(5)を記憶する。CPU11はタスク情報DB121の全てのタスクIDに対して同様の処理を行う。
以下、図11に示す処理時間DB126の記憶方法について説明する。まず、応答待ちを含まない場合の処理時間の算出方法を説明する。CPU11はサービスグループ情報DB125からタスクID「T1−1」を抽出する。CPU11は抽出したタスクID「T1−1」に対応する1列をサービスグループ情報DB125から抽出する。
CPU11は図10に示すサービスグループ情報DB125を参照し、抽出したグループ1列の内の最初のサービス「l」を特定する。CPU11はゲートウェイ送信側時刻DB122及び受信側時刻DB123を参照する。CPU11は送信時刻「2015/12/22 00:10:05.319」以降で受信側時刻DB123の最も早い時刻を特定する。すなわちCPU11は受信側時刻DB123の1行目の受信時刻「2015/12/22 00:10:05.324」を特定する。CPU11はサービス「l」を送信した送信時刻「2015/12/22 00:10:05.324」を抽出する。
CPU11応答待ちを含むグループの次のサービスを特定する。すなわち、CPU11はグループ2列の内の最初のサービス「k」を特定する。CPU11は送信側時刻DB124を参照し、サービス「k」を受信した送信時刻「2015/12/22 00:10:05.484」を抽出する。
CPU11は送信時刻「2015/12/22 00:10:05.484」から受信時刻「2015/12/22 00:10:05.324」を減算し、処理時間「160ミリ秒」を算出する。CPU11は算出した処理時間「160ミリ秒」を処理時間DB126の「T1−1」行の1列目に記憶する。CPU11はサービスグループ情報DB125でタスクID「T1−1」に対応する全てのグループを抽出し、処理時間を算出し、算出した処理時間を処理時間DB126に記憶する。
次に応答待ちを含む場合の処理時間の算出方法を説明する。CPU11は図10に示すサービスグループ情報DB125からタスクID「T2−2」を抽出する。CPU11は抽出したタスクID「T2−2」に対応する3列をサービスグループ情報DB125から抽出する。
CPU11は応答待ちを行うサービスの次のサービスを特定する。すなわち、抽出した3列の内の最初のサービス「e」の次に(4)が存在するため、4列の最初のサービス「f」を特定する。CPU11はサービス「f」に対する指示命令を受信した受信時刻を抽出する。すなわち、CPU11は受信側時刻DB123の3行目のサービス「f」に対する指示命令を受信した受信時刻「2015/12/22 00:10:06.450」を抽出する。
次にCPU11は応答待ちを行うサービスを特定する。すなわち、CPU11は(4)の前にあるサービス「e」を特定する。CPU11は「RES:e」へ応答命令を送信した送信時刻を抽出する。すなわち、CPU11は送信側時刻DB124の4行目のサービス「RES:e」に対する応答命令を送信した送信時刻「2015/12/22 00:10:06.590」を抽出する。
CPU11は送信時刻「2015/12/22 00:10:06.590」から受信時刻「2015/12/22 00:10:06.450」を減算し、処理時間「140ミリ秒」を算出する。CPU11は算出した処理時間「140ミリ秒」を処理時間DB126の「T2−2」行の4列目に記憶する。CPU11はサービスグループ情報DB125でタスクID「T2−2」に対応する全てのグループを抽出し、処理時間を算出し、算出した処理時間を処理時間DB126に記憶する。CPU11はサービスグループ情報DB125の全てのタスクIDに対して同様の処理を行う。
以下、図12に示す応答待ち時間を除外した処理時間DB126の記憶方法について説明する。例えば、CPU11はサービスグループ情報DB125からタスクID「T2−2」を抽出する。CPU11は抽出したタスクID「T2−2」に対応する4列をサービスグループ情報DB125から抽出する。
CPU11はサービスグループ情報DB125を参照し、抽出した4列に応答待ちを行うサービスが含まれるか否かを判定する。CPU11は抽出した4列に応答待ちを行うサービスが含まれると判定する。CPU11は処理時間DB126を参照し、抽出した4列の処理時間「140ミリ秒」からグループ5列の応答待ちの処理時間「120ミリ秒」を減算する。
CPU11は減算した処理時間「20ミリ秒」を処理時間DB126の4列に記憶する。CPU11はサービスグループ情報DB125でタスクID「T2−2」に対応する全てのグループを抽出したか否かを判定する。CPU11はサービスグループ情報DB125の全てのタスクIDに対して同様の処理を行う。
以下、図13に示すサービス処理時間DB127の記憶方法について説明する。CPU11は処理時間DB126からタスクID「T1−1」を抽出する。CPU11は抽出したタスクID「T1−1」に対応する1列を処理時間DB126から抽出する。
CPU11はサービスグループ情報DB125及び処理時間DB126を参照する。CPU11は処理時間DB126の「T1−1」の1列の処理時間「160ミリ秒」をサービスグループ情報DB125の「T1−1」の1列に含まれるサービス「l,j,k」の数3で除算することでサービス処理時間「53.3ミリ秒」を算出する。CPU11は算出したサービス処理時間「53.3ミリ秒」をサービス「l,j,k」に夫々割り振る。CPU11は算出したサービス処理時間「53.3ミリ秒」をサービス処理時間DB127におけるサービス「l,j,k」の夫々の列に記憶する。
CPU11はサービスグループ情報DB125のタスクID「T1−1」の全てのグループに対して同様の処理を行う。CPU11はサービスグループ情報DB125の全てのタスクIDに対して同様の処理を行う。
以下、図14に示す平均処理時間DB128の記憶方法について説明する。CPU11はサービス処理時間DB127からサービス「a」を抽出する。CPU11は抽出したサービス「a」に対応するタスク「T2−1」、「T2−2」及び「T2−3」のサービス処理時間「50.00」、「50.00」及び「50.00」の平均を示す平均処理時間「50.00」を算出する。CPU11は算出した平均処理時間「50.00」を平均処理時間DB128のサービス「a」列に記憶する。
CPU11はサービス処理時間DB127からサービス「e」を抽出する。CPU11は抽出したサービス「e」に対応するタスク「T2−1」、「T2−2」及び「T2−3」のサービス処理時間「75.00」、「223.33」及び「60.00」の平均を示す平均処理時間「92.50」を算出する。CPU11は算出した平均処理時間「92.50」を平均処理時間DB128のサービス「e」列に記憶する。CPU11はサービス処理時間DB127の全てのサービスに対して同様の処理を行う。
以下、ボトルネック候補を算出する方法について説明する。CPU11は平均処理時間DB128を参照し、各サービスの平均処理時間の内、最も長い平均処理時間及び平均処理時間に対応するサービスを抽出する。すなわち、CPU11は平均処理時間「407.77ミリ秒」及びサービスhを抽出する。図15は平均処理時間及びサービスを表示した表示例を説明する説明図である。図15に示すようにCPU11は抽出した平均処理時間「407.77ミリ秒」及びサービスhを表示部15に表示し、処理を終了する。
図16は本実施形態におけるゲートウェイ送信側時刻DB122、ルータ送信側時刻DB123及びルータ受信側時刻DB124の記憶方法の処理手順を示したフローチャートである。CPU11はタスクID、送信先情報処理装置、実行するサービス及び送信時刻をゲートウェイ2から受信する(ステップS01)。CPU11は受信したタスクID、送信先情報処理装置、サービス及び送信時刻をゲートウェイ送信側時刻DB122に記憶する(ステップS02)。
CPU11は受信ID、送信元情報処理装置、サービス、応答情報及び受信時刻をネットワーク機器3から受信する(ステップS03)。CPU11は受信した受信ID、送信元情報処理装置、サービス、応答情報及び受信時刻を受信側時刻DB123に記憶する(ステップS04)。
CPU11は送信ID、送信先情報処理装置、サービス、応答情報及び送信時刻をネットワーク機器3から受信する(ステップS05)。CPU11は受信した送信ID、送信先情報処理装置、サービス、応答情報及び送信時刻を送信側時刻DB124に記憶し(ステップS06)、処理を終了する。
図17〜22は本実施形態における情報処理システムの処理手順を示したフローチャートである。CPU11はサービス実行順序DB120、タスク情報DB121、ゲートウェイ送信側時刻DB122、受信側時刻DB123及び送信側時刻DB124を記憶部12から読み込む(ステップS11)。CPU11はタスク情報DB121から一のタスクIDを抽出する(ステップS12)。CPU11は抽出したタスクIDに対応する一のサービスをタスク情報DB121から抽出する(ステップS13)。
CPU11は抽出したサービスを実行する情報処理装置4をタスク情報DB121で抽出する(ステップS14)。CPU11はサービス実行順序DB120を参照し、抽出したサービスの次のサービスを抽出する(ステップS15)。CPU11は抽出したサービスを実行する情報処理装置4をタスク情報DB121で抽出する(ステップS16)。CPU11は抽出した一のサービスと一のサービスの次に実行するサービスの情報処理装置4が同一であるか否かを判定する(ステップS17)。
CPU11は情報処理装置4が同一でないと判定した場合(ステップS17:NO)、ステップS19に処理を移す。CPU11は情報処理装置4が同一であると判定した場合(ステップS17:YES)、抽出した2つのサービスをグループ化する(ステップS18)。グループ化したサービスをサービスグループ情報DB125に記憶する(ステップS19)。CPU11はタスク情報DB121でタスクIDに対応する全てのサービスを抽出したか否かを判定する(ステップS20)。
CPU11は全てのサービスを抽出しなかったと判定した場合(ステップS20:NO)、処理をステップS13に移し、処理を繰り返す。CPU11は全てのサービスを抽出したと判定した場合(ステップS20:YES)、全てのタスクIDを抽出したか否かを判定する(ステップS21)。CPU11は全てのタスクIDを抽出しなかったと判定した場合(ステップS21:NO)、処理をステップS12に移し、処理を繰り返す。CPU11は全てのタスクIDを抽出したと判定した場合(ステップS21:YES)、CPU11はタスク情報DB121から一のタスクIDを抽出する(ステップS22)。
CPU11は抽出したタスクIDに対応する一のサービスをタスク情報DB121から抽出する(ステップS23)。CPU11は受信側時刻DB123又は送信側時刻DB124を参照し、抽出したサービスが応答待ちを行うか否かを判定する(ステップS24)。CPU11は抽出したサービスが応答待ちを行わないと判定した場合(ステップS24:NO)、処理をステップS27に移す。
CPU11は抽出したサービスが応答待ちを行うと判定した場合(ステップS24:YES)、サービスグループ情報DB125を参照し、抽出したサービスの次に実行するサービスが別のグループであるか否かを判定する(ステップS25)。CPU11は抽出したサービスの次に実行するサービスが別のグループでないと判定した場合(ステップS25:NO)、処理をステップS27に移す。
CPU11は抽出したサービスの次に実行するサービスが別のグループであると判定した場合(ステップS25:YES)、応答待ちのグループと対応づけてサービスをサービスグループ情報DB125に記憶する(ステップS26)。CPU11はタスク情報DB121でタスクIDに対応する全てのサービスを抽出したか否かを判定する(ステップS27)。
CPU11は全てのサービスを抽出しなかったと判定した場合(ステップS27:NO)、処理をステップS23に移し、処理を繰り返す。CPU11は全てのサービスを抽出したと判定した場合(ステップS27:YES)、全てのタスクIDを抽出したか否かを判定する(ステップS28)。CPU11は全てのタスクIDを抽出しなかったと判定した場合(ステップS28:NO)、処理をステップS22に移し、処理を繰り返す。CPU11は全てのタスクIDを抽出したと判定した場合(ステップS28:YES)、次の処理を行う。CPU11はサービスグループ情報DB125から一のタスクIDを抽出する(ステップS29)。CPU11は抽出したタスクIDに対応する一のグループをサービスグループ情報DB125から抽出する(ステップS30)。
CPU11は抽出したグループに応答待ちが存在するか否かを判定する(ステップS31)。CPU11は抽出したグループに応答待ちがないと判定した場合(ステップS31:NO)、サービスグループ情報DB125でグループの最初のサービスを特定する(ステップS32)。CPU11は受信側DB123を参照し、特定したサービスの受信時刻を抽出する(ステップS33)。CPU11はサービスグループ情報DB125で応答待ちを含むグループの次のサービスを特定する(ステップS34)。CPU11は送信側DB124を参照し、特定したサービスの送信時刻を抽出する(ステップS35)。
CPU11は抽出したグループに応答待ちがあると判定した場合(ステップS31:YES)、サービスグループ情報DB125で応答待ちを行うサービスの次のサービスを特定する(ステップS36)。すなわちCPU11はグループ内のサービスの実行を指示する指示命令を特定する。CPU11は受信側DB123を参照し、特定したサービスの受信時刻を抽出する(ステップS37)。CPU11はサービスグループ情報DB125で応答待ちを行うサービスを特定する(ステップS38)。すなわちCPU11はサービスグループ情報DB125で応答命令の送信先のサービスを特定する。CPU11は送信側DB124を参照し、特定したサービスへの送信時刻を抽出する(ステップS39)。CPU11は受信時刻から送信時刻を減算することでグループ毎の処理時間を算出し、算出した処理時間を処理時間DB126に記憶する(ステップS40)。
CPU11は全てのグループを抽出したか否かを判定する(ステップS41)。CPU11は全てのグループを抽出しなかったと判定した場合(ステップS41:NO)、処理をステップS30に移し、処理を繰り返す。CPU11は全てのグループを抽出したと判定した場合(ステップS41:YES)、全てのタスクIDを抽出したか否かを判定する(ステップS42)。CPU11は全てのタスクIDを抽出しなかったと判定した場合(ステップS42:NO)、処理をステップS29に移し、処理を繰り返す。CPU11は全てのタスクIDを抽出したと判定した場合(ステップS42:YES)、サービスグループ情報DB125から一のタスクIDを抽出する(ステップS43)。CPU11は抽出したタスクIDに対応する一のグループをサービスグループ情報DB125から抽出する(ステップS44)。
CPU11はサービスグループ情報DB125を参照し、抽出したグループに応答待ちを行うサービスが含まれるか否かを判定する(ステップS45)。CPU11は抽出したグループに応答待ちを行うサービスが含まれないと判定した場合(ステップS45:NO)、処理をステップS48に移す。CPU11は抽出したグループに応答待ちを行うサービスが含まれると判定した場合(ステップS45:YES)、抽出したグループの処理時間から応答待ちの処理時間を減算する(ステップS46)。
CPU11は減算した処理時間を処理時間DB126に記憶する(ステップS47)。CPU11はサービスグループ情報DB125でタスクIDに対応する全てのサービスを抽出したか否かを判定する(ステップS48)。CPU11は全てのグループを抽出しなかったと判定した場合(ステップS48:NO)、処理をステップS44に移し、処理を繰り返す。CPU11は全てのグループを抽出したと判定した場合(ステップS48:YES)、全てのタスクIDを抽出したか否かを判定する(ステップS49)。CPU11は全てのタスクIDを抽出しなかったと判定した場合(ステップS49:NO)、処理をステップS43に移し、処理を繰り返す。CPU11は全てのタスクIDを抽出したと判定した場合(ステップS49:YES)、処理時間DB126から一のタスクIDを抽出する(ステップS50)。CPU11は抽出したタスクIDに対応するグループを処理時間DB126から抽出する(ステップS51)。
CPU11はサービスグループ情報DB125及び処理時間DB126を参照し、グループの処理時間をグループに含まれるサービスの数で除算する(ステップS52)。CPU11は除算した処理時間を各サービスに割り振ったサービス処理時間を算出する(ステップS53)。CPU11は算出したサービス処理時間をサービス処理時間DB127に記憶する(ステップS54)。
CPU11はサービスグループ情報DB125でタスクIDに対応する全てのグループを抽出したか否かを判定する(ステップS55)。CPU11は全てのグループを抽出しなかったと判定した場合(ステップS55:NO)、処理をステップS51に移し、処理を繰り返す。CPU11は全てのグループを抽出したと判定した場合(ステップS55:YES)、全てのタスクIDを抽出したか否かを判定する(ステップS56)。CPU11は全てのタスクIDを抽出しなかったと判定した場合(ステップS56:NO)、処理をステップS50に移し、処理を繰り返す。CPU11は全てのタスクIDを抽出したと判定した場合(ステップS56:YES)、サービス処理時間DB127から一のサービスを抽出する(ステップS57)。
CPU11は抽出したサービスに対応する各タスクのサービス処理時間の平均を示す平均処理時間を算出する(ステップS58)。CPU11は算出した平均処理時間を平均処理時間DB128に記憶する(ステップS59)。CPU11はサービス処理時間DB127の全てのサービスを抽出したか否かを判定する(ステップS60)。
CPU11はサービス処理時間DB127の全てのサービスを抽出しなかったと判定した場合(ステップS60:NO)、処理をステップS57に移し、処理を繰り返す。CPU11はサービス処理時間DB127の全てのサービスを抽出したと判定した場合(ステップS60:YES)、平均処理時間の中から最も長い平均処理時間及び平均処理時間に対応するサービスを抽出する(ステップS61)。CPU11は抽出した平均処理時間及びボトルネック候補となるサービスを表示部15に出力し(ステップS62)、処理を終了する。
一側面によれば、容易にサービスの実行の障害となるボトルネック候補を特定することができる。
一側面によれば、処理時間から応答待ちのサービスの処理時間を減算することでより正確にサービス処理時間を算出することができる。
一側面によれば、受信時刻から送信時刻を減算することで従来より高速に処理時間を算出することができる。
一側面によれば、グループ毎に対応する情報処理装置4の処理時間を算出することで、情報処理装置4毎に対応する従来より容易にサービス処理時間を算出することができる。
一側面によれば、算出した平均処理時間の内、最も長い平均処理時間を抽出することで容易にボトルネック候補を特定することができる。
なお、本実施形態におけるCPU11は平均処理時間を算出し、算出した平均処理時間の内、最も長い平均処理時間を抽出したが、これに限られるものではない。例えば、CPU11はサービス毎のサービス処理時間の合計時間を算出し、算出した合計値の内、最も長い合計時間を抽出してもよい。
なお、本実施形態ではネットワーク機器3からサービス、送信時刻及び受信時刻等の情報を受信したが、情報処理装置4からサービス、送信時刻及び受信時刻等の情報を受信してもよい。本実施形態ではゲートウェイ2の送信時刻を用いたが、情報処理装置1の送信時刻及び受信時刻等の情報を用いてもよい。
実施の形態2
実施の形態2は所定の閾値以上の平均処理時間を抽出する実施の形態に関する。以下、特に説明する構成、作用以外の構成及び作用は実施の形態1と同等であり、簡潔のため記載を省略する。本実施形態を図14を参照しつつ説明する。CPU11は所定の閾値以上の平均処理時間及び平均処理時間に対応するサービスを抽出する。所定の閾値は例えば情報処理装置1の管理者が任意に入力部14で入力した値等であり、本実施形態では100ミリ秒とする。
CPU11は「120.00ミリ秒」、「134.44ミリ秒」及び「407.77ミリ秒」を抽出する。CPU11はサービスg、h及びiを抽出する。CPU11は「120.00ミリ秒」、「134.44ミリ秒」及び「407.77ミリ秒」、サービスg、h及びiを表示部15に出力する。
図23は本実施形態における情報処理システムの処理手順を示したフローチャートである。ステップS11〜S62の処理は上述の実施の形態1に係る情報処理システムと同様であるため、簡潔のため説明を省略する。CPU11はステップS60がYESであった場合、所定の閾値以上の平均処理時間及び平均処理時間に対応するサービスを抽出する(ステップS71)。CPU11は抽出した平均処理時間及びサービスを表示部15に出力し(ステップS62)、処理を終了する。
一側面によれば、所定の閾値以上の平均処理時間を抽出することでボトルネック候補が複数ある場合にも対応することができる。
なお、本実施形態では所定の閾値以上の平均処理時間を抽出したが、所定の閾値以上のサービス処理時間を抽出してもよい。
実施の形態3
以下本発明の実施の形態3をその実施の形態を示す図面に基づいて詳述する。図24は情報処理装置1のハードウェア群を示すブロック図である。以下、特に説明する構成、作用以外の構成及び作用は実施の形態1と同等であり、簡潔のため記載を省略する。図24に示す情報処理装置1は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体10A又は半導体メモリ10Bから読み取り、あるいは、通信網Nを介して他のサーバ(図示せず)からダウンロードする。当該プログラムは、プログラム12Pとしてインストールされ、記憶部12にロードして実行される。これより上述した情報処理装置1として機能する。
情報処理装置1を動作させるためのプログラムは、ディスクドライブ等の読み取り部111にCD−ROM、DVD(Digital Versatile Disc)ディスク、メモリーカード、又はUSB(Universal Serial Bus)メモリ等の可搬型記録媒体10Aを読み取らせて記憶部12に記憶してもよい。また当該プログラムを記憶したフラッシュメモリ等の半導体メモリ10Bを情報処理装置1内に実装しても良い。通信部16は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して他のサーバに接続されている。当該プログラムは、通信部16によりインターネット等の通信網Nを介して接続される他のサーバ(図示せず)からダウンロードすることも可能である。以下にその内容を説明する。
図25は情報処理装置1の機能ブロック図である。CPU11がプログラム12Pを実行することにより、情報処理装置1は以下のように動作する。算出部11Aは複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出する。時間記憶部11Bは算出部11Aで算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶する。時間算出部11Cは前記タスク毎のサービス処理時間を平均した平均処理時間を算出する。出力部11Dは該時間算出部11Cで算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する。
以上の実施の形態に関し、更に以下の付記を開示する。
(付記1)
複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出し、
算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶し、
前記タスク毎のサービス処理時間を平均した平均処理時間を算出し、
算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する
処理をコンピュータに実行させるプログラム。
(付記2)
前記グループ毎の処理時間を算出した後、サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
前記応答を待つサービスが存在すると判定した場合、前記応答を待つサービスを含むグループの処理時間から前記応答を送信するサービスを含むグループの処理時間を減算する
付記1に記載のプログラム。
(付記3)
サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
前記応答を待つサービスが存在しないと判定した場合、前記グループの最初のサービスの実行を指示する指示命令を前記情報処理装置に接続された中継装置が受信した受信時刻及び前記グループの次に実行されるサービスの実行を指示する指示命令を前記中継装置が送信した送信時刻を前記中継装置から受信し、
前記送信時刻から前記受信時刻を減算してグループ毎の処理時間を算出する
付記1又は付記2に記載のプログラム。
(付記4)
サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
前記応答を待つサービスが存在すると判定した場合、前記グループ内のサービスの実行を指示する指示命令を前記情報処理装置に接続された中継装置が受信した受信時刻及び前記指示命令に対する応答を示す応答命令を前記中継装置が送信した送信時刻を前記中継装置から受信し、
前記送信時刻から前記受信時刻を減算してグループ毎の処理時間を算出する
付記1又は付記2に記載のプログラム。
(付記5)
算出した平均処理時間に基づいてボトルネック候補となるサービス及び該サービスに対応する平均処理時間を出力する
付記1から付記4のいずれか1つに記載のプログラム。
(付記6)
算出した平均処理時間の内、最も長い平均処理時間のサービスを出力する
付記1から付記5のいずれか1つに記載のプログラム。
(付記7)
算出した平均処理時間の内、所定の閾値以上の平均処理時間のサービスを出力する
付記1から付記6のいずれか1つに記載のプログラム。
(付記8)
複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出する算出部と、
該算出部で算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶する時間記憶部と、
前記タスク毎のサービス処理時間を平均した平均処理時間を算出する時間算出部と、
該時間算出部で算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する出力部と
を備えるコンピュータ。
(付記9)
複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出し、
算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶し、
前記タスク毎のサービス処理時間を平均した平均処理時間を算出し、
算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する
コンピュータを用いた情報処理方法。
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。また、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
1 コンピュータ(情報処理装置)
11A 算出部
11B 時間記憶部
11C 時間算出部
11D 出力部
12P プログラム
2 ゲートウェイ
3 ネットワーク機器(中継装置)
4 情報処理装置

Claims (6)

  1. 複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出し、
    算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶し、
    前記タスク毎のサービス処理時間を平均した平均処理時間を算出し、
    算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する
    処理をコンピュータに実行させるプログラム。
  2. 前記グループ毎の処理時間を算出した後、サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
    前記応答を待つサービスが存在すると判定した場合、前記応答を待つサービスを含むグループの処理時間から前記応答を送信するサービスを含むグループの処理時間を減算する
    請求項1に記載のプログラム。
  3. サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
    前記応答を待つサービスが存在しないと判定した場合、前記グループの最初のサービスの実行を指示する指示命令を前記情報処理装置に接続された中継装置が受信した受信時刻及び前記グループの次に実行されるサービスの実行を指示する指示命令を前記中継装置が送信した送信時刻を前記中継装置から受信し、
    前記送信時刻から前記受信時刻を減算してグループ毎の処理時間を算出する
    請求項1又は請求項2に記載のプログラム。
  4. サービスが応答を待つか否かを示す応答情報に基づいて前記応答を待つサービスが存在するか否かを判定し、
    前記応答を待つサービスが存在すると判定した場合、前記グループ内のサービスの実行を指示する指示命令を前記情報処理装置に接続された中継装置が受信した受信時刻及び前記指示命令に対する応答を示す応答命令を前記中継装置が送信した送信時刻を前記中継装置から受信し、
    前記送信時刻から前記受信時刻を減算してグループ毎の処理時間を算出する
    請求項1又は請求項2に記載のプログラム。
  5. 複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出する算出部と、
    該算出部で算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶する時間記憶部と、
    前記タスク毎のサービス処理時間を平均した平均処理時間を算出する時間算出部と、
    該時間算出部で算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する出力部と
    を備えるコンピュータ。
  6. 複数のタスク夫々に含まれる複数のサービスの処理に関する通信時刻及び該サービスを実行する各情報処理装置の情報に基づいて、連続して同一の情報処理装置で実行したサービスをグループ化したグループ毎の処理時間を前記タスク毎に算出し、
    算出したグループ毎の処理時間を該グループに含まれるサービスの数で除算したサービス処理時間を前記タスク毎に記憶し、
    前記タスク毎のサービス処理時間を平均した平均処理時間を算出し、
    算出した平均処理時間に基づいてボトルネック候補となるサービスを出力する
    処理をコンピュータが実行する情報処理方法。
JP2016143723A 2016-07-21 2016-07-21 プログラム、コンピュータ及び情報処理方法 Active JP6766495B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016143723A JP6766495B2 (ja) 2016-07-21 2016-07-21 プログラム、コンピュータ及び情報処理方法
US15/647,295 US10713142B2 (en) 2016-07-21 2017-07-12 Method and device for identifying bottleneck candidate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016143723A JP6766495B2 (ja) 2016-07-21 2016-07-21 プログラム、コンピュータ及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2018013994A JP2018013994A (ja) 2018-01-25
JP6766495B2 true JP6766495B2 (ja) 2020-10-14

Family

ID=60988021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016143723A Active JP6766495B2 (ja) 2016-07-21 2016-07-21 プログラム、コンピュータ及び情報処理方法

Country Status (2)

Country Link
US (1) US10713142B2 (ja)
JP (1) JP6766495B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10296380B1 (en) * 2016-09-19 2019-05-21 Amazon Technologies, Inc. Distributed computing with adaptive parallelization
US10698756B1 (en) * 2017-12-15 2020-06-30 Palantir Technologies Inc. Linking related events for various devices and services in computer log files on a centralized server
US11204806B2 (en) * 2018-06-03 2021-12-21 Apple Inc. Systems and methods for user adaptive resource management

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225002A (ja) * 1992-02-12 1993-09-03 Mitsubishi Electric Corp プログラム処理時間測定装置
CA2385173A1 (en) * 1999-09-17 2001-03-29 Nature Technology Co., Ltd. Image capturing system, image processing system, and camera
US20020091991A1 (en) * 2000-05-11 2002-07-11 Castro Juan Carlos Unified real-time microprocessor computer
US7185192B1 (en) * 2000-07-07 2007-02-27 Emc Corporation Methods and apparatus for controlling access to a resource
JP4162183B2 (ja) * 2001-11-12 2008-10-08 株式会社日立製作所 データベース管理システムの静的な情報を取得する手段を有する記憶装置
JP2004302751A (ja) * 2003-03-31 2004-10-28 Hitachi Ltd 計算機システムの性能管理方法、および、記憶装置の性能を管理する計算機システム
US8234395B2 (en) * 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US7812844B2 (en) * 2004-01-28 2010-10-12 Lucid Information Technology, Ltd. PC-based computing system employing a silicon chip having a routing unit and a control unit for parallelizing multiple GPU-driven pipeline cores according to the object division mode of parallel operation during the running of a graphics application
US20050108444A1 (en) * 2003-11-19 2005-05-19 Flauaus Gary R. Method of detecting and monitoring fabric congestion
US7836181B2 (en) * 2004-09-21 2010-11-16 Alcatel-Lucent Usa Inc. Fairness and load balancing in wireless LANs using association control
JP4116050B2 (ja) * 2006-08-10 2008-07-09 株式会社コナミデジタルエンタテインメント 通信装置、通信システムおよびプログラム
WO2009096519A1 (ja) * 2008-01-31 2009-08-06 Nec Corporation フィードフォーワード制御方法、サービス提供品質制御装置、システム、プログラム及びその記録媒体
JP2010117757A (ja) * 2008-11-11 2010-05-27 Nomura Research Institute Ltd 性能監視システムおよび性能監視方法
US8438427B2 (en) * 2011-04-08 2013-05-07 Ca, Inc. Visualizing relationships between a transaction trace graph and a map of logical subsystems
JP6176111B2 (ja) * 2011-08-15 2017-08-09 日本電気株式会社 分散処理管理装置及び分散処理管理方法
US9251032B2 (en) * 2011-11-03 2016-02-02 Fujitsu Limited Method, computer program, and information processing apparatus for analyzing performance of computer system
JP5874811B2 (ja) * 2012-03-19 2016-03-02 富士通株式会社 情報処理方法、プログラム、および情報処理装置
US9015853B2 (en) * 2012-06-15 2015-04-21 The Regents Of The University Of California Concealing access patterns to electronic data storage for privacy
US8984125B2 (en) * 2012-08-16 2015-03-17 Fujitsu Limited Computer program, method, and information processing apparatus for analyzing performance of computer system
JP6220625B2 (ja) * 2013-10-10 2017-10-25 株式会社野村総合研究所 遅延監視システムおよび遅延監視方法
US9432256B2 (en) * 2014-03-27 2016-08-30 Hitachi, Ltd. Resource management method and resource management system

Also Published As

Publication number Publication date
JP2018013994A (ja) 2018-01-25
US20180024905A1 (en) 2018-01-25
US10713142B2 (en) 2020-07-14

Similar Documents

Publication Publication Date Title
JP6610082B2 (ja) 中継装置及び中継処理プログラム
JP2017027116A (ja) プロセス制御装置及びプロセス制御プログラム
JP4285658B2 (ja) ウェブ・サービスを提供する装置およびその方法
JP6766495B2 (ja) プログラム、コンピュータ及び情報処理方法
US20200159622A1 (en) Rule based failure addressing
EP3093809B1 (en) Systems and methods for state machine management
CN108287894B (zh) 数据处理方法、装置、计算设备及存储介质
US9967412B2 (en) Information processing apparatus, system, and control method for information processing apparatus
US20140278723A1 (en) Methods and systems for predicting workflow preferences
JP5806688B2 (ja) OpS装置
JP6886874B2 (ja) エッジ装置、データ処理システム、データ送信方法、及びプログラム
JP7235119B2 (ja) 処理装置、会計装置、処理方法及びプログラム
WO2013121790A1 (ja) プライバシ情報を扱う情報処理装置、プライバシ情報を扱う情報処理システム、プライバシ情報を扱う情報処理方法及びプログラム
US10516628B2 (en) Transfer device, transfer system, and transfer method
CN114416224A (zh) 一种在多微服务环境下调用微服务的方法及装置
CN105144073A (zh) 可移除存储设备身份和配置信息
JP6520260B2 (ja) 情報処理装置、情報処理システム及びプログラム
US20180314563A1 (en) Information processing apparatus and information processing system
CN107211018A (zh) 调整媒体流化的质量等级
JP2017027240A (ja) ジョブ処理システム、ジョブ処理装置及びジョブ処理プログラム
JP6816511B2 (ja) セッション管理プログラム、セッション管理方法、情報処理装置、及び情報処理システム
CN113867778A (zh) 一种镜像文件的生成方法、装置、电子设备及存储介质
JP6287307B2 (ja) メッセージ処理方法、情報処理装置及びプログラム
US20180241905A1 (en) Image processing apparatus and non-transitory computer readable medium
JP6515736B2 (ja) 情報処理装置及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200410

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: 20200818

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200831

R150 Certificate of patent or registration of utility model

Ref document number: 6766495

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150