JP6632394B2 - ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム - Google Patents

ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム Download PDF

Info

Publication number
JP6632394B2
JP6632394B2 JP2016011522A JP2016011522A JP6632394B2 JP 6632394 B2 JP6632394 B2 JP 6632394B2 JP 2016011522 A JP2016011522 A JP 2016011522A JP 2016011522 A JP2016011522 A JP 2016011522A JP 6632394 B2 JP6632394 B2 JP 6632394B2
Authority
JP
Japan
Prior art keywords
connection destination
service
request
information indicating
unit
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
JP2016011522A
Other languages
English (en)
Other versions
JP2017134453A5 (ja
JP2017134453A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016011522A priority Critical patent/JP6632394B2/ja
Publication of JP2017134453A publication Critical patent/JP2017134453A/ja
Publication of JP2017134453A5 publication Critical patent/JP2017134453A5/ja
Application granted granted Critical
Publication of JP6632394B2 publication Critical patent/JP6632394B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、複数のサービスモジュールが動作する情報処理装置第1管理システム含むネットワークシステム情報処理装置、情報処理装置における制御方法、及びプログラムに関する。
クラウドサービスやIoT(Internet of Things)の普及に伴い、通信制御装置が搭載された画像形成装置などの機器データを、ネットワーク経由でサーバが受信して管理を行うシステムが登場してきている。また、コンテンツの保管や変換処理をサーバが担い、画像形成装置などからのリクエストに応じて、ネットワーク経由でサーバが保持しているコンテンツの出力が行えるシステムも登場してきている。このようなシステムでは、画像形成装置などのクライアントと、クライアントにサービスを提供するサーバとが、LAN(Local Area Network)やWAN(Wide Area Network)、インターネットなどを介して互いに接続されている。
クライアントには、画像形成装置の動作を監視する監視サービスや、画像形成装置の出力実績を管理する出力管理サービス、出力ドキュメントを変換して提供するドキュメント変換サービスなど、ウェブサービスとして複数のサービスが提供される。それらのウェブサービスは、しばしば機能追加のバージョンアップや構成変更が行われるために接続先が切り替わることがある。そのため、サービスを提供するサーバは、クライアントが利用できる複数のウェブサービスの接続先を一元的に管理し、クライアントに通知できる手段を備えることも多い。
クライアントは、契約などにより利用が許可されたサービスのみを利用するため、サービスが提供する全てのサービスに接続するわけではない。クライアントが各々のサービスの利用開始時にサーバにサービスの接続先を問い合わせるようにすることで、切り替わるかもしれないサービスの接続先を、各クライアントが管理する煩雑さを除くことができる。
一方で、サービスを提供するサーバ自身が、サーバの故障やインフラ構成の変更などの要因で、別のサーバへの変更を必要とすることがある。サーバの変更に当たっては、DNS(Domain Name System)サーバ情報の変更を行うなどで、クライアントからのサービスの送信先(FQDN(Fully Qualified Domain Name)などのアドレス情報)を変わらないようにするのが望ましい。しかし、インフラ構成やサーバの切替方式の都合などにより、止むを得ず、送信先の変更が必要となる場合もある。
特許文献1には、クライアントに設定されている監視情報の送信先を変更する技術が開示されている。特許文献1では、変更後の送信先(監視装置)からの指示で変更後の送信先との接続を試み、接続に成功したことに応じて監視情報の送信先を該監視装置に変更する。また、特許文献1では、変更後の送信先との接続に失敗した場合には、監視情報の送信先を元の送信先に戻すように構成されている。
特開2011−135552号公報
クライアント−サーバシステムにおいては、サーバは、クライアントからのリクエストを受けて動作し、応答を返すのが一般的である。サーバが提供するサービスの接続先が変更になる場合には、クライアントは、クライアントから各サービスへリクエストが発行された際のレスポンスで、サービスの接続先の変更が通知され、サービスの接続先を再取得することで接続先を切り替える。
クライアントは、サービスを利用するタイミングで、サービスに接続を行う。
画像形成装置の出力実績を管理する出力管理サービスであれば、1日1回など定期的に送信を行うことが考えられる。
一方で、出力ドキュメントを変換して提供するドキュメント変換サービスなどは、画像形成装置を利用するユーザからの操作によりリクエストが発行されるために、ユーザの利用状況によっては、なかなかサービスにリクエストが送信されない場合がある。そのため、そのようなサービスについては、クライアントの持つサービスの接続先がなかなか切り替わらない可能性が考えられる。
クライアントの持つサービスの接続先が切り替わらないままに、変更前の接続先を閉じてしまうと、クライアントに接続先の変更を通知できなくなってしまう。そのため、変更前の接続先はサービスを利用する全てのクライアントからリクエストを受信するまで、変更前の接続先を閉じることができない。変更前と変更後の接続先を同一のサーバで運用している場合は良いが、サービスを提供するサーバごと別のサーバに切り替えるようなケースもある。そのようなケースでは、各サービスで全てのクライアントからリクエストを受信するまで、クライアントへの接続先の変更の通知のために変更前のサーバを維持しなければならず、その維持のためのコストやメンテナンスの負荷もかかってしまう。
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、管理システムが提供するサービスを利用する情報処理装置への接続先の変更の通知のために変更前の管理システムを長期で維持することなく、サービスを提供する管理システムごと別の管理システムに切り替え可能な仕組みを提供することである。
本発明は、複数のサービスモジュールが動作する情報処理装置と、第1管理システム含むネットワークシステムであって、前記情報処理装置は、前記複数のサービスモジュールのそれぞれの第1管理システムに対する接続先を示す情報と、接続先問い合せるための接続情報とを管理する管理手段と、前記いずれかのサービスモジュールにより、要求を送信する要求手段と、前記要求に対する前記第1管理システムから受信した応答が接続先の変更を通知するための所定の応答であった場合に、該所定の応答で指定された接続先の問い合せ先を示す情報を利用して、新たな接続先を取得する第1取得手段と、前記管理手段で管理される、前記要求を送信したサービスモジュールの接続先を示す情報を前記第1取得手段により取得された新たな接続先を示す情報に更新し、前記接続情報を前記所定の応答で指定された接続先の問い合せ先を示す情報に更新する更新手段と、前記管理手段で管理される、前記更新手段により接続先を示す情報が更新されたサービスモジュール以外のサービスモジュールの接続先を示す情報を削除または所定値に変更する第1変更手段と、を有し、前記要求手段は、前記第1取得手段により取得された新たな接続先に対して、要求を送信し、前記第1管理システムは、前記要求を受信した場合に、接続先の問い合せ先を示す情報を指定した前記所定の応答を送信する応答手段を有する、ことを特徴とする。
本発明によれば、管理システムが提供するサービスを利用する情報処理装置への接続先の変更の通知のために変更前の管理システムを長期で維持することなく、サービスを提供する管理システムごと別の管理システムに切り替えることができる。
本実施例のネットワークシステムの構成を例示する図 サービス提供サーバ、サービス利用クライアントのハードウェア構成図 サービス提供サーバ、サービス利用クライアントのソフトウェア構成図 実施例1のサービス利用クライアントがサービス提供サーバへリクエストを発行するときの処理を示すフローチャート 実施例2のサービス利用クライアントがサービス提供サーバへリクエストを発行するときの処理を示すフローチャート
以下、本発明を実施するための形態について図面を用いて説明する。
図1は、本発明の一実施例を示すネットワークシステムの構成を例示する図である。
図1に示すように、本発明のネットワークシステムとしてのサービス接続管理システムは、サービス提供サーバ110、111とサービス利用クライアント120を有する。
サービス提供サーバ110、111は、それぞれ、クライアントからのリクエストに応じて種々のサービスを提供するウェブAPI(Application Programming Interface)を持ち、サービス利用クライアント120へ公開、提供している管理システムである。サービス提供サーバ110、111は、契約などにより利用が許可される単位ごとにサービスが分かれ、例えば、画像形成装置の出力実績を管理する出力管理サービスや、出力ドキュメントを変換して提供するドキュメント変換サービスなどを提供する。なお、サービス提供サーバ110、111は、それぞれ、複数のサーバから構成されていてもよく、例えばクラウドシステムであってもよい。
サービス利用クライアント120は、例えば、画像形成装置、或いは画像形成装置と互いに通信可能に接続されて稼働状況を監視する監視クライアントである。サービス利用クライアント120は、サービス提供サーバ110、111とインターネットなどの通信回線130を介して接続される。サービス利用クライアント120は、サービス提供サーバ110、111の公開するウェブAPIにリクエストを送信することで、提供されるサービスを利用する。
なお、サービス利用クライアント120は、画像形成装置や画像形成装置の稼働状況を監視する監視クライアントに限定されるものではない。サービス利用クライアント120は、サービス提供サーバ110,111等により提供される複数のサービスを利用する情報処理装置であれば、どのような装置であってもよい。例えば、ネットワークカメラ、ナビゲーションシステム、テレビジョン等のネットワーク家電などであっても、これらの装置を監視する装置であってもよい。また、サービス利用クライアント120は、通常、複数存在する。
サービス提供サーバ110、111が公開するウェブAPIは、しばしば機能追加のバージョンアップや構成変更が行われるために、接続先が切り替わることがある。特に、故障やインフラ構成の変更などの要因でサービスを提供するサーバ自身が別のサーバへの変更を必要とするような場合には、サービス提供サーバ110のサービスを、別のサービス提供サーバ111に移動させる必要が生じる。このような場合には、サービス利用クライアント120の保持する接続先を、サービス提供サーバ110のサービスから別のサービス提供サーバ111のサービスへと、利用する全てのサービスで切り替えることになる。
即ち、本実施例では、サービス提供サーバ110ごと別のサービス提供サーバ111に切り替えるようなケースを想定している。そして、一部にクライアントからの定期的なリクエストが発生しないサービスがある場合でも、クライアントへの接続先の変更の通知のために変更前のサーバを長期で維持する必要がなく、安全にサービスの接続先を変更できる仕組みを提供することを目的とする。
本実施例では、サービス提供サーバ111は、サービス提供サーバ110を置き換えるサーバであり、サービス提供サーバ111もサービス提供サーバ110と同様のハードウェア構成を備えるものとする。以下、サービス提供サーバ110、111のハードウェア構成について説明する。
図2(A)は、サービス提供サーバ110、111のハードウェア構成を例示する図である。
サービス提供サーバ110は、出力I/F部201、入力I/F部202、記憶装置203、メモリ204、CPU205、通信I/F部206等を有する。
出力I/F部201は、ディスプレイなどの出力装置と接続するためのインタフェースである。入力I/F部202は、キーボードやポインティングデバイスなどの入力装置と接続するためのインタフェースである。通信I/F部206は、ネットワークなどに接続するためのインタフェースである。
記憶装置203は、例えばハードディスクドライバブ(HDD)やソリッドステートドライブ(SSD)等である。記憶装置203には、OS(Operating System)や、サービス利用クライアント120からのリクエストを受け付けてサービスを提供するためのサービスアプリケーション等の各種プログラムや、各種データなどが格納される。
CPU205は、記憶装置203からOSやサービスアプリケーション等のプログラムをメモリ204にロードし、実行することにより、各種制御を実現する。
通信I/F部206は、通信回線130に接続され、サービス利用クライアント120と、SOAPプロトコルやRESTアーキテクチャスタイルなどにより相互にメッセージの送受信を行う。
図2(B)は、サービス利用クライアント120のハードウェア構成を例示する図である。
サービス利用クライアント120は、出力I/F部211、入力I/F部212、記憶装置213、メモリ214、CPU215、通信I/F部216等を有する。
出力I/F部211は、ディスプレイなどの出力装置と接続するためのインタフェースである。入力I/F部212は、キーボードやポインティングデバイスなどの入力装置と接続するためのインタフェースである。通信I/F部216は、ネットワークなどに接続するためのインタフェースである。
記憶装置213は、例えばHDDやSSD等である。記憶装置203には、OSや、サービス提供サーバ110の提供するサービスに接続して利用するためのサービス利用アプリケーション等の各種プログラムや、各種データなどが格納される。
CPU215は、記憶装置213からOSやサービス利用アプリケーション等のプログラムをメモリ214にロードし、実行することにより、各種制御を実現する。
通信I/F部216は、通信回線130に接続され、サービス提供サーバ110、111とのメッセージの送受信を行う。
図3(A)は、サービス提供サーバ110上で動作するサービスアプリケーションをはじめとするソフトウェア構成の中で、特に本発明に係る部分の機能ブロックを例示する図である。図3(A)に示す各部は、サービス提供サーバ110のCPU205が記憶装置203に格納されるプログラムをメモリ204にロードして実行することにより実現されるものである。
サービス提供部301は、ウェブAPIを公開し、サービス利用クライアント120からのリクエストを受け付けてサービスを提供するサービスアプリケーションである。サービス提供サーバ110は、複数のサービス提供部301を有し、その夫々のサービス提供部301ごとにサービスアプリケーションが独立して動作する。
サービス提供サーバ110の移転などに伴ってサービス提供サーバ110でのウェブAPIの公開を終了し、新たに用意したサービス提供サーバ111にその機能を移動させることがある。そのときには、サービス利用クライアント120からのリクエストに対してサービス提供部301は、サービス提供サーバ111への移転を通知するサーバ変更応答を返却する。このサーバ変更応答には、変更後のサーバ(サービス提供サーバ111)のアドレス情報が含まれる。サーバ変更応答とは、例えばHTTPステータスコードで定義される"HTTP 301/Moved Permanently"や"HTTP 308/Permanent Redirect"の応答であり、変更後のサーバのアドレス情報をLocationヘッダにて通知する。
サービス接続先管理部302は、複数のサービス提供部301が提供するサービスを利用するための夫々の接続先アドレスを、一元的に保持、管理する。サービス接続先管理部302は、サービス利用クライアント120からの各サービスの接続先の問い合わせを受け付け、各サービスを利用するための接続先アドレスを返却する。サービス接続先管理部302が管理する接続先アドレスは、サービス提供サーバ110が提供するサービスだけでなく、他のサーバが提供し、サービス利用クライアント120が利用するサービスもまとめて管理してもよい。
表1に、サービス接続先管理部302が管理するサービスの接続先アドレスの情報の例を示す。
Figure 0006632394
表1において、サービスIDは、サービス提供部301が提供するサービスを一意に特定するためのID情報である。そして、表示1は、それぞれのサービスIDごとに、対応するサービスのウェブAPIを利用するためのサービス接続先アドレスを保持する。
図3(B)は、サービス提供サーバ111上で動作するサービスアプリケーションをはじめとするソフトウェア構成の中で、特に本発明に係る部分の機能ブロックを例示する図である。なお、サービス提供サーバ111は、サービス提供サーバ110を置き換えるサーバであり、サービス提供サーバ111もサービス提供サーバ110と同様の機能ブロックを備える。図3(B)に示す各部は、サービス提供サーバ111のCPU205が記憶装置203に格納されるプログラムをメモリ204にロードして実行することにより実現されるものである。
サービス提供部311は、サービス提供部301の置き換えとしてウェブAPIを公開し、サービス利用クライアント120からのリクエストを受け付けてサービスを提供するサービスアプリケーションである。サービス提供サーバ111は、複数のサービス提供部311を有し、その中には従来のサービスアプリケーションの置き換えだけでなく、サービス提供部301では提供されていなかった新たなサービスアプリケーションが追加されることもある。
サービス接続先管理部312は、複数のサービス提供部311が提供するサービスを利用するための夫々の接続先アドレスを、一元的に保持、管理する。サービス接続先管理部312は、サービス利用クライアント120からの各サービスの接続先の問い合わせを受け付け、各サービスを利用するための接続先アドレスを返却する。サービス接続先管理部312が管理する接続先アドレスは、サービス提供サーバ111が提供するサービスだけでなく、他のサーバが提供し、サービス利用クライアント120が利用するサービスもまとめて管理してもよい。
図3(C)は、サービス利用クライアント120上で動作するサービス利用アプリケーションのソフトウェア構成の中で、特に本発明に係る部分の機能ブロックを例示する図である。図3(C)に示す各部は、サービス利用クライアント120のCPU215が記憶装置213に格納されるプログラムをメモリ214にロードして実行することにより実現されるものである。
サービス接続先保持部351は、サービス提供サーバ110から各サービスの接続先アドレスを取得するための取得先アドレスと、サービス提供サーバ110から取得した各サービスのサービス接続先アドレスを保持する。
表2に、サービス接続先保持部351が保持するアドレス情報の例を示す。
Figure 0006632394
表2において、サービスIDは、サービス利用クライアント120が利用するサービスのID情報である。そして、表2は、それぞれのサービスIDごとに、対応するサービスのウェブAPIを利用するためのサービス接続先アドレスを保持する。
表2に保持されるアドレス情報のうち、「アドレス取得先」は、サービス提供サーバ110から各サービスの接続先アドレスを取得するための取得先アドレス(接続情報)であり、予め登録されている情報である。他のアドレス情報は、サービスの利用開始に伴って取得先アドレスを利用してサービス提供サーバ110から取得した各サービスのサービス接続先アドレスである。なお、サービスへのリクエストの度に、サービス接続先アドレスを取得するのでは効率的とはいえないため、取得したサービス接続先アドレスをサービス接続先保持部351に保持して、次回以降のリクエストの際に再利用できるようにしている。表2の例では、サービス利用クライアント120は、2つのサービス「BasicService」、「Service-B」を利用するため、その各々のサービスの接続先アドレスをサービス提供サーバ110から取得し、サービス接続先保持部351に保持している。このように、サービス接続先保持部351は、複数のサービスモジュールのそれぞれのサービス提供サーバの接続先を示す情報(サービス接続先アドレス)と、接続先の問い合せるための接続情報(アドレス取得先)とを管理する。
サービス利用アプリケーション動作部352は、サービス提供サーバ110が提供するサービスを利用するサービス利用アプリケーション(サービスモジュール)であり、サービスへのリクエスト送信を指示する。サービス利用クライアント120は、しばしば利用するサービスごとなどの単位で、複数のサービス利用アプリケーション動作部352から構成され、夫々のサービス利用アプリケーション動作部352が独立して動作する。
サービス接続先取得部353は、各々のサービス利用アプリケーション動作部352からのサービスへのリクエスト送信の指示を受けて動作し、リクエストを送信するための当該サービスの接続先アドレスを取得する。このとき、サービス接続先取得部353は、サービス接続先保持部351が接続先アドレスを保持していれば、サービス接続先保持部351から、その接続先アドレスを取得する。一方、サービス接続先保持部351が接続先アドレスを保持していなければ、サービス接続先取得部353は、サービス提供サーバ110へ当該サービスの接続先アドレスを問い合わせる。
サービスリクエスト送信部354は、サービス接続先取得部353が取得した接続先アドレス宛てに、サービス利用アプリケーション動作部352からの指示に従ってリクエストを送信する。
サービス接続先更新部355は、サービスリクエスト送信部354のリクエストへの応答でサービス提供サーバ110の移転通知応答を受信した場合に動作し、サービス接続先保持部351の保持する接続先アドレスの更新処理を行う。
以下、図4のフローチャートに従って、サービス利用アプリケーション動作部352からの指示によってサービス提供サーバ110の提供するサービスへリクエストを送信するときのサービス利用クライアント120の接続先管理処理を説明する。
図4は、実施例1においてサービス利用クライアント120がサービス提供サーバ110の提供するサービスへの接続先管理処理の一例を示すフローチャートである。なお、このフローチャートの処理は、サービス利用クライアント120のCPU215が記憶装置213に格納されるプログラムをメモリ214にロードして実行することにより実現されるものである。
サービスリクエスト送信部354は、サービス利用アプリケーション動作部352からサービスへのリクエスト送信の指示を受けると、該リクエスト送信の指示に基づいて、接続するサービスを特定する(S401)。
サービスリクエスト送信部354は、特定したサービスのサービスIDに対応するサービス接続先アドレスを、サービス接続先取得部353に要求する。サービス接続先取得部353は、該サービスIDに対応するサービス接続先アドレスをサービス接続先保持部351から取得するよう試みる。
そして、サービス接続先取得部353は、サービス接続先保持部351からサービス接続先アドレスを取得できたか否かを判断する(S402)。サービス接続先取得部353は、サービス接続先保持部351に該当するサービスのサービス接続先アドレスが格納されておらず取得できなかった場合、又は、所定値を取得した場合には、サービス接続先アドレスなし(S402でNo)と判断する。一方、サービス接続先取得部353は、サービス接続先保持部351からサービス接続先アドレス(所定値以外)を取得した場合には、サービス接続先アドレスあり(S402でYes)と判断する。なお、上述の所定値は、予め決められた値であり、サービス接続先アドレスとなり得ないような値であればどのような値であってもよい。
サービス接続先取得部353は、サービス接続先保持部351からサービス接続先アドレス(所定値以外)を取得した場合(S402でYesの場合)、該サービス接続先アドレスをサービスリクエスト送信部354に返却する。サービスリクエスト送信部354は、サービス接続先保持部351からサービス接続先アドレスが返却されると、S405に処理を進める。
一方、サービス接続先取得部353は、サービス接続先保持部351からサービス接続先アドレスを取得できなかった(又は、所定値を取得した)場合(S402でNoの場合)、S403に処理を進める。
S403において、サービス接続先取得部353は、サービス接続先保持部351の保持する「アドレス取得先」に対して該サービスの接続先アドレスを問い合わせ、該サービスの接続先アドレスを取得する。該接続先アドレスが取得できたら、サービス接続先取得部353は、該接続先アドレスをサービス接続先保持部351に保存するとともに、該接続先アドレスをサービスリクエスト送信部354に返却する。サービスリクエスト送信部354は、サービス接続先保持部351からサービス接続先アドレスが返却されると、S405に処理を進める。なお、上記S403、S404では、上記S401で特定されたサービスの接続先のみでなく、前記「アドレス取得先」から取得できる全ての接続先のそれぞれについて、接続先アドレスを取得し、サービス接続先取得部353に保存するようにしてもよい。例えば、サービス接続先保持部351が保持するアドレス情報(例えば表2)を取得して、サービス接続先取得部353を更新するようにしてもよい。また、サービス接続先取得部353は、サービス接続先保持部351にサービス接続先アドレスが保存されていない(又は、所定値が保存されている)全てのサービスIDに対応するサービス利用アプリケーション動作部352のそれぞれについて、接続先アドレスを取得し、サービス接続先取得部353に保存するようにしてもよい。
S405において、サービスリクエスト送信部354は、サービス接続先取得部353から返却された接続先アドレス宛てに(即ちサービス提供サーバ110の提供するサービスへ)、リクエストを送信する。
次に、S406において、サービスリクエスト送信部354は、サービスへのリクエストの応答で、変更後のサーバ(サービス提供サーバ111)のアドレス情報を含むサーバ変更応答を受け取ったか否かを判断する。
そして、上記サーバ変更応答を受け取っていないと判断した場合(S406でNoの場合)、サービスリクエスト送信部354は、本フローチャートの処理を終了し、サービス利用クライアント120において応答内容に基づく処理が行われる。
一方、上記サーバ変更応答を受け取ったと判断した場合(S406でYesの場合)、サービスリクエスト送信部354は、サービス接続先更新部355に処理を渡し、サービス接続先更新部355において、S407以降の処理が行われる。
サービス接続先更新部355は、まず、上記サーバ変更応答で通知(指定)された変更後のサーバのアドレスに対して、該サービスの接続先アドレスを問い合わせ、該サービスの接続先アドレスを取得する(S407)。このとき、サービス提供サーバ111のサービス接続先管理部312が、サービス利用クライアント120からのサービスの接続先の問い合わせを受け付け、サービス提供部311の該サービスを利用するための接続先アドレスを返却する。
次に、サービス接続先更新部355は、上記S407で取得した接続先アドレス宛てに(即ちサービス提供サーバ111の提供するサービスへ)、改めてリクエストを送信する(S408)。
次に、サービス接続先更新部355は、上記S408で送信したサービスへのリクエストの応答で、リクエストがサービス提供サーバ111の該サービスで正常に受け付けられて処理されたこと(リクエスト成功)を示す応答を受け取ったか否かを判断する。そして、リクエスト失敗を示す応答を受け取ったと判断した場合(S409でNoの場合)、サービス接続先更新部355は、本フローチャートの処理を終了する。
一方、リクエスト成功を示す応答を受け取ったと判断した場合(S409でYesの場合)、サービス接続先更新部355は、アドレス情報を更新する(S410)。まず、サービス接続先更新部355は、サービス接続先保持部351の接続先アドレスのうち、「アドレス取得先」を、上記S405で送信したリクエストへの応答で通知されたサーバのアドレスで更新する。さらに、サービス接続先更新部355は、該サービスの接続先アドレスを、上記S407で取得した接続先アドレスで更新する。
次に、S411において、サービス接続先更新部355は、上記S410で接続先アドレスを更新したサービス以外のサービスの接続先アドレスをクリア(削除、又は、上述した所定値に更新)する。これにより、変更前の接続先だったサービス提供サーバ110のアドレス情報がサービス接続先保持部351に残ることを防ぐことができる。
上記S411のようにすることで、その後に、該サービス以外のサービスへのリクエストが発生したときには、サービス接続先保持部351にアドレス情報が残っていない(又は所定値となる)ため、S403において、サービス提供サーバ111へ接続先アドレスの取得処理が行われる。このように、1つのサービスでサーバ変更応答を受け取れば、変更前の接続先だったサービス提供サーバ110へのリクエストが発生しなくなる。よって、特定の条件下でしかリクエストの発生しないサービスが存在していても、そのサービスのためだけに変更前のサーバを維持しなくて済むようになる。
なお、本実施例において、S411では、該サービス以外の全てのサービスの接続先アドレスをクリアする構成について説明した。しかし、サービス提供サーバ110以外が提供するサービスも利用している場合もある。そのような場合を想定し、S411では、該サービスの接続先アドレスと同一ドメインのアドレスのみをクリアするようにしてもよい。また、特定の条件下でしかリクエストの発生しないサービスが予めわかっているのであれば、そのサービスを登録等しておき、そのサービスの接続先アドレスのみをクリアするようにしてもよい。
以上、実施例1のクライアント通信管理システムにおいて、サービス利用クライアント120は、1つのサービスモジュールでサーバ変更応答を受け取ったら、該サービスモジュールの接続先アドレスを更新するとともに、該サービスモジュール以外のサービスモジュールの接続先アドレスをクリアする。このような構成により、一部にクライアントからの定期的なリクエストが発生しないサービスがあっても、クライアントに変更前のサービスの接続先アドレスが残ることがなくなる。よって、クライアントへの接続先の変更の通知のために、変更前のサーバを長期で維持する必要がなくなり、維持のためのコストやメンテナンスの負荷を抑え、安全にサービスの接続先を変更できるクライアント通信管理システムを構築できる。
上述した実施例1では、サービスの接続先アドレスの変更形態として、サービス提供サーバ110ごと別のサービス提供サーバ111へ切り替わるようなケースを想定したものであった。しかし、サービスアプリケーションのバージョンアップなどで、サービス提供サーバ110の提供する複数のサービスのうち、一部のサービスのみを別の接続先アドレスへ変更するようなケースもある。このケースでは、サービス接続先管理部302は、そのままサービス提供サーバ110に維持されるため、各サービスの接続先アドレスを取得するための取得先アドレスである「アドレス取得先」の変更は伴わない。このような場合に、サービス提供サーバ110ごと別のサービス提供サーバ111へ切り替わることを前提としたアドレス更新処理(実施例1)は、一旦全サービスの接続先アドレスをクリアすることになり処理のオーバーヘッドが大きくなる。
そこで、実施例2では、一部のサービスのみを別の接続先アドレスへ変更するケースを考慮した実施の形態を説明する。
実施例2のシステム構成図は図1と、ハードウェア構成は図2(B)、図2(B)と同一である。サービス提供サーバ110、111やサービス利用クライアント120のソフトウェア構成も、それぞれ図3(A)、図3(B)、図3(C)と同一である。以下、実施例1と異なる部分のみ説明する。
以下、図5のフローチャートに従って、実施例2において、サービス利用アプリケーション動作部352からの指示によってサービス提供サーバ110の提供するサービスへリクエストを送信するときのサービス利用クライアント120の接続先管理処理を説明する。
図5は、実施例2においてサービス利用クライアント120がサービス提供サーバ110の提供するサービスへの接続先管理処理の一例を示すフローチャートである。なお、このフローチャートの処理は、サービス利用クライアント120のCPU215が記憶装置213に格納されるプログラムをメモリ214にロードして実行することにより実現されるものである。
まず、S501〜S505は、図4のS401〜S405と同一の処理であるので説明を省略する。
S506において、サービスリクエスト送信部354は、サービスへのリクエストの応答で、サービスへ接続できなかったことを示す応答(接続エラー応答)を受け取ったか否かを判断する。そして、上記接続エラー応答を受け取ったと判断した場合(S506でYesの場合)、サービスリクエスト送信部354は、サービス接続先更新部355に処理を渡し、サービス接続先更新部355において、S507以降の処理が行われる。
S507において、サービス接続先更新部355は、上記サーバ変更応答を受け取ったサービスの接続先アドレスをクリア(削除、又は、所定値に更新)し、再びサービス接続先取得部353に処理を戻し、サービス接続先取得部353において、S502以降の処理(該サービスの接続先アドレス取得の処理)が行われる。
なお、上記サービスへ接続できなかったことを示す応答(接続エラー応答)とは、例えばHTTPステータスコードで定義される"HTTP 404/Not Found"や"HTTP 410/Gone"の応答である。サービス提供サーバ110が該サービスへのリクエストに対して、サービス利用クライアントに接続先アドレスの変更処理を動作させるために意図的にこれらの応答を返すようにしてもよい。
一方、上記S506において、接続エラー応答を受け取っていないと判断した場合(S506でNoの場合)、サービスリクエスト送信部354は、S508に処理を進める。なお、S508〜S513は、図4のS406〜S411と同一の処理であるので説明を省略する。
以上のように、サービスへのリクエスト時の応答(接続エラー応答、サーバ変更応答など)により、サービス接続先更新部355の接続先アドレスの更新処理を変えることで、一部のサービスのみを別の接続先アドレスへ変更する場合にも対応可能となる。また、一部のサービスの接続先アドレスが無効になった場合であっても、該サービスの接続先アドレスを更新させることができる。このように、一部にクライアントからの定期的なリクエストが発生しないサービスがあっても、変更前のサービスの接続先アドレスに繋がらなければ変更後のサーバに接続先アドレスを再取得させることができる。接続先アドレスの変更を通知するために変更前のサーバを残す必要がないので、変更前のサーバを長期で維持することなしに、安全にサービスの接続先を変更できるクライアント通信管理システムを提供できる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。

Claims (9)

  1. 複数のサービスモジュールが動作する情報処理装置と、第1管理システム含むネットワークシステムであって、
    前記情報処理装置は、
    前記複数のサービスモジュールのそれぞれの第1管理システムに対する接続先を示す情報と、接続先問い合せるための接続情報とを管理する管理手段と、
    前記いずれかのサービスモジュールにより、要求を送信する要求手段と、
    前記要求に対する前記第1管理システムから受信した応答が接続先の変更を通知するための所定の応答であった場合に、該所定の応答で指定された接続先の問い合せ先を示す情報を利用して、新たな接続先を取得する第1取得手段と、
    前記管理手段で管理される、前記要求を送信したサービスモジュールの接続先を示す情報を前記第1取得手段により取得された新たな接続先を示す情報に更新し、前記接続情報を前記所定の応答で指定された接続先の問い合せ先を示す情報に更新する更新手段と、
    前記管理手段で管理される、前記更新手段により接続先を示す情報が更新されたサービスモジュール以外のサービスモジュールの接続先を示す情報を削除または所定値に変更する第1変更手段と、を有し、
    前記要求手段は、前記第1取得手段により取得された新たな接続先に対して、要求を送信し、
    前記第1管理システムは、
    前記要求を受信した場合に、接続先の問い合せ先を示す情報を指定した前記所定の応答を送信する応答手段を有する、
    ことを特徴とするネットワークシステム。
  2. 第1管理システム通信可能であり、複数のサービスモジュールが動作する情報処理装置であって、
    前記複数のサービスモジュールのそれぞれの第1管理システムに対する接続先を示す情報と、接続先問い合せるための接続情報とを管理する管理手段と、
    前記いずれかのサービスモジュールにより、要求を送信する要求手段と、
    前記要求に対する前記第1管理システムから受信した応答が接続先の変更を通知するための所定の応答であった場合に、該所定の応答で指定された接続先の問い合せ先を示す情報を利用して、新たな接続先を取得する第1取得手段と、
    前記管理手段で管理される、前記要求を送信したサービスモジュールの接続先を示す情報を前記第1取得手段により取得された新たな接続先を示す情報に更新し、前記接続情報を前記所定の応答で指定された接続先の問い合せ先を示す情報に更新する更新手段と、
    前記管理手段で管理される、前記更新手段により接続先を示す情報が更新されたサービスモジュール以外のサービスモジュールの接続先を示す情報を削除または所定値に変更する第1変更手段と、を有し、
    前記要求手段は、前記第1取得手段により取得された新たな接続先に対して、要求を送信することを特徴とする情報処理装置。
  3. 前記サービスモジュールの接続先を示す情報が、前記管理手段に存在しない、又は、所定値であった場合には、前記管理手段により管理される接続情報を利用して、該サービスモジュールの接続先を示す情報を取得する第2取得手段を有することを特徴とする請求項に記載の情報処理装置。
  4. 前記第2取得手段は、前記複数のサービスモジュールのそれぞれについて、接続先を示す情報を取得することを特徴とする請求項に記載の情報処理装置。
  5. 前記更新手段は、前記第1取得手段により取得された新たな接続先に対して前記要求手段が行った前記要求の送信が失敗であった場合には、前記新たな接続先を示す情報を用いた更新を行わず、前記要求の送信が成功であった場合には、前記新たな接続先を示す情報を用いた更新を行うことを特徴とする請求項乃至のいずれか1項に記載の情報処理装置。
  6. 前記要求に対する前記第1管理システムから受信した応答が接続先に対応するサービスへ接続できなかったことを示す応答であった場合に、前記管理手段により管理される、該接続先を示す情報を削除または所定値に変更する第2変更手段を有することを特徴とする請求項乃至のいずれか1項に記載の情報処理装置。
  7. 前記第1管理システムからの前記所定の応答で指定された接続先の問い合せ先を示す情報を利用して取得された前記新たな接続先は、前記第1管理システムとは異なる第2管理システムの接続先を示すことを特徴とする請求項乃至のいずれか1項に記載の情報処理装置。
  8. 第1管理システム通信可能であり、複数のサービスモジュールが動作し、該複数のサービスモジュールのそれぞれの第1管理システムに対する接続先を示す情報と、接続先問い合せるための接続情報とを管理する情報処理装置における制御方法であって、
    前記いずれかのサービスモジュールにより、要求を送信する要求ステップと、
    前記要求に対する前記第1管理システムから受信した応答が接続先の変更を通知するための所定の応答であった場合に、該所定の応答で指定された接続先の問い合せ先を示す情報を利用して、新たな接続先を取得する第1取得ステップと、
    前記要求を送信したサービスモジュールの接続先を示す情報として管理された情報を前記第1取得ステップで取得された新たな接続先を示す情報に更新し、前記管理された接続情報を前記所定の応答で指定された接続先の問い合せ先を示す情報に更新する更新ステップと、
    前記更新ステップで接続先を示す情報が更新されたサービスモジュール以外のサービスモジュールのために管理された接続先を示す情報を削除または所定値に変更する第1変更ステップと、を有し、
    前記要求ステップでは、前記第1取得ステップで取得された新たな接続先に対して、要求が送信されることを特徴とする制御方法。
  9. コンピュータを、請求項乃至のいずれか1項に記載の手段として機能させるためのプログラム。
JP2016011522A 2016-01-25 2016-01-25 ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム Active JP6632394B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016011522A JP6632394B2 (ja) 2016-01-25 2016-01-25 ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016011522A JP6632394B2 (ja) 2016-01-25 2016-01-25 ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2017134453A JP2017134453A (ja) 2017-08-03
JP2017134453A5 JP2017134453A5 (ja) 2019-03-07
JP6632394B2 true JP6632394B2 (ja) 2020-01-22

Family

ID=59504903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016011522A Active JP6632394B2 (ja) 2016-01-25 2016-01-25 ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6632394B2 (ja)

Also Published As

Publication number Publication date
JP2017134453A (ja) 2017-08-03

Similar Documents

Publication Publication Date Title
USRE48725E1 (en) Methods for accessing data in a compressed file system and devices thereof
TWI431978B (zh) Methods, devices and systems for obtaining resources
US20190320033A1 (en) Apparatus and method to reduce communication traffic in a decentralized processing system of a publish/subscribe model
JP2004533687A (ja) コンピュータ・ネットワークにおけるサービスの動的配備
JP5359201B2 (ja) コンテンツの削除更新プログラム
JP2011028547A (ja) 仮想マシン起動端末および仮想マシン起動プログラム
CN111726400A (zh) 反向连接的方法、装置和服务端系统
US8867073B2 (en) Server apparatus, network system, job processing method, and storage medium
JP5929946B2 (ja) 画像形成システム、中継サーバー、通信制御方法及びプログラム
JP6540063B2 (ja) 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム
US11194571B2 (en) Management system and method for controlling same, and storage medium
JP6632394B2 (ja) ネットワークシステム、情報処理装置、情報処理装置における制御方法、及びプログラム
JP6380453B2 (ja) 画像形成システム、中継サーバー、通信制御方法及びプログラム
EP2802108B1 (en) Data-centric communications system and data forwarding method
JP6830161B2 (ja) アクセス管理装置、アクセス管理方法、及びプログラム
US20190052347A1 (en) Communication system, control device, relay device, control method, and storage medium in which program is stored
JP4272105B2 (ja) ストレージグループ設定方法および装置
JP6728744B2 (ja) データ提供システム、データ提供方法、データ提供装置、更新対象装置及びコンピュータ・プログラム
WO2022190387A1 (ja) 管理システム及び管理方法
JP2011061608A (ja) 仮想サーバ管理システム、画像処理システム、仮想サーバ管理装置及び制御プログラム
JP2006259845A (ja) サーバ装置、サーバシステムおよびサーバシステムの負荷分散方法
JP6265473B2 (ja) Webサービスシステム、Webサービスメッセージ仲介方法およびプロキシサーバ
JP2009245118A (ja) アプリケーションサービス提供システム、及び方法、並びにアプリケーション移行方法
JP4862346B2 (ja) ダウンロードシステム及びプログラム
JP6643706B2 (ja) 配布履歴管理プログラム、配布履歴管理装置および配布履歴管理方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180306

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191029

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191210

R151 Written notification of patent or utility model registration

Ref document number: 6632394

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151