JP2013157748A - サービスバスシステム、サービスバス装置及び接続一意性保証方法 - Google Patents

サービスバスシステム、サービスバス装置及び接続一意性保証方法 Download PDF

Info

Publication number
JP2013157748A
JP2013157748A JP2012015727A JP2012015727A JP2013157748A JP 2013157748 A JP2013157748 A JP 2013157748A JP 2012015727 A JP2012015727 A JP 2012015727A JP 2012015727 A JP2012015727 A JP 2012015727A JP 2013157748 A JP2013157748 A JP 2013157748A
Authority
JP
Japan
Prior art keywords
service bus
session
connection information
service
devices
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.)
Pending
Application number
JP2012015727A
Other languages
English (en)
Inventor
Tameyuki Eya
為之 江谷
Takao Inaguma
隆雄 稲熊
Hiroyuki Iriyama
弘之 杁山
Koichi Takada
宏一 高田
Takashi Tanaka
貴志 田中
Masakatsu Fujita
正勝 藤田
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 JP2012015727A priority Critical patent/JP2013157748A/ja
Priority to US13/716,751 priority patent/US8977758B2/en
Publication of JP2013157748A publication Critical patent/JP2013157748A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】サービスバスシステムにおいて、接続情報データベースのアクセスを削減する。
【解決手段】クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムにおいて、第1装置と第2装置との間をセッションの最初のシーケンスで接続する際に、セッションと同一セッション内の2番目以降のシーケンスで第1装置と第2装置との間を接続する1つ以上の他のサービスバス装置を予測し、予測された他のサービスバス装置に送信し、他のサービスバス装置から送信されたセッションの第1装置と第2装置との接続情報を保持し、同一セッション内の2番目以降のシーケンスを受信したサービスバス装置にセッションの第1装置と第2装置との接続情報があれば、該接続情報を用いて2番目以降のシーケンスで第1装置と第2装置との間を接続する。
【選択図】図6

Description

本発明は、サービスバスシステム、サービスバス装置及び接続一意性保証方法に関する。
ある業務システムを構築する際のソフトウェア資産を有効活用するために、SOA(Service−Oriented Architecture)という概念がある。SOAは、ビジネスプロセスの構成単位に合わせて構築され整理されたソフトウェア部品や機能をネットワーク上に公開(これを「アプリケーション」と呼ぶ)し、これらを相互に連携させることにより、柔軟なエンタープライズ・システム、企業間ビジネスプロセス実行システムを構築しようというシステムアーキテクチャのことである。
更に、SOAで公開されたソフトウェア部品を効率良く繋ぐための基盤として、ESB(Enterprise Service Bus)に代表されるサービスバスという概念がある。SOAの概念では、サービス化されたソフトウェア資産にアクセスするために、アクセス元のエンタープライズ・システム等のシナリオからアクセス先のプロトコルやIPアドレス等の位置を把握しておく必要があり、これを行うものがサービスバスである。
図1にサービスバスの概念を示す。図1において、シナリオ1,2はネットワークを介してサービスバス5に接続され、また、アプリケーション3,4はネットワークを介してサービスバス5に接続されている。シナリオ1,2からアプリケーション3,4にアクセスしようとした場合、シナリオ1,2は自分のアクセスしたいプロトコルやデータ形式でサービスバス5にアクセスするだけで良く、アプリケーション3,4のプロトコルや位置を知らなくて良いため、効率的にシナリオ1,2を開発できる。サービスバス5は、プロトコル変換機能、データ変換機能を有し、サービスバス内の共通プロトコル通信を行うことで、上記の機能を実現している。
図2にネットワークサービスを行うサービスバスシステムの一例の構成図を示す。サービスバスシステム10はサービスシナリオ11a〜11cと、ロードバランサ12と、サービスバス13−1〜13−nと、アプリケーション14a〜14dを有している。サービスシナリオ11a〜11cは例えばネットワーク電話帳サービス、音声翻訳サービス、声の宅配サービスなどである。アプリケーション14a〜14dは例えば位置情報アプリケーション、翻訳アプリケーション、3PCC(3rd Party Call Control)アプリケーション、グループウェアなどである。
サービスバスシステム10は各サービスシナリオ11a〜11cからサービスバス13−1〜13−nを経由してバックエンドのアプリケーション14a〜14dを連携させて、サービスシナリオ11a〜11cに接続したユーザ機器15a,15b,15c等にサービスの提供を行う。このような構成で実現されるサービスバスシステム10においては、性能分散のためサービスバス13−1〜13−nは数台〜数千台程度が分散配置され、ロードバランサ12によって接続単位でサービスバス13−1〜13−nへの振り分けが発生する。
ここで、図3に示すように、サービスシナリオ11aとアプリケーション14a−1との間のセッションでは、SIP(Session Initiation Protocol)等のプロトコルが状態遷移を持つために1つのセッションで複数シーケンスが発生する場合がある。すなわち、第1シーケンスはサービスシナリオ11aからアプリケーション14a−1への初回リクエストであり、ロードバランサ12によりサービスバス13−1が選択されている。第2シーケンスはアプリケーション14a−1からサービスシナリオ11aへの応答あり、ロードバランサ12によりサービスバス13−2が選択されている。第3シーケンスはサービスシナリオ11aからアプリケーション14a−1への追加リクエストあり、ロードバランサ12によりサービスバス13−3が選択されている。第4シーケンスはアプリケーション14a−1からサービスシナリオ11aへの応答あり、ロードバランサ12によりサービスバス13−4が選択されている。
このような同一セッション内の各シーケンスではサービスシナリオとアプリケーションの接続の一意性を保証する必要がある。従来は同一セッション内の接続一意性保証を行う場合、サービスバス13−1〜13−nに共通の接続情報データベース16を設け、サービスバス13−1〜13−n間で、接続情報データベース16により同一セッションの接続情報を共有している。
すなわち、各サービスバス13−1〜13−nはサービスシナリオ11a〜11cからセッション開始の要求があると、セッションIDと、要求を行ったサービスシナリオの装置情報と、要求を処理するアプリケーションの装置情報を、接続情報として接続情報データベース16に登録する。その後、各サービスバス13−1〜13−nでアプリケーションから応答などを受信したとき、又は、サービスシナリオからの要求等を受信したとき、サービスバス13−1〜13−nは受信した応答や要求のセッションIDを用いて接続情報データベース16を検索して接続情報を読み出し、この接続情報から当該応答や要求の送信先のアプリケーションやサービスシナリオを決定する。
ところで、追加するサービスバスに接続先である既存のサービスバスのノード識別子と位置を入力して、追加するサービスバスにおける自サービスバス及び隣接サービスバスの識別子と位置を保存するバスノードテーブルに既存のサービスバスのノード識別子と位置を登録する。そして、追加するサービスバスから既存のサービスバスにバスノードテーブル更新通知を行い、バスノードテーブル更新通知により既存のサービスバスのバスノードテーブルに追加するサービスバスのノード識別子と位置を登録する。これにより、複数サービスバスの連携を可能とする技術が提案されている(例えば特許文献1参照)。
また、優先度情報記憶手段がクライアントからの新規セッションの接続要求に応答して振分先サーバが該新規セッション毎に割り当てるセッション識別子に対し優先度情報を対応付けて記憶すると共に各優先度情報に対応した通信品質を記憶する。そして、転送手段が該クライアント又は該サーバからパケットを受信したとき、該パケットを該優先度情報に基づく通信品質で転送することで、サービス提供者の希望に応じたクライアントに対する優先制御を可能にする技術が提案されている(例えば特許文献2参照)。
特開2010−9218号公報 特開2003−152783号公報
サービスバス自体は分散構成をとっているにも拘わらず接続一意性保証のために、接続情報データベース16のアクセスに局所集中が発生する。サービストラヒック及びサービスバス13−1〜13−nの台数規模が小さい場合は、接続情報データベース16の登録及び検索の負荷は全体に対して小さいと考えられる。しかし、サーバ規模が数百台〜数千台程度の超大規模構成になると接続情報が膨大な数となる。したがって、接続情報データベース16に対し数百台〜数千台のサービスバスが接続情報を登録し、また、接続情報を検索するため、接続情報データベース16を検索するためのトラヒックが輻輳し、接続情報データベース16検索のオーバヘッドが増大するため、システム全体の性能に対してボトルネックとなるという問題があった。
例えば数百台のサービスバス13−1〜13−nそれぞれが1秒に1トランザクションを処理するとすれば、接続情報の登録及び検索を含め最大で1秒間に数百〜数千回、接続情報データベース16をアクセスする。接続情報データベース16に一定期間(数時間〜数日)だけ接続情報を保持するものとすれば、1時間あたりでも数百万オーダーのデータ量となり、検索に要するオーバヘッドが膨大になる。
開示のサービスバスシステムは、接続情報データベースのアクセスを削減することを目的とする。
開示の一実施形態によるサービスバスシステムは、クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムにおいて、
前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測する予測手段と、
前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信する送信手段と、
他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持する記憶手段と、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する接続手段と、を有する
本実施形態によれば、接続情報データベースのアクセスを削減することができる。
サービスバスの概念を示す図である。 サービスバスシステムの一例の構成図である。 接続一意性保証を説明するための図である。 サービスバスシステムの一実施形態のハードウェア構成図である。 サービスバス装置の一実施形態の機能構成図である。 接続情報のデータ構造の一実施形態を示す図である。 バスリストのデータ構造の一実施形態を示す図である。 サービスログのデータ構造の一実施形態を示す図である。 装置間メッセージのデータ構造の一実施形態を示す図である。 選択予測処理の一実施形態のフローチャートである。 接続一意性保証動作を説明するための図である。 サービスバス数予測処理の一実施形態のフローチャートである。 静的負荷分散予測を説明するための図である。 動的負荷分散予測を説明するための図である。 動的負荷分散予測を説明するための図である。 動的負荷分散予測の動作シーケンスである。
以下、図面に基づいて実施形態を説明する。
<サービスバスシステムのハードウェア構成>
図4はネットワークサービスを行うサービスバスシステムの一実施形態のハードウェア構成図を示す。図4において、サービスバスシステム20は、サービスシナリオ実行装置21−1〜21−iと、ロードバランサ22と、サービスバス装置23−1〜13−nと、アプリケーション実行装置24−1〜24−jと、接続情報データベース装置26と、バス負荷監視装置27を有している。なお、サービスシナリオ実行装置21−1〜21−iは第1装置の一例であり、アプリケーション実行装置24−1〜24−jは第2装置の一例である。
サービスシナリオ実行装置21−1〜21−iそれぞれは、ハードウェア構成として、通信装置31、CPU32、メモリ33、補助記憶装置34、電源部35を有している。通信装置31は図示しないネットワークを介してサービスクライアントとしてのユーザ端末28,29に接続されると共に、ロードバランサ22、サービスバス装置23−1〜13−nそれぞれの通信装置と接続される。CPU32はメモリ33又は補助記憶装置34に格納されているプログラムを実行することで、例えばネットワーク電話帳サービス、音声翻訳サービス、声の宅配サービスなどのサービスシナリオを実行する。また、電源部35はサービスシナリオ実行装置の各部に電源を供給する。
ロードバランサ22は、ハードウェア構成として、通信装置41、CPU42、メモリ43、補助記憶装置44、電源部45を有している。通信装置41はサービスシナリオ実行装置21−1〜21−i、サービスバス装置23−1〜13−n、アプリケーション実行装置24−1〜24−jそれぞれの通信装置と接続される。CPU42はメモリ43又は補助記憶装置44に格納されているプログラムを実行することで、サービスシナリオ実行装置21−1〜21−i又はアプリケーション実行装置24−1〜24−jのいずれかから受信した要求又は応答をサービスバス装置23−1〜13−nに割り振ってサービスバス装置23−1〜13−nの負荷を分散させる処理を実行する。また、電源部45はロードバランサの各部に電源を供給する。
サービスバス装置23−1〜13−nは、ハードウェア構成として、通信装置51、CPU52、メモリ53、補助記憶装置54、電源部55を有している。通信装置51はサービスシナリオ実行装置21−1〜21−i、ロードバランサ22それぞれの通信装置と接続されており、接続情報送信部93,接続情報受信部94,接続情報フィードバック部96としての機能を有する。CPU42はメモリ53又は補助記憶装置54に格納されているプログラムを実行することで、サービスバス装置選択予測部91,一意接続実施部95,予測精度操作部97として機能すると共に、プロトコル変換処理、データ変換処理、共通プロトコル通信処理などを実行する。メモリ53には接続情報キャッシュ92が設けられ、補助記憶装置54にはバスリスト98とサービスログ99が設けられ、この他にサービスバスデフォルト設定データが格納される。また、電源部55はサービスバス装置の各部に電源を供給する。
アプリケーション実行装置24−1〜24−jは、ハードウェア構成として、通信装置61、CPU62、メモリ63、補助記憶装置64、電源部65を有している。通信装置61はサービスバス装置23−1〜13−n、ロードバランサ22それぞれの通信装置と接続される。また、通信装置61は外部装置66等にも接続される。CPU62はメモリ63又は補助記憶装置64に格納されているアプリケーションプログラムを実行することで、位置情報処理、翻訳処理、3PCC処理、グループウェア処理などを実行する。また、電源部65はサービスバス装置の各部に電源を供給する。
接続情報データベース装置26は、ハードウェア構成として、通信装置71、CPU72、メモリ73、補助記憶装置74、電源部75を有している。通信装置71はサービスバス装置23−1〜13−nそれぞれの通信装置と接続される。CPU72はメモリ73又は補助記憶装置74に格納されているプログラムを実行することで、接続情報データベースの登録、検索、更新等の処理を実行する。接続情報は補助記憶装置74に格納される。また、電源部75は接続情報データベース装置の各部に電源を供給する。
バス負荷監視装置27は、ハードウェア構成として、通信装置81、CPU82、メモリ83、補助記憶装置84、電源部85を有している。通信装置81はサービスバス装置23−1〜13−nそれぞれの通信装置と接続される。CPU82はメモリ83又は補助記憶装置84に格納されているプログラムを実行することで、サービスバス装置23−1〜13−nそれぞれの負荷を監視する処理を実行する。また、電源部85は接続情報データベース装置の各部に電源を供給する。
<サービスバス装置の機能構成>
図5はサービスバス装置の一実施形態の機能構成図を示す。図5において、サービスバス装置90内のサービスバス装置選択予測部91は、ロードバランサ22から受け取った接続要求のリクエスト識別子が接続情報キャッシュ92と接続情報データベース装置26のいずれにも登録されていない場合は初回の要求と判定し、サービスバス装置選択予測を行う。すなわち、サービスバス装置選択予測部91はサービスシナリオ実行装置とアプリケーション実行装置の接続時に、セッション内にマルチシーケンスがあり、接続情報を接続情報データベース装置26に格納する必要があれば、当該セッションで選択されるサービスバス装置を全て予測する。サービスバス装置選択予測部91は選択予測候補の複数のサービスバス装置を決定後、そのサービスバス装置のリストを接続情報送信部93に渡す。
接続情報送信部93はサービスバス装置選択予測部91より受信したサービスバス装置のリストから実際のサービスバス装置の接続先アドレスを求め、それらのサービスバス装置に対して該当セッションの接続情報として、リクエスト識別子(リクエストID)、サービスシナリオ実行装置アドレス、アプリケーション実行装置アドレスを送信する。
接続情報受信部94は他のサービスバス装置の接続情報送信部93から送信されたセッションの接続情報であるリクエスト識別子、サービスシナリオ実行装置アドレス、アプリケーション実行装置アドレス、当該接続情報送信元のサービスバス装置番号を更新日付と共に、メモリ53に設けた接続情報キャッシュ92に保存する。また、接続情報のキャッシュ保存時にキャッシュ有効性チェックのため、各キャッシュレコードの最終更新日付をチェックし、サービス単位で設定した有効時間を超えていれば、そのキャッシュレコードを削除する。
一意接続実施部95はロードバランサ22から受け取った要求と接続情報キャッシュ92のリクエスト識別子を比較し、一致していれば接続情報キャッシュ92に保存されている接続情報のアプリケーション実行装置アドレスを接続先とし、該当アプリケーション実行装置に対して要求を行う。同様に、一意接続実施部95はアプリケーション実行装置24−1〜24−jから受け取った応答と接続情報キャッシュ92のリクエスト識別子を比較し、一致していれば接続情報キャッシュ92に保存されている接続情報のサービスシナリオ実行装置アドレスを接続先とし、該当サービスシナリオ実行装置に対して応答を行う。
一方、接続情報キャッシュ92に要求のリクエスト識別子のレコードがない場合、一意接続実施部95は接続情報データベース装置26を検索して接続情報を取得し、取得した接続情報を接続情報キャッシュ92に格納する。そして、該当アプリケーション実行装置に対して要求を行う。同様に、一意接続実施部95は接続情報キャッシュ92に応答のリクエスト識別子のレコードがない場合、一意接続実施部95は接続情報データベース装置26を検索して接続情報を取得し、取得した接続情報を接続情報キャッシュ92に格納する。そして、該当サービスシナリオ実行装置に対して応答を行う。
また、一意接続実施部95は接続情報キャッシュ92に対するキャッシュヒットの合否を、リクエスト識別子、要求/応答種別、自サービスバス番号と共に、接続情報フィードバック部96に通知する。
接続情報フィードバック部96は一意接続実施部95から受信したリクエスト識別子で接続情報キャッシュ92を検索して接続情報送信元のサービスバス装置番号を抽出し、当該接続情報送信元のサービスバス装置の予測精度操作部97にキャッシュヒットの合否と要求/応答種別を含む接続フィードバック情報を送信する。
予測精度操作部97は他のサービスバス装置の接続情報フィードバック部96から受信した接続フィードバック情報を基に、バスリスト98とサービスログ99のデータを登録及び更新する。
バスリスト98はサービスバス装置選択予測部91で予測を行ったセッションで実際に使用されたサービスバス装置のサービスバス番号毎に、セッション属性として予測ヒット回数、接続時間帯、サービス累積接続数、負荷状態などを登録及び更新されている。
サービスログ99は予測を行ったサービスセッション毎に、実際に使用されたサービスバス装置の数、セッション確定の有無、最終更新日時などのセッション属性を登録及び更新される。
<接続情報のデータ構造>
図6に接続情報キャッシュ92と接続情報データベース装置26に保持する接続情報のデータ構造の一実施形態を示す。サービス番号のフィールドにはサービス毎の通番が格納され、リクエスト識別子(リクエストID)のフィールドにはサービス番号+アプリ識別子+セッション識別子+通番で一意に決まる識別子が格納される。サービスシナリオノードのフィールドにはURL形式(プロトコル+アドレス)で表現され、IPヘッダ及びポートなどから生成されたサービスシナリオ実行装置アドレスが格納される。アプリノードのフィールドにはURL形式で表現され、サービスバスが自前で解決又は生成したアプリケーション実行装置アドレスが格納される。最終更新日時のフィールドにはレコード削除時に使用する最終更新日時が格納される。予測合否通知先のフィールドには接続処理を行った際にキャッシュヒット/未ヒットを通知するために初回接続処理を行ったサービスバス装置のIPアドレスまたはホスト名が格納される。
<バスリスト>
図7にバスリスト98のデータ構造の一実施形態を示す。サービスバス番号のフィールドにはサービスバス装置の分散規則によって決まるサービスバス番号が格納される。アドレスのフィールドにはサービスバス装置のIPアドレス又はホスト名が格納される。時間帯1(重み付け値),時間帯2(重み付け値),サービス1(重み付け値),サービス2(重み付け値)…の重みフィールドには次選択バスの予測合否に応じて操作される重み付け値がサービスバス装置の選択予測論理毎に格納される。重み付け値は時間帯による選択頻度の偏り、サービスによる偏りなどに応じて定義されている。
<サービスログ>
図8にサービスログ99のデータ構造の一実施形態を示す。サービス番号のフィールドにはサービス毎の通番が格納される。アプリ番号のフィールドにはアプリケーション毎に一意に決まる識別子が格納される。セッション識別子のフィールドにはサービスシナリオ実行装置とアプリケーション実行装置とのペアの識別子が格納される。
使用サービスバス数のフィールドにはリクエスト識別子当たりで使用されたサービスバス装置の数が格納される。セッション確定フラグのフィールドにはリクエスト識別子のシーケンスが終了したかどうか、すなわち使用サービスバス数が確定したかどうかを示すフラグが格納されている。最終更新日時のフィールドにはレコード削除又はリフレッシュ時に使用される最終更新日時が格納されている。
<サービスバスデフォルト設定データ>
ファイル等に保持する離散定義データであるサービスバスデフォルト設定データについて説明する。このサービスバスデフォルト設定データは各サービスバス装置の補助記憶装置54に格納される。
デフォルト予測バス数は、デフォルトでいくつのサービスバスを予測するかを規定する。接続情報有効期間は、接続情報データベース装置26及び接続情報キャッシュ92それぞれの接続情報に対するサービス番号毎の有効生存時間を規定する。予測バス補正値は、サービス番号とセッション識別子で特定されるサービスセッション毎のサービスバス装置数の補正値を規定する。重み加算条件は、バスリスト98の重みフィールド毎に加算する補正値を規定する。重み推定比率は、バスリスト98の各重みフィールドの値に対する比率比率を規定する。
<装置間メッセージ>
図9(A),(B),(C)に装置間メッセージのデータ構造の一実施形態を示す。図9(A)にサービスバス装置間で送受信する接続情報のデータ構造を示す。接続情報メッセージは、リクエスト識別子(リクエストID)と、サービスシナリオ実行装置アドレス(サービスシナリオURL)、アプリケーション実行装置アドレス(アプリURL)、合否結果通知先つまり当該接続情報の送信元のアドレスを含んでいる。
図9(B)にサービスバス装置間で送受信する接続フィードバック情報のデータ構造を示す。接続フィードバック情報は、リクエスト識別子(リクエストID)と、要求/応答種別(0:要求時、1:応答時)と、自サービスバス装置番号、合否結果(1:キャッシュヒット、1以外:キャッシュ未ヒット)を含んでいる。
図9(C)にサービスバス装置とバス負荷監視装置27間で送受信する負荷状態情報のデータ構造を示す。負荷状態情報はサービスバス装置を特定するためのサービスバス装置番号と、収集日時と、当該サービスバス装置のCPU負荷と、使用中のバスセッション数を含んでいる。
<サービスバス装置のフローチャート>
図10はサービスバス装置90が実行する選択予測処理の一実施形態のフローチャートを示す。図10において、ステップS1でサービスバス装置90は外部から信号を受信する。ステップS2でサービスバス装置90は受信した信号が、他のサービスバス装置からの接続フィードバック情報か、ロードバランサ22を介しての要求又は応答か、他のサービスバス装置からの接続情報かを判別する。
受信した信号がロードバランサ22から供給される要求(サービスシナリオ実行装置から)又は応答(又はアプリケーション実行装置から)である場合には、ステップS3でサービスバス装置選択予測部91は要求又は応答のリクエスト識別子が接続情報キャッシュ92にあるか否かをチェックする。ステップS4の判別でリクエスト識別子が接続情報キャッシュ92にない場合には、ステップS5でサービスバス装置選択予測部91は要求又は応答のリクエスト識別子が接続情報データベース装置26にあるか否かをチェックする。ステップS6の判別でリクエスト識別子が接続情報データベース装置26にない場合には、セッション初回接続要求と判定してステップS7に進む。
ステップS7でサービスバス装置選択予測部91は初回接続要求を解析してアプリケーション実行装置(又はサービスシナリオ実行装置)を抽出する。これは既存の処理である。また、ステップS8でサービスバス装置選択予測部91は抽出したアプリケーション実行装置(又はサービスシナリオ実行装置)をリクエスト識別子と共に接続情報キャッシュ92に登録する。また、ステップS9でサービスバス装置選択予測部91は抽出したアプリケーション実行装置(又はサービスシナリオ実行装置)をリクエスト識別子と共に接続情報データベース装置26に登録する。これは既存の処理である。
次に、ステップS10でサービスバス装置選択予測部91は当該セッションで選択されるサービスバス装置を全て予測して、選択予測候補の複数のサービスバス装置のリストを接続情報送信部93に渡す。ステップS11で接続情報送信部93はサービスバス装置選択予測部91からのサービスバス装置のリストから実際のサービスバス装置の接続先アドレスを求め、それらのサービスバス装置に対して該当セッションの接続情報としてリクエスト識別子、サービスシナリオ実行装置アドレス、アプリケーション実行装置アドレスを送信する。その後、ステップS12で一意接続実施部95はステップS7で抽出したアプリケーション実行装置に対して接続要求を行って、この処理を終了する。これは既存の処理である。
ステップS4の判別でリクエスト識別子が接続情報キャッシュ92にある場合には、ステップS13で接続情報フィードバック部96は接続フィードバック情報に「キャッシュヒットあり」を設定してステップS15に進む。また、ステップS6の判別でリクエスト識別子が接続情報データベース装置26にある場合には、ステップS14で接続フィードバック情報に「キャッシュヒットなし」を設定してステップS15に進む。
ステップS15で接続情報フィードバック部96はステップS1で受信した要求又は応答のリクエスト識別子で接続情報キャッシュ92を検索して接続情報送信元のサービスバス装置番号を抽出し、当該接続情報送信元のサービスバス装置に接続フィードバック情報を送信する。その後、ステップS16で一意接続実施部95はステップS7で抽出したアプリケーション実行装置(又はサービスシナリオ実行装置)に対して要求又は応答を行って、この処理を終了する。これは既存の処理である。
一方、ステップS2で受信した信号が他のサービスバス装置からの接続フィードバック情報である場合には、ステップS17で予測精度操作部97は他のサービスバス装置から受信した接続フィードバック情報を基に、バスリスト98とサービスログ99のデータを登録及び更新する。
更に、ステップS2で受信した信号が他のサービスバス装置からの接続情報である場合には、ステップS18で接続情報受信部94は接続情報を更新日付と共に、メモリ53に設けた接続情報キャッシュ92に保存して、この処理を終了する。
<サービスバスシステムの動作>
図11を用いてサービスバスシステムにおける接続一意性保証動作を説明する。本実施形態では、各サービスバス装置23−1〜13−nが、サービスシナリオ実行装置21−1〜21−iとアプリケーション実行装置24−1〜24−jとの間をセッションの最初のシーケンスで接続する際に、サービスシナリオ実行装置21−1〜21−iとアプリケーション実行装置24−1〜24−jとの接続情報を接続情報データベース装置26に登録するタイミングで、同一セッションの次シーケンスで振り分けが予測される複数のサービスバス装置に対して当該接続情報を送信する。
図11では、セッションの第1シーケンスはサービスシナリオ21−1からアプリケーション24−1への初回リクエストであり、ロードバランサ22によりサービスバス23−1が選択されている。第2シーケンスはアプリケーション24−1からサービスシナリオ21−1の応答であり、ロードバランサ22によりサービスバス23−4が選択されている。なお、第2シーケンスのアプリケーション24−1からサービスシナリオ21−1の応答は、ロードバランサ22とは別のロードバランサにより選択するものであっても良い。この場合、別のロードバランサはロードバランサ22と同様の振り分け論理でサービスバスの振り分けを行う。
サービスシナリオ実行装置21−1とアプリケーション実行装置24−1との接続情報をサービスバス装置23−1が接続情報データベース装置26に登録するセッションの第1シーケンスのタイミングで、サービスバス装置23−1は同一セッションの次シーケンスで振り分けが予測される複数のサービスバス装置23−2,23−3,23−4に対して当該接続情報を送信する。
当該接続情報を受信したサービスバス装置23−2,23−3,23−4ではメモリ53の接続情報キャッシュ92に当該接続情報を保持する。次シーケンス以降で当該接続情報を保持しているサービスバス装置23−2,23−3,23−4に同一セッションのシーケンスが振り分けられた場合、つまり予測がヒットつまり当たった場合、予測がヒットした当該サービスバス装置は接続情報データベース装置26へのアクセスは行う必要がない。これにより接続情報データベース装置26へのアクセスを減らすことができる。
接続情報を送信されなかったサービスバス装置23−5に同一セッションのシーケンスが振り分られた場合、つまり予測がヒットしなかった場合、当該サービスバス装置23−5は従来どおり接続情報データベース装置26へのアクセスを行って接続情報を取得することで接続一意性保証を行う。
<サービスバス数予測処理のフローチャート>
図12はサービスバス装置選択予測部91が実行するサービスバス数予測処理の一実施形態のフローチャートを示す。この処理は、ロードバランサ22によってセッションの各シーケンスで選択されるサービスバス装置を、セッションの第1シーケンスでサービスバス装置選択予測部91が予測してリスト化する際に実行される。
図12において、ステップS21でサービスバス装置選択予測部91はサービスログ99をサービス番号で参照して使用サービスバス数が格納されているか否かを判別する。使用サービスバス数を取得できた場合にはステップS22でサービスバス装置選択予測部91は取得した使用サービスバス数を予測パス数と決定する。使用サービスバス数を取得できない場合、ステップS23でサービスバス装置選択予測部91は補助記憶装置54にか苦悩されているサービスバスデフォルト設定データにデフォルト予測バス数が規定されているか否かを判別する。デフォルト予測バス数が規定されていれば、ステップS24でサービスバス装置選択予測部91は規定されている当該デフォルト予測バス数を予測パス数と決定する。デフォルト予測バス数が規定されていなければステップS25でサービスバス装置選択予測部91はこのサービスバス数予測処理を終了する。
ステップS22又はS24の実行後、ステップS26でサービスバス装置選択予測部91はサービスバスデフォルト設定データに当該サービスセッションに対するサービスバス装置数の補正係数つまり予測バス補正値が規定されているか否かを判別し、補正係数が規定されている場合すなわち補正係数が0を超える場合にのみ、ステップS22又はS24で決定した予測パス数を上記補正係数により補正して、このサービスバス数予測処理を終了する。
<サービスバス装置予測>
サービスバス選択予測部91は、ロードバランサ22の振り分け論理に対応した選択予測処理で、予測バス数分のサービスバス装置番号を抽出する。ロードバランサ22の振り分け論理は、ラウンドロビンを用いた静的負荷分散と、最少負荷ノード選択など環境依存振り分けの動的負荷分散の2系列を想定し、サービスバス選択予測部91は静的負荷分散と動的負荷分散それぞれに対応した選択予測論理とする。また、これら2系列の選択予測論理の切替えと、2系列の選択予測論理の論理積又は論理和による組み合わせを可能とする。なお、上記サービスバス装置の予測はセッションの初回で接続したサービスバス装置でのみ行う。
<静的負荷分散予測>
ラウンドロビン振り分けに対応した静的負荷分散予測について説明する。ラウンドロビン方式の場合,サービスバス装置は固定順序で振り分けられるため、予めサービスバス装置の選択順序リストを作成することができる。図13に示す作成したサービスバス装置の選択順序リスト101は例えば補助記憶装置54に保持しておく。サービスバス選択予測部91はサービスバス装置の選択順序リスト101のうち、自サービスバス装置番号から順に予測バス数分のサービスバス装置番号を一括して抽出し、図13に示すバスリスト98に登録する。ここで、例えば任意のサービスのセッションシーケンスが要求と応答を合わせて10シーケンスだった場合、サービスバス装置選択順序リストの自サービスバス番号を検索し、そこから10個のサービスバス番号を取得する。
<動的負荷分散予測1>
ロードバランサ22の振り分けが、時間帯、使用サービスの偏りなどによって振り分けパターンが想定できる場合、それらの振り分けパターンをサービスバス装置が学習することで、バス選択確率を推定することができる。
予測精度操作部97において、使用されたサービスバス装置からの接続フィードバック情報を受信すると、図14に示すサービスバスデフォルト設定データ102から、重み加算条件つまりバスリスト98の重みフィールド毎に加算する補正値を抽出し、バスリスト98の時間帯1,2、サービス1,2などに対応する各重みフィールドの実績値に抽出した補正値を加算する。
サービスバス装置選択予測部91でバス選択をする場合には、サービスバスデフォルト設定データ102から重み推定比率を抽出し、各重みフィールドの補正後の実績値に重み推定比率を乗算して総和を求めて優先度とし、優先度の高いものから順にバスリスト98から抽出して行く。
図14に示す例では、接続フィードバック情報の受信により時間帯1、サービス2で使用されたサービスバス装置に対して、バスリスト98の各重みフィールドの実績値に、サービスバスデフォルト設定データの各該当フィールドに指定された予測バス補正値(例えば100)を加算する。
次ぎに、同じ時間帯、同じサービスで接続要求があった場合、サービスバス装置選択予測部91では、この重み情報を総合して、(1)式により優先度を評価する。
優先度=時間帯1の実績値×時間帯1の重み推定比率
+サービス2の実績値×サービス2の重み推定比率] …(1)
時間帯1の重み推定比率は例えば0.6であり、サービス2の重み推定比率は例えば0.3である。(1)式によりサービスバス装置自体の優先度を評価し、優先度の高いものからサービスバス数予測処理で決定したバス数分を選択する。
<動的負荷分散予測2>
ロードバランサ22が各サービスバス装置の負荷を監視して負荷分散を行う場合、振り分け対象のサービスバス装置上の配備された監視エージェントプログラムによって定期的にCPU負荷や接続中セッション数などのノード状態の配信を受け、サービスバス装置に応じて振り分けを決定する。
このため、ロードバランサ22と同等の論理を各サービスバス装置23−1〜23−nに配備することにより、バス選択予測精度を上げることができる。図15の機能構成図と図16の動作シーケンスに示すように、サービスバス装置23−1〜23−nから独立したバス負荷監視装置27により、一定時間間隔で全サービスバス装置23−1〜23−nの監視エージェントプログラム100を経由してCPU負荷や接続中セッション数などの負荷状態を収集する(図16のシーケンスSQ1)。
その情報を基にバス負荷監視装置27は優先的に選択可能なサービスバス装置を全て抽出する(図16のSQ2)。この後、バス負荷監視装置27から抽出した選択可能なサービスバス装置の情報をブロードキャストで全サービスバス装置23−1〜23−nに通知する。各サービスバス装置23−1〜23−nの予測精度操作部97では、それらのデータでバスリスト98の更新を行う(図16のSQ3)。
この場合、ノード監視間隔、ブロードキャスト送信間隔、CPU負荷率と接続セッション数の選択可能バス閾値、抽出バス最大数などの基本定数は設定定義ファイルなどとしてバス負荷監視装置27に定義しておく。基本的にロードバランサ22の振り分け条件を近似的にエミュレートするため、サービスバス装置負荷監視条件をロードバランサ22の監視条件に近づけるほど、精度の高いサービスバス装置選択予測が行える。
なお、接続情報データベース装置26を複数台に分散して設置し、1台当たりの負荷を分散させることが考えられる。データベースの振り分け論理としては、ユーザID,サービスバス装置番号単位などの固定振り分け、リクエスト識別子などをキーにしてハッシュ関数による数値化でデータベース番号を決定するハッシュ振り分けなどがある。しかし、データベースの負荷分散の均一性が保証されていないため、データベースの局所的なアクセスがボトルネックとなる。また、データベースの性能によっては、接続情報データベース装置26を数十台〜数百台に分散することが必要となり、ハードウェア及びソフトウェアの導入、開発、保守のコストが膨れ上がる。
これに対し、本実施形態によれば、接続情報データベース装置26を複数台に分散する必要がなく、上記のデータベースの局所的なアクセスがボトルネックとなることはなく、コストの上昇もあり得ない。
(付記1)
クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムにおいて、
前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測する予測手段と、
前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信する送信手段と、
他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持する記憶手段と、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する接続手段と、
を有することを特徴とするサービスバスシステム。
(付記2)
付記1記載のサービスバスシステムにおいて、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信するフィードバック手段と、
他のサービスバス装置の前記フィードバック手段から送信されたフィードバック情報の受信に応じて、前記予測手段で予測に用いる値を補正する補正手段と、
を有することを特徴とするサービスバスシステム。
(付記3)
付記1記載のサービスバスシステムにおいて、
前記予測手段は、前記複数のサービスバス装置から固定順序で前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とするサービスバスシステム。
(付記4)
付記1記載のサービスバスシステムにおいて、
前記予測手段は、前記複数のサービスバス装置それぞれの動作状態に応じて前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とするサービスバスシステム。
(付記5)
クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムのサービスバス装置において、
前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測する予測手段と、
前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信する送信手段と、
他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持する記憶手段と、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する接続手段と、
を有することを特徴とするサービスバス装置。
(付記6)
付記5記載のサービスバス装置において、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信するフィードバック手段と、
他のサービスバス装置の前記フィードバック手段から送信されたフィードバック情報の受信に応じて、前記予測手段で予測に用いる値を補正する補正手段と、
を有することを特徴とするサービスバス装置。
(付記7)
付記5記載のサービスバス装置において、
前記予測手段は、前記複数のサービスバス装置から固定順序で前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とするサービスバス装置。
(付記8)
付記5記載のサービスバス装置において、
前記予測手段は、前記複数のサービスバス装置それぞれの動作状態に応じて前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とするサービスバス装置。
(付記9)
クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムの接続一意性保証方法において、
前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測し、
前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信し、
他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持し、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する、
ことを特徴とする接続一意性保証方法。
(付記10)
付記9記載の接続一意性保証方法において、
前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信し、
他のサービスバス装置から送信されたフィードバック情報の受信に応じて、前記1つ以上の他のサービスバス装置を予測する際に用いる値を補正する、
ことを特徴とする接続一意性保証方法。
(付記11)
付記9記載の接続一意性保証方法において、
前記複数のサービスバス装置から固定順序で前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とする接続一意性保証方法。
(付記12)
付記9記載の接続一意性保証方法において、
前記予測手段は、前記複数のサービスバス装置それぞれの動作状態に応じて前記1つ以上の他のサービスバス装置を予測する、
ことを特徴とする接続一意性保証方法。
20 サービスバスシステム
21−1〜21−i サービスシナリオ実行装置
22 ロードバランサ
23−1〜13−n,90 サービスバス装置
24−1〜24−j アプリケーション実行装置
26 接続情報データベース装置
27 バス負荷監視装置
31,41,51,61,71,81 通信装置
32,42,52,62,72,82 CPU
33,43,53,63,73,83 メモリ
34,44,54,64,74,84 補助記憶装置
35,45,55,65,75,85 電源部
28,29 ユーザ端末
91 サービスバス装置選択予測部
92 接続情報キャッシュ
93 接続情報送信部
94 接続情報受信部
95 一意接続実施部
96 接続情報フィードバック部
97 予測精度操作部
98 バスリスト
99 サービスログ

Claims (8)

  1. クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムにおいて、
    前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測する予測手段と、
    前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信する送信手段と、
    他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持する記憶手段と、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する接続手段と、
    を有することを特徴とするサービスバスシステム。
  2. 請求項1記載のサービスバスシステムにおいて、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信するフィードバック手段と、
    他のサービスバス装置の前記フィードバック手段から送信されたフィードバック情報の受信に応じて、前記予測手段で予測に用いる値を補正する補正手段と、
    を有することを特徴とするサービスバスシステム。
  3. 請求項1記載のサービスバスシステムにおいて、
    前記予測手段は、前記複数のサービスバス装置から固定順序で前記1つ以上の他のサービスバス装置を予測する、
    ことを特徴とするサービスバスシステム。
  4. 請求項1記載のサービスバスシステムにおいて、
    前記予測手段は、前記複数のサービスバス装置それぞれの動作状態に応じて前記1つ以上の他のサービスバス装置を予測する、
    ことを特徴とするサービスバスシステム。
  5. クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムのサービスバス装置において、
    前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測する予測手段と、
    前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信する送信手段と、
    他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持する記憶手段と、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する接続手段と、
    を有することを特徴とするサービスバス装置。
  6. 請求項5記載のサービスバス装置において、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信するフィードバック手段と、
    他のサービスバス装置の前記フィードバック手段から送信されたフィードバック情報の受信に応じて、前記予測手段で予測に用いる値を補正する補正手段と、
    を有することを特徴とするサービスバス装置。
  7. クライアントに接続される複数の第1装置と、サービスを実行する複数の第2装置との間を複数のサービスバス装置のいずれかを用いて接続するサービスバスシステムの接続一意性保証方法において、
    前記第1装置と前記第2装置との間をセッションの最初のシーケンスで接続する際に、前記セッションと同一セッション内の2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する1つ以上の他のサービスバス装置を予測し、
    前記セッションの前記第1装置と前記第2装置との接続情報を前記予測手段で予測された前記1つ以上の他のサービスバス装置に送信し、
    他のサービスバス装置の前記送信手段から送信された前記セッションの前記第1装置と前記第2装置との接続情報を保持し、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があれば、前記記憶手段の接続情報を用いて前記2番目以降のシーケンスで前記第1装置と前記第2装置との間を接続する、
    ことを特徴とする接続一意性保証方法。
  8. 請求項7記載の接続一意性保証方法において、
    前記同一セッション内の2番目以降のシーケンスを受信したサービスバス装置の前記記憶手段に前記セッションの前記第1装置と前記第2装置との接続情報があったとき、前記記憶手段に保持している接続情報の送信元のサービスバス装置に対し予測が当たった旨のフィードバック情報を送信し、
    他のサービスバス装置から送信されたフィードバック情報の受信に応じて、前記1つ以上の他のサービスバス装置を予測する際に用いる値を補正する、
    ことを特徴とする接続一意性保証方法。
JP2012015727A 2012-01-27 2012-01-27 サービスバスシステム、サービスバス装置及び接続一意性保証方法 Pending JP2013157748A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012015727A JP2013157748A (ja) 2012-01-27 2012-01-27 サービスバスシステム、サービスバス装置及び接続一意性保証方法
US13/716,751 US8977758B2 (en) 2012-01-27 2012-12-17 Service bus system, service bus device, and method for assuring connection uniqueness

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012015727A JP2013157748A (ja) 2012-01-27 2012-01-27 サービスバスシステム、サービスバス装置及び接続一意性保証方法

Publications (1)

Publication Number Publication Date
JP2013157748A true JP2013157748A (ja) 2013-08-15

Family

ID=48871306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012015727A Pending JP2013157748A (ja) 2012-01-27 2012-01-27 サービスバスシステム、サービスバス装置及び接続一意性保証方法

Country Status (2)

Country Link
US (1) US8977758B2 (ja)
JP (1) JP2013157748A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015037203A (ja) * 2013-08-12 2015-02-23 日本電信電話株式会社 ネットワークサービスシステム及びそのトラヒック振分け方法
JP2015156567A (ja) * 2014-02-20 2015-08-27 Necエンジニアリング株式会社 通信システム、ファイアウォール及び通信方法
JP2018501723A (ja) * 2014-12-18 2018-01-18 ノキア ソリューションズ アンド ネットワークス オサケユキチュア ネットワーク負荷バランサー

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252152A1 (en) * 2010-04-09 2011-10-13 Marcus Sherry Reliable messaging system and method
GB201305211D0 (en) * 2013-03-21 2013-05-01 Ibm Workload placement in a computer system
JP6244894B2 (ja) * 2013-12-24 2017-12-13 富士通株式会社 通信システム、通信方法および呼制御サーバ装置
CN105516441A (zh) * 2014-09-25 2016-04-20 联想(北京)有限公司 一种信息处理方法和装置
FR3043810B1 (fr) * 2015-11-16 2017-12-08 Bull Sas Procede de surveillance d'echange de donnees sur un reseau de type liaison h implementant une technologie tdma
US10764361B2 (en) * 2015-12-28 2020-09-01 Netsapiens, Inc. Distributed server architecture session count system and methods
CN109743357B (zh) * 2018-12-13 2022-03-01 杭州迪普科技股份有限公司 一种业务访问连续性的实现方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003152783A (ja) 2001-11-19 2003-05-23 Fujitsu Ltd サーバ負荷分散装置
US7774485B2 (en) * 2004-05-21 2010-08-10 Bea Systems, Inc. Dynamic service composition and orchestration
US20050273520A1 (en) * 2004-05-21 2005-12-08 Bea Systems, Inc. Service oriented architecture with file transport protocol
US7310684B2 (en) * 2004-05-21 2007-12-18 Bea Systems, Inc. Message processing in a service oriented architecture
FR2924557B1 (fr) * 2007-12-04 2016-08-19 Thales Sa Procede d'acheminement de messages sur un reseau et systeme de mise en oeuvre du procede
JP5136238B2 (ja) 2008-06-25 2013-02-06 富士通株式会社 サービスバス連携方法及びサービスバス
US8200278B2 (en) * 2009-01-08 2012-06-12 Red Hat, Inc. Adding SMS as a transport type for an enterprise service bus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015037203A (ja) * 2013-08-12 2015-02-23 日本電信電話株式会社 ネットワークサービスシステム及びそのトラヒック振分け方法
JP2015156567A (ja) * 2014-02-20 2015-08-27 Necエンジニアリング株式会社 通信システム、ファイアウォール及び通信方法
JP2018501723A (ja) * 2014-12-18 2018-01-18 ノキア ソリューションズ アンド ネットワークス オサケユキチュア ネットワーク負荷バランサー

Also Published As

Publication number Publication date
US20130198393A1 (en) 2013-08-01
US8977758B2 (en) 2015-03-10

Similar Documents

Publication Publication Date Title
JP2013157748A (ja) サービスバスシステム、サービスバス装置及び接続一意性保証方法
US10374955B2 (en) Managing network computing components utilizing request routing
EP2756655B1 (en) Systems and methods for optimization of subscriptions to resource changes in machine-to-machine (m2m) systems
CN115442423A (zh) 发现由网络存储库功能提供的服务的方法
CN102047243A (zh) 基于类别请求路由
US9075660B2 (en) Apparatus and method for providing service availability to a user via selection of data centers for the user
CN102077189A (zh) 使用网络计算组件的请求路由
US20090094611A1 (en) Method and Apparatus for Load Distribution in Multiprocessor Servers
US7844708B2 (en) Method and apparatus for load sharing and data distribution in servers
WO2021051747A1 (zh) 数据更新方法、系统、装置、电子设备及计算机存储介质
WO2019223855A1 (en) Service discovery extension in a 5g mobile communication network
CN111556135A (zh) 一种请求调度方法、系统、装置及电子设备
US20180331974A1 (en) Method and apparatus for controlling and facilitating control of data stream of user in sdn network
GB2534426A (en) Telecommunications routing system
CN110505318B (zh) 统一资源定位符寻址方法及装置、网络系统
JP6540063B2 (ja) 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム
JP5109901B2 (ja) セッションデータ共有方法
CN110347718B (zh) 一种redis分片方法、装置、计算机设备和存储介质
CN105049463A (zh) 分散数据库、数据共享方法、用于分散数据库的装置
JP6048573B2 (ja) 情報処理システム
JP5174708B2 (ja) Imsにおけるセッション制御システム
WO2018000617A1 (zh) 一种数据库的更新方法及调度服务器
WO2014037799A2 (en) Method, apparatus and device for managing an ims session
CN104509071A (zh) 处理请求
US9871870B1 (en) Pseudonymous communication session generation and management systems and methods

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150714

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20151110