[go: up one dir, main page]

JP5602592B2 - ネットワークシステム、サーバ、ログ登録方法、及び、プログラム - Google Patents

ネットワークシステム、サーバ、ログ登録方法、及び、プログラム Download PDF

Info

Publication number
JP5602592B2
JP5602592B2 JP2010252413A JP2010252413A JP5602592B2 JP 5602592 B2 JP5602592 B2 JP 5602592B2 JP 2010252413 A JP2010252413 A JP 2010252413A JP 2010252413 A JP2010252413 A JP 2010252413A JP 5602592 B2 JP5602592 B2 JP 5602592B2
Authority
JP
Japan
Prior art keywords
registration
log
job log
unit
request
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.)
Expired - Fee Related
Application number
JP2010252413A
Other languages
English (en)
Other versions
JP2012103928A (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 JP2010252413A priority Critical patent/JP5602592B2/ja
Priority to US13/288,853 priority patent/US9160621B2/en
Publication of JP2012103928A publication Critical patent/JP2012103928A/ja
Application granted granted Critical
Publication of JP5602592B2 publication Critical patent/JP5602592B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1273Print job history, e.g. logging, accounting, tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、画像形成装置におけるログをインターネット上で登録するための制御に関する。
従来より、プリンタ、スキャナ、ファクシミリ、複写機、及びこれらを統合したマルチファンクションプリンタ(MFP)等の画像形成装置で実行されたジョブの履歴(ジョブログ)を効率的に管理するためのジョブ管理方法が開発されている。ジョブログの収集方法は、画像形成装置にジョブログの送信が可能となるアプリケーションを導入し、画像形成装置自身がジョブログを送る方法がある(特許文献1)。
また、ジョブログの収集方法には、ネットワーク上のサーバコンピュータ等が各種画像形成装置で実行された各ジョブのジョブログを当該画像形成装置から取得する方法がある。
従来では、ジョブログを登録する際、ジョブログを送信する画像形成装置側とジョブログを登録するサーバ側が通信を維持(同期)した状態で、登録の処理が行われていた。
近年、サーバコンピュータ側で各種処理を行う形態として、クラウドコンピューティングシステムやSaaS(Software as a Service)という技術が利用され始めている。
クラウドコンピューティングでは、多くのコンピューティング・リソースを利用し、データ処理を分散実行することで、多くの要求を同時に処理することが可能となる。以下、コンピューティング・リソースを利用し機能を提供する、1つの処理の実態を「インスタンス」と総称する。
特開2007−166176号公報
画像形成装置からジョブログを収集するジョブログ収集サーバや画像形成装置などから、クラウドを構成するサーバコンピュータ群にジョブログを登録する形態を考える。以下、ジョブログをサーバコンピュータ群へ登録するジョブログ収集サーバや画像形成装置のことを「クライアント」と総称する。
従来のジョブログ登録方法のように、同期した状態でジョブログを登録すると、登録の処理が開始されてから完了するまでインスタンスが占有されてしまう。また、従来のジョブログ登録はイントラネットで行われていたため、システム側は、クライアントの数を把握することができた。このため、登録のタイミングをスケージューリングすることで、ストレスの少ない、ジョブログの登録を実現していた。
しかしながら、インターネット環境でジョブログ登録を行うようになると、システム側は、どのタイミングでどれくらいの数のクライアントからアクセスされるか把握することができなくなってしまった。このため、多くのクライアントから同時に登録要求を受ける可能性が生じてしまう。なお、クラウドコンピューティングでは、多くのインスタンスを利用し、データ処理を分散実行することで、多くのクライアントからの要求を同時に処理することが可能である。
しかしながら、クラウドコンピューティングでジョブログ収集システムを実現させるには、複数のクライアントから同時アクセスされても安定した運用を行うため多くのインスタンスを長時間起動させておく必要がある。クラウドコンピューティングは、インスタンスの数を自由に設定することで、多くのリソースを自由に利用できることを特徴とするが、インスタンスの起動時間に応じて課金が行われ、数を増やせば増やすほど運用コストが増加してしまうという問題があった。
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、クラウドコンピューティングでのインスタンスの総起動時間を減らしログ登録の運用コストを削減する仕組みを提供することである。
本発明は、クライアントと、前記クライアントと通信可能な1台以上のサーバコンピュータからなるサーバコンピュータ群で構成されるサーバとを有するネットワークシステムであって、前記サーバは、前記クライアントから取得したログを保存するための保存手段と、前記クライアントから送信されるログの登録予約要求を受け付けて、前記クライアントから前記保存手段に最後に登録されたログの識別情報を、前記クライアントに返信する1又は複数の登録予約要求受付手段と、前記クライアントから送信されるログの登録要求を受け付けて、前記ログを一時保存手段に保存し、前記登録要求を処理するための実行命令データを登録命令保存手段に登録する1又は複数の登録要求受付手段と、前記登録命令保存手段への実行命令データの登録とは非同期で前記登録命令保存手段から前記実行命令データを取得して前記一時保存手段に保存された前記ログを前記保存手段に登録処理する1又は複数の登録処理手段とを有し、前記クライアントは、ログを保持する保持手段と、前記保持手段に保持されるログの登録予約要求を前記登録予約要求受付手段に送信する登録予約要求送信手段と、前記登録予約要求の送信に応じて返信されるログの識別情報に基づいて登録要求するログを前記保持手段に保持されるログから選択する選択手段と、前記選択手段により選択されたログを前記登録要求受付手段に送信して登録要求する登録要求送信手段とを有する、ことを特徴とする。
本発明によれば、クラウドコンピューティングでのインスタンスの総起動時間を減らしログ登録の運用コストを削減することができる。
本発明のネットワークシステムの一実施例を示すログ登録システムの構成の一例を示す図である。 サーバコンピュータ群102を構成する各サーバコンピュータやジョブログ収集サーバ103を構成する情報処理装置の内部構成の一例を示すブロック図である。 画像形成装置104の内部構成の一例を示すブロック図である。 本実施例のジョブログ登録システムにおける各装置の機能ブロック図である。 サーバコンピュータ群102内の各種機能を示した図である。 本実施例におけるジョブログの一例を示す図である。 本実施例におけるサーバコンピュータ群102内で保存されるデータを示す図である。 実施例1におけるサービスが実装すべきインタフェースの構造図である。 実施例1のジョブログ登録システムにおける処理の流れの一例を示すシーケンス図である。 第1実施例におけるジョブログ収集サーバ103のジョブログ登録処理の一例を示すフローチャートである。 第1実施例におけるサーバコンピュータ群102のジョブログ登録処理の一例を示すフローチャートである。 実施例2におけるサービスが実装すべきインタフェースの構造図である。 実施例2のジョブログ登録システムにおける処理の流れの一例を示すシーケンス図である。 実施例2におけるジョブログ収集サーバ103のジョブログ登録処理に一例を示すフローチャートである。
以下、本発明を実施するための形態について図面を用いて説明する。
本発明のネットワークシステムの一実施例としてのログ登録システムの構成について、図1を参照して詳細に説明する。
図1は、本発明のネットワークシステムの一実施例を示すログ登録システムの構成の一例を示す図である。
図1に示すように、本実施例のログ登録システムでは、ネットワークシステムを構成している各装置が、ネットワーク100、インターネット101を介して接続されている。ネットワークシステムを構成している各装置とは、サーバコンピュータ群102、ジョブログ収集サーバ103、画像形成装置104などである。
ネットワーク100は、上述の各装置の間で情報をやり取りするための通信回線である。インターネット101は、ファイアウォールを越えて上述の各装置間で情報をやり取りするための通信回線である。インターネット101を介して、ジョブログ収集サーバ103と画像形成装置104が属するネットワーク100から、サーバコンピュータ群102などが属するネットワーク100と、ファイアウォールを越えて通信が可能である。ネットワーク100、インターネット101は、例えば、TCP/IPプロトコルなどをサポートする通信回線網であり有線・無線は問わない。
サーバコンピュータ群102は、1台以上のサーバコンピュータで構成されている。サーバコンピュータ群102にジョブログを送信するジョブログ収集サーバ103や画像形成装置104などを、以下、「クライアント」と総称する。
なお、本発明の各実施例では、本発明のネットワークシステムの一実施例を示すログ登録システムにおいて、ジョブログ(ジョブの履歴)を登録する例を説明する。しかし、本発明のネットワークシステムにおいて登録するログはジョブログに限定されるものではなく、画像形成装置104のログ、収集サーバ103で収集可能なログであればどのような種類のログでもよい。
以下、図1のプリントシステムを構成している各装置の内部構成について詳細に説明する。

まず、サーバコンピュータ群102を構成する各サーバコンピュータやジョブログ収集サーバ103の内部構成について図2を用いて説明する。
図2は、サーバコンピュータ群102を構成する各サーバコンピュータやジョブログ収集サーバ103を構成する情報処理装置の内部構成の一例を示すブロック図である。
図2において、200はコンピュータ全体(PC)である。PC200において、201はCPUである。CPU201は、ROM202あるいは大規模記憶装置(例えばハードディスク(HD)211)に記憶されたソフトウェア(プログラム)を実行して、システムバス205に接続される各装置を総括的に制御する。なお、大規模記憶装置は、HD以外の媒体(例えば、フラッシュメモリ等)で実現されても良い。
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。204はネットワークインタフェースカード(NIC)で、ネットワーク100を介して、他のノードと双方向にデータをやりとりする。
206はキーボードコントローラ(KBDC)で、PC200に備えられたキーボード(KBD)209や不図示のポインティングデバイスからの指示入力を制御する。207はディスプレイコントローラ(DISPC)で、例えば液晶ディスプレイなどで構成される表示モジュール(DISPLAY)210の表示を制御する。208はディスクコントローラ(DKC)で、大容量記憶画像形成装置としてのハードディスク(HD)211を制御する。
次に、画像形成装置104の内部構成について図3を用いて説明する。
図3は、画像形成装置104の内部構成の一例を示すブロック図である。
図3において、300は画像形成装置全体である。画像形成装置300において、301はCPUである。CPU301は、ROM302あるいは大規模記憶装置(例えばハードディスク(HD)313)に記憶されたソフトウェア(プログラム)を実行して、システムバス305に接続される各装置を総括的に制御する。なお、大規模記憶装置は、HD以外の媒体(例えば、フラッシュメモリ等)で実現されても良い。
303はRAMで、CPU301の主メモリ、ワークエリア等として機能する。304はネットワークインタフェースカード(NIC)で、ネットワーク100を介して、他のノードとデータをやりとりする。
306はパネルコントローラ(PANELC)で、画像形成装置に備えられたオペレーションパネル(PANEL)311からの指示入力を制御する。307はディスプレイコントローラ(DISPC)で、例えば液晶ディスプレイなどで構成される表示モジュール(DISPLAY)312の表示を制御する。308はディスクコントローラ(DKC)であり、大容量記憶画像形成装置であるハードディスク(HD)313を制御する。
309はスキャナコントローラ(SCANC)で、画像形成装置に備えられた光学式スキャナ装置(スキャナ)314を制御し、紙原稿の読み取りを行う。310はプリンタコントローラ(PRNC)で、画像形成装置に備えられたプリンタ装置(プリンタ)315を制御し、電子写真技術やインクジェット技術などの既知の印刷技術を利用して実際の用紙に印刷を行う。
なお、画像形成装置104の内部構成は、図3に示した画像形成装置300よりスキャナコントローラ309及び光学式スキャナ装置314を除いたものであってもよい。さらに、画像形成装置104の内部構成は、画像形成装置300よりパネルコントローラ(PANELC)306、オペレーションパネル311、ディスプレイコントローラ(DISPC)307、表示モジュール(DISPLAY)312などを取り除いた構成でもよい。
以下、本実施例のジョブログ登録システムにおいて各装置が持つ機能について、図4を参照しながら詳細に説明する。
図4は、本実施例のジョブログ登録システムにおける各装置の機能ブロック図である。
始めに、サーバコンピュータ群102の機能について説明する。
サーバコンピュータ群102には、要求受信部401、バックエンド処理部402、テーブルストレージサービス403、ブロブストレージサービス404、キューストレージサービス405の機能がある。
本実施例では、要求受信部401を持つサーバコンピュータが少なくとも1台以上は存在する。また、バックエンド処理部402を持つサーバコンピュータが少なくとも1台以上は存在する。また、テーブルストレージサービス403、ブロブストレージサービス404、キューストレージサービス405の各機能を持つサーバコンピュータが少なくとも1台以上は存在する。
要求受信部401は、ジョブログ収集サーバ103、又は画像形成装置104から送られてきた処理依頼を受け付ける機能を持つ。バックエンド処理部402は、処理プログラムを用いて処理依頼に対する処理を行う機能を持つ。具体的には、バックエンド処理部402は、バックエンド処理部402を実行しているサーバコンピュータのメモリに処理プログラムをロードし処理依頼に対する処理を行う。
要求受信部401は、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されている要求受信プログラムが、RAM203にロードされて、CPU201により実行されることで実現される。また、バックエンド処理部402は、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されているバックエンド処理プログラムが、RAM203にロードされて、CPU201により実行されることで実現される。なお、要求受付部401とバックエンド処理部402はそれぞれ、サーバコンピュータ群102内に1つではなく、複数存在しても良い。なお、要求受信部401は、後述する図8、図12に示す登録要求受付部801、登録確認要求受付部809、登録予約要求受付部1201に対応する。また、バックエンド処理部402は、後述する図8、図12に示す登録処理部805、登録確認処理部808、登録インスタンス作成部1203に対応する。
テーブルストレージサービス403は、ジョブログの格納を行う機能を持つ。ジョブログの登録は、バックエンド処理部402の登録処理により行われる。テーブルストレージサービス403は、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されているテーブルストレージサービスプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。また、テーブルストレージサービス403で格納したデータはROM202又はHD211によって保管される。なお、テーブルストレージサービス403は、後述する図8、図12に示すジョブログ保存部804、登録情報保存部807に対応する。
ブロブストレージサービス404は、要求受信部401によりクライアントから受け付けたジョブログを一時的に保存しておく機能を持つ。ブロブストレージサービス404は、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されているブロブストレージサービスプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。また、ブロブストレージサービス404で保存したデータは、ROM302またはHD313によって保管される。なお、ブロブストレージサービス404は、後述する図8、図12に示す圧縮データ一時保存部803に対応する。
キューストレージサービス405は、次のような機能を持つ。1つ目は、要求受信部401とバックエンド処理部402とが非同期でデータ通信するための機能を持つ。2つ目は、キューに追加されているキューメッセージを不可視、または可視にする機能を持つ。
1つ目の機能について説明する。要求受信部401とバックエンド処理部402は次のような方法で通信する。始めに、ユーザからの処理依頼を受けた要求受信部401は、ユーザからの処理依頼に応じたキューメッセージと呼ばれるチケットを作成する。キューメッセージは要求受信部401によってキューに格納される。バックエンド処理部402はキューからキューメッセージを取得する。バックエンド処理部402は、キューメッセージを取得し、キューメッセージを参照してユーザからの処理依頼を処理する。これにより、ユーザからの処理依頼を解決することになる。このように、キューストレージサービス405を利用することで要求受信部401とバックエンド処理部402は非同期で通信を行うことが可能になる。1つ目の機能のさらに詳細な説明と2つ目の機能の説明については後述する。
なお、キューストレージサービス405は、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されているキューストレージサービスプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。また、キューストレージサービス405が保持するデータは、ROM302またはHD313によって保管される。なお、キューストレージサービス405は、後述する図8、図12に示す第一実行命令データ保存部802、第二実行命令データ保存部806、第三実行命令データ保存部1202に対応する。
次に、ジョブログ収集サーバ103について、詳細に説明する。
ジョブログ収集サーバ103は、ジョブログ送信部406、及び、登録情報通信部407の機能を有する。ジョブログ送信部406は、ネットワーク100を介して接続されているデバイス内に保存されているジョブログを収集して保持部(不図示)に一旦保持し、要求受信部401に送信することができる機能を持つ。登録情報通信部407は、前回の登録処理で何番までのジョブログが登録できたという情報を受け付けることができる。また、登録情報通信部407は、前回ジョブログを何番まで送ったかという情報を送信することができても良い。
ジョブログ送信部406は、ジョブログ収集サーバ103を構成する情報処理装置(図2)のROM202又はHD211に保存されているジョブログ送信プログラムが、RAM203にロードされて、CPU201により実行されることで実現される。また、登録情報通信部407は、ジョブログ収集サーバ103を構成する情報処理装置(図2)のROM202又はHD211に保存されている登録情報通信プログラムが、RAM203にロードされて、CPU201により実行されることで実現される。
次に、画像形成装置104について詳細に説明する。
画像形成装置104は、ジョブログ送信部408、登録情報通信部409の機能を有する。ジョブログ送信部408は、画像形成装置104内の保持部(不図示)に保存されているジョブログを要求受信部401に送信することができる機能を持つ。登録情報通信部409は、前回の登録処理で何番までのジョブログが登録できたという情報を受け付けることができる。また、登録情報通信部409は、前回ジョブログを何番まで送ったかという情報を送信することができても良い。
ジョブログ送信部408は、画像形成装置(図3)のROM302又はHD313に保存されているジョブログ送信プログラムが、RAM303にロードされて、CPU301により実行されることで実現される。また、登録情報通信部409は、画像形成装置(図3)のROM302又はHD313に保存されている登録情報通信プログラムが、RAM303にロードされて、CPU301により実行されることで実現される。
以上が、本実施例のジョブログ登録システムにおける各装置が持つ機能の説明になる。
次に、サーバコンピュータ群102のプラットフォームシステムについて図5を参照しながら詳細に説明する。
図5は、サーバコンピュータ群102内の各種機能を示した図である。
図5において、サーバコンピュータ群102内にある物理ハードウェア・リソースは、サーバコンピュータ群102のプラットフォームに使用される。サーバコンピュータ群102のプラットフォーム利用者は、このサーバコンピュータ群102内にある物理ハードウェア・リソースをコンピューティング・リソースとして使用できる。
サーバコンピュータ群102のプラットフォームシステム(Operating System)は、次のような機能(501〜507)を持つ。501及び502は、ヴァーチャルマシン(Virtual Machines)である。503は、ファブリックコントローラ(Fabric Controller)である。504は、ロードバランサー(Load Balancer)である。505は、キューストレージサービス(Queue)である。506は、テーブルストレージサービス(Table)である。507は、ブロブストレージサービス(Blob)である。
サーバコンピュータ群102上で動作するプラットフォームシステムの内部には、ヴァーチャルマシン501、502が複数存在する。ヴァーチャルマシンとは、仮想化技術によって物理的なサーバコンピュータ群102を論理的なコンピュータに分割し、分割された中で独立したオペレーティングシステムをもって動作する論理的なコンピュータのことである。この論理的なコンピュータの単位は、インスタンスとして数えられる。本実施例では、1つのインスタンスは、サーバコンピュータ群102内の1台のサーバコンピュータ上で動作する。
ヴァーチャルマシン501は、要求受信部(Web Role Instance)509、要求受信部エージェント(Agent)510で構成される。要求受信部509は、図4の要求受信部401に対応する。要求受信部509は、後述するロードバランサー504を介してユーザからの処理依頼を受信する。また、要求受信部509は、キューストレージサービス505を介してバックエンド処理部511への処理依頼を送信する。
要求受信部509の高い可用性を確保するために、外部ネットワークからの要求(ここではHTTPによる通信)は、ヴァーチャルマシン501の外部にあるロードバランサー504を通じて行われる。ロードバランサー504は、外部ネットワークからの要求を一元的に管理し、同等な要求受信部の機能を有する複数のヴァーチャルマシンに対し、選択的に要求を転送するものである。要求受信部エージェント510は、ヴァーチャルマシン501の使用状況、要求受信部509の稼動状態、ヴァーチャルマシン501のリソースの使用状況、及び要求受信部509のエラーを含む各種情報を収集する。要求受信部エージェント510は、収集した各種情報をファブリックコントローラ503に定期的に送信する。
要求受信部509、バックエンド処理部511の各インスタンスは、ファブリックコントローラ503によって管理されている。そのため、各インスタンスの拡張性と可用性が保証される。例えば、要求受信部509、又はバックエンド処理部511において、ある特定のインスタンスがサーバの故障によって停止したとする。この場合、ファブリックコントローラ503は、要求受信部エージェント510、又はバックエンド処理部エージェント512から定期通知を受け取れなくなる。定期通知を受け取らなくなったファブリックコントローラ503は、新しいインスタンスに処理が委譲されるようにヴァーチャルマシンに指示を出す。結果、処理を実行しているインスタンス数が一定に保たれるため、処理の遅延を抑えることができる。
ヴァーチャルマシン502は、バックエンド処理部(Worker Role Instance)511、バックエンド処理部エージェント(Agent)512で構成される。バックエンド処理部511は、図4のバックエンド処理部402に対応する。バックエンド処理部502は、キューテーブル505を介して要求受信部509からの処理依頼を受信する。バックエンド処理部511は、キューストレージサービス505を介して要求受信部509から受信した処理依頼を実行する。また、バックエンド処理部511は、スケールアウトする。スケールアウトとは、ヴァーチャルマシン502が増加し、バックエンド処理部511のインスタンスが増加すること指す。バックエンド処理部511のインスタンスが増加すると、バックエンド処理部1つ当たりのデータ処理量が減少する。これにより、ユーザからの処理依頼に対する結果をより早く返すことができる。
キューストレージサービス505は、要求受信部509とバックエンド処理部511とが非同期でデータ通信するためのサービスを提供する。なお、キューストレージサービス505は、図4のキューストレージサービス405に対応する。要求受信部509、及びバックエンド処理部511は、キューストレージサービス505に対し各種指示を出すことで、非同期でデータ通信する。これについて、具体的に説明する。要求受信部509がキューストレージサービス505に対して行う指示とは、キューメッセージの追加指示である。バックエンド処理部511がキューストレージサービス505に対して行う指示とは、キューメッセージの取得指示、キューメッセージの削除指示である。
要求受信部509とバックエンド処理部511が非同期でデータ通信する一連の動作について説明する。
要求受信部509は、ユーザからの処理依頼に応じたキューメッセージを作成し、キューメッセージをキューに追加するようにキューストレージサービス505に追加指示を送信する。追加指示を受信したキューストレージサービス505は、キューにキューメッセージを追加する。
バックエンド処理部511は、キューメッセージを取得するために、キューストレージサービス505に取得指示を出す。取得指示を受けたキューストレージサービス405は、キューメッセージと、キューメッセージ毎に固有に割り振られたメッセージIDと、ジョブIDとを取得指示に対するレスポンスとしてバックエンド処理部511に返す。メッセージIDとは、キューメッセージを一意に定めるためにキューメッセージごとに割り振られた固有の情報であり、処理が終了したバックエンド処理部511がキューメッセージを削除指示する際に使用する。ジョブIDは、実際に処理する内容を一意に決定するIDである。
バックエンド処理部511は、処理依頼の実行を完了すると、受取IDに対応するキューメッセージの削除指示をキューストレージサービス505に対して行う。削除指示を受けたキューストレージサービス505は、バックエンド処理部511が指示した受取IDに対応するキュースメッセージをキューから削除する。これにより、削除指示を出したバックエンド処理部511以外のバックエンド処理部511が同じキューメッセージを処理するという冗長な処理を防ぐことができる。
また、キューストレージサービス505は、キューに追加されているキューメッセージを可視、又は、不可視にする機能を持つ。可視とは、バックエンド処理部511がキューに追加されているキューメッセージの取得要求した場合に、キューストレージサービス505がバックエンド処理部511に対してキューメッセージを渡すことを指す。不可視とは、バックエンド処理部511がキューに追加されているキューメッセージの取得要求をした場合に、キューストレージサービス505はバックエンド処理部511に対してキューメッセージを渡さないことを示す。
バックエンド処理部511がキューからキューメッセージを取得すると、取得されたキューメッセージはキュースストレージサービス505によって不可視になる。バックエンド処理部511に取得され不可視になっているキューメッセージは、処理を行っているバックエンド処理部511から処理結果が一定時間返ってこない場合にキューストレージサービス505によって可視になる。これにより、バックエンド処理部511が異常終了し処理を継続できない場合でも自動的に処理がリトライされることになる。
テーブルストレージサービス506は、データ保存に利用されるストレージを提供する。テーブルストレージサービス506では、データをエンティティと型情報のプロパティを組み合わせた単純な形式でデータを保管する。なお、テーブルストレージサービス506は、図4のテーブルストレージサービス403に対応する。
ブロブストレージサービス507は、データ保存に利用されるストレージを提供する。ブロブストレージサービス507は、バイナリーデータの集合を保存する機能を提供する。なお、ブロブストレージサービス507は、図4のブロブストレージサービス404に対応する。
次に、図6を用いて本実地例におけるジョブログについて説明する。なお、ジョブログとは、画像形成装置が実行したジョブ履歴のことを言う。ジョブ履歴には、誰がいつ何をしたのかという情報が記録されている。
図6は、本実施例におけるジョブログの一例を示す図である。
図6に示すように、ジョブログは、Client ID601、Send ID602、Log ID603、及び、ジョブログ内容604(例えば、印刷日時、印刷枚数、カラー/モノクロ、プリンタ名、印刷を行ったユーザ名等)を含む。
Client ID601は、ジョブログをサーバへ送ってきたクライアントを識別するID(クライアントの識別する情報)である。ジョブログにClient ID601を保持することで複数の画像形成装置を導入するようなクライアントにおいてもジョブログを一元的に管理することが可能である。
Send ID602は、誰がいつ送ったジョブログなのか、という情報が保持される。Send ID602をキーにすることで、ジョブログ収集サーバ103毎、若しくはデバイス(画像形成装置104)毎のジョブログの登録の成否の確認が行なうことができる。
Log ID603は、送信元であるジョブログ収集サーバ103や画像形成装置104が自動的に割り振る値であり、ジョブが発生すると自動的に設定される。ジョブログの送信元であるクライアント側で一意の値になる(クライアント側でのジョブログの識別情報)。クライアント側では、Log ID603がどこまで登録されているか見ることで、次に何番のLog ID603からジョブログを登録すればいいのか認識することができる。
ジョブログは、本実施例ではクライアントから圧縮された状態でサーバコンピュータ群102へ送信される。圧縮されたジョブログはサーバコンピュータ群102内で解凍され、サーバコンピュータ郡102内のテーブルストレージサービス403に登録される。
次に、図7を用いてクラウドのストレージに保持される情報の構成についての説明を行う。
図7は、本実施例におけるサーバコンピュータ群102内で保存されるデータを示す図であり、図6と同一のものには同一の符号を付してある。
ジョブログ保存部701は、クライアントから登録要求のあったジョブログを登録するストレージであって、図6で説明したジョブログがクライアントから圧縮された状態で渡され、バックエンド処理部402で解凍されたものが登録される。なお、ジョブログ保存部701は、後述する図8、図12に示すジョブログ保存部804に対応する。
圧縮データ一時保存部702では、クライアントから送られてきた圧縮されたジョブログを一時的に保存するストレージである。圧縮データ一時保存部702では、ジョブログのClient ID601とSend ID602と圧縮データ(圧縮されたジョブログ)710を持つ。なお、圧縮データ710は、Log ID603とジョブログ内容604が圧縮されたものである。クライアントより送られてきた圧縮されたジョブログは要求受付部で受け取り、圧縮データ一時保存部で一時的に保存され、バックエンド処理部で取り出されジョブログの登録が行われる。なお、圧縮データ一時保存部702は、後述する図8、図12に示す圧縮データ一時保存部803に対応する。
登録情報保持部703では、クライアントから受け渡されたジョブログの登録の成否が登録される。登録情報保存部703では、Client ID601、Send ID602、Log ID603、State711のカラムを持つ。
State711は、ジョブログ登録の進行状況について設定される。ジョブログ登録の進行状況は、「Entry」、「True」、「False」で管理される。なお、「Entry」は、登録処理中(登録要求を受け付けてから登録処理が終わるまでの間)を示す。また、「True」は登録の成功を示し、「False」は登録の失敗を示す。State711により、クライアントからのジョブログ登録結果取得要求時に登録処理は成功したのか、失敗したのか、まだ登録処理中なのか判断することができる。ジョブログが登録処理中であった場合、クライアントは再度登録結果を取得して、登録の成功/失敗を確認する必要がある。
[本発明の実地例におけるサービスが実装すべきインタフェースの構造]
次に、図8を用いて本発明の実施例におけるサービスが実装すべきインタフェースの構造図について説明する。本実施例では、ジョブログの送信元がジョブログ収集サーバ103として説明を行う。なお、ジョブログ収集サーバ103が画像形成装置104であっても処理の流れは変わらない。
図8は、実施例1におけるサービスが実装すべきインタフェースの構造図である。
図8に示すように、本実施例では、サーバコンピュータ群102は、フロントエンドに、登録要求受付部801と、登録確認要求受付部809を持つ。また、サーバコンピュータ群102は、バックエンドに、登録処理部805と、登録確認処理部808を持つ。サーバコンピュータ群102のストレージは、第一実行命令データ保存部802と、第二実行命令データ保存部806と、圧縮データ一時保存部803、ジョブログ保存部804、登録情報保存部807で構成される。
登録要求受付部801は、ジョブログ収集サーバ103から圧縮されたジョブログを受け取り、圧縮データ一時保存部803へ登録を行い、第一実行命令データ保存部802へメッセージの登録を行う。なお、圧縮データ一時保存部803は、ジョブログ収集サーバ103から受け渡された圧縮されたジョブログを一時的に保存しておくストレージである。また、第一実行命令データ保存部802は、登録要求受付部801からのQueueのメッセージの格納が行われるストレージである。
登録処理部805は、第一実行命令データ保存部802からメッセージを取得し、取得したメッセージを基に圧縮されたジョブログの取得を行う。さらに、登録処理部805は、取得した圧縮されたジョブログの解凍処理を行い、解凍したジョブログをジョブログ保存部804へ登録し、第二実行命令データ保存部806へ登録確認処理部808へのメッセージの登録を行う。なお、ジョブログ保存部804は、登録処理部805により解凍されたジョブログが登録されるストレージである。また、第二実行命令データ保存部806は、登録処理部からのQueueのメッセージの格納が行われるストレージである。
登録確認処理部808は、第二実行命令データ保存部806からメッセージを取得し、ジョブログ登録結果を登録情報保存部807への登録を行う。なお、登録情報保存部807は、登録確認処理部808によりジョブログの登録結果が格納されるストレージである。
登録確認要求受付部809は、登録情報保存部807からジョブログの登録結果を取得しジョブログ収集サーバ103へ結果を返す。
以下、図9のシーケンス図を用いて、図8の構成における処理の流れを説明する。
図9は、実施例1のジョブログ登録システムにおける処理の流れの一例を示すシーケンス図である。
登録要求受付部801は、ジョブログ収集サーバ103からジョブログ登録要求(圧縮されたジョブログを含む)を受け取ると(S901)、圧縮データ一時保存部803にジョブログ収集サーバ103から受け取った圧縮されたジョブログの登録を行う(S902)。
次に、登録要求受付部801は、第一実行命令データ保存部802(登録命令保存部)にメッセージの追加を行う(S903)。このメッセージは、上記受け付けた登録要求を処理するための実行命令データであり、上記受け付けた登録要求のClient IDとSend IDを含む。
さらに、登録要求受付部801は、ジョブログ収集サーバ103へ登録受付正常終了通知(Send IDと受付成功を示す情報の通知)を行う(S904)。なお、圧縮されたジョブログの登録に失敗した場合は、登録要求受付部801は、上記S904の登録受付正常終了通知の代わりに、ジョブログ収集サーバ103へ登録受付異常終了通知(Send IDと受付失敗を示す情報の通知)を行う。
また、上記S903の後、登録要求受付部801は、受け付けたジョブログ登録要求に対応する登録情報を登録情報保存部807へ登録する(S903')。この場合、State711には「Entry」、Log ID603にはNullが登録される。
登録処理部805は、第一実行命令データ保存部802を監視しており、第一実行命令データ保存部802にメッセージが積まれたら、第一実行命令データ保存部802にメッセージ取得要求を出し(S905)、メッセージの取得を行う。
メッセージを受け取った登録処理部805は、取得したメッセージをもとに、圧縮データ一時保存部803に、圧縮されたジョブログの取得要求を出し(S906)、圧縮データ一時保存部から圧縮されたジョブログの取得を行う(S907)。
次に、登録処理部805は、取得した圧縮されたジョブログの解凍処理を行い、ジョブログ保存部804に、解凍したジョブログの登録を行う(S908)。
ジョブログの登録終了後、登録処理部805は、第二実行命令データ保存部806(確認命令保存部)にメッセージの追加を行う。このメッセージは、上記登録処理したジョブログの登録確認を行うための実行命令データであり、上記登録処理したジョブログのClient IDとSend IDを含む。
さらに、登録処理部805は、第二実行命令データ保存部806へのメッセージの追加後、第一実行命令データ保存部802へメッセージ削除要求を出し(S910)、処理の終わった第一実行命令データ保存部802のメッセージの削除を行う。なお、圧縮されたジョブログの解凍の失敗した場合、登録処理部805は、上記S908〜S910の処理を実行する代わりに、解凍に失敗したジョブログのClient ID及びSend IDに対応する登録情報保存部807の登録情報のState711を「False」、Log ID603を上記圧縮されたジョブログのLog IDに更新する。
登録確認処理部808は、第二実行命令データ保存部806を監視しており、第二実行命令データ保存部806にメッセージが積まれたら、第二実行命令データ保存部806にメッセージ取得要求を出し(S911)、メッセージの取得を行う(S912)。
メッセージを受け取った登録確認処理部808は、取得したメッセージに対応するジョブログがジョブログ保存部804に登録されているか確認を行い(S913)、登録されている場合、そのジョブログのLog ID603を取得する。登録確認処理部808は、取得した登録されているジョブログのLog ID603を登録情報保存部807へ登録する(S914)。詳細には、登録確認したジョブログのClient ID及びSend IDに対応する登録情報保存部807の登録情報のState711を「True」、Log ID603を上記取得した登録されているジョブログのLog IDに更新する。
さらに、登録確認処理部808は、第二実行命令データ保存部806へメッセージ削除要求を出し(S915)、処理の終わった第二実行命令データ保存部806のメッセージの削除を行う。なお、上記S913の確認処理の結果、ジョブログの登録に失敗していた場合、登録確認処理部808は、失敗と確認されたジョブログのClient ID及びSend IDに対応する登録情報保存部807の登録情報のState711を「False」に更新する。
登録確認要求受付部809は、ジョブログ収集サーバ103からジョブログ登録確認要求(Client IDとSend IDを含む)を受け取ると(S916)、登録情報保存部807に、ジョブログ登録結果取得要求を出す(S917)。そして、登録確認要求受付部809は、登録情報保存部807からジョブログ登録結果を取得し(S918)、ジョブログ収集サーバ103へ登録結果(Client ID601,Send ID602,State711を含む)の通知を行う(S919)。
図10は、第1実施例におけるジョブログ収集サーバ103のジョブログ登録処理の一例を示すフローチャートである。なお、この処理は、ジョブログ収集サーバ103がサーバコンピュータ群102に圧縮したジョブログを送り、リカバリーを含めた登録が完了するまでの処理に対応する。なお、このフローチャートの処理は、ジョブログ収集サーバ103を構成する情報処理装置(図2)のROM202又はHD211に保存されているプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。
ジョブログ収集サーバ103は、ジョブログ送信部406を用いて、サーバコンピュータ群102の登録要求受付部801に対して登録要求を送信する(登録要求送信処理)(S1001)。ここでジョブログ収集サーバ103は、サーバコンピュータ群102のジョブログの登録要求として、Client ID、Send ID、圧縮されたジョブログを、登録要求受付部801に送信する。
次に、ジョブログ収集サーバ103は、登録要求受付部801からの返信結果に基づいて、ジョブログ登録要求の受付に成功したか失敗したかを判定する(S1002)。返信結果よりジョブログ登録要求の受付に失敗したと判定した場合(S1002でNo)、ジョブログ収集サーバ103は、再度、サーバコンピュータ群102への登録要求送信処理を行う(S1001)。
一方、登録要求受付部801からの返信結果からジョブログ登録要求の受付に成功したと判定した場合(S1002でYes)、ジョブログ収集サーバ103は、S1003に処理を進める。
S1003では、ジョブログ収集サーバ103は、登録情報通信部407を用いて、サーバコンピュータ群102の登録確認要求受付部809に対してジョブログ登録結果要求を行う(登録結果確認処理)。ここでジョブログ収集サーバ103は、ジョブログの登録結果要求として、登録要求を出したジョブログのClient ID、Send IDの情報を登録確認要求受付部809に送信し、登録要求を出したジョブログが登録に成功したか、失敗したか、又は、登録処理中かの確認結果の返信を受け取る。
そして、ジョブログ収集サーバ103は、返信結果を判定し(S1004)、登録処理中(Entry)であると判定した場合、まだ登録の処理が行われているということであるので時間を空けて再度登録結果確認処理を行う(S1003)。
また、登録が失敗(False)であったと判定した場合、ジョブログ収集サーバ103は、再度、登録要求送信処理から処理を行う(S1001)。
また、登録が成功(True)であったと判定した場合、ジョブログ収集サーバ103は、ジョブログ登録処理を終了する。
図11は、第1実施例におけるサーバコンピュータ群102のジョブログ登録処理の一例を示すフローチャートである。なお、この処理は、サーバコンピュータ群102の登録処理部805が、圧縮データ一時保存部803から圧縮されたジョブログを取得し、ジョブログの登録を行うまでのフローチャートである。なお、このフローチャートの処理は、サーバコンピュータ群102の登録処理部805及び登録確認処理部808により実行される。即ち、サーバコンピュータ群102を構成する情報処理装置(図2)のROM202又はHD211に保存されているプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。
サーバコンピュータ群102の登録処理部805は、第一実行命令データ保存部802からメッセージを取得し、その情報をもとに圧縮データ一時保存部803(ブロブストレージサービス)から圧縮されたジョブログを取得する(S1101)。
次に、登録処理部805は、圧縮されたジョブログの解凍処理を行い、解凍に成功すると、ジョブログ保存部804へジョブログの登録を行い(S1103)、第二実行命令データ保存部806へメッセージを追加する。そして、第二実行命令データ保存部806からメッセージを受け取った登録確認処理部808は、ジョブログ保存部804に確認を行い、登録成功の場合には登録情報保存部807に成功(True)と登録する(S1104)。なお、登録失敗の場合、登録確認処理部808は登録情報保存部807に失敗(False)と登録する。
一方、ジョブログの解凍に失敗した場合、登録処理部805は、登録情報保存部807に失敗(False)と登録する(S1104)。
本実施例のように、ジョブログを含む各種ログの登録を非同期で行うことで1つのインスタンスの処理時間を短くすることで、1つのインスタンスでより多くのクライアントからの要求を受け付けることができる。これにより、予め用意しておくインスタンスの数を削減することができ、インスタンスの総起動時間を減らすことが可能となり運用コストも削減することができる。
上記実施例1では、非同期処理でログを登録することで1つのクライアントからの受付を短時間で処理することが可能となり、少ないインスタンスで、多くのクライアントからの受付を処理することができるようになった。
しかしながら、上記実施例1の構成は、クライアントからのアクセスに対し、安定した運用を行う為に余裕を持ってインスタンスを用意しておかなければならないという点や、非同期処理にしたことで確認処理をするインスタンスが必要になってしまったという課題を含む。
本実施例では、ログ登録のリカバリーを次回登録のタイミングで行うという点と、クライアントからの要求に応じてインスタンスを作成し、ログの登録が終了したら該インスタンスを削除するという点を特徴とする。
本実施例のように、ログ登録のリカバリーを次のクライアントからの要求があったときに行うことで、リカバリーの為に何回もサーバコンピュータ群102にアクセスする必要がなくなる。また、クライアントから要求を受け付けてからログ登録に必要なインスタンスを作成することで、必要最低限のインスタンスを準備しておくだけで良くなるので、インスタンスの総起動時間を減らすことが可能となり、運用コストを削減することが可能となる。以下、本発明のネットワークシステムにおいて、ジョブログを登録する例を説明するが、本発明のネットワークシステムにおいて登録するログはジョブログに限定されるものではなく、どのような種類のログでもよい。
以下、実施例2について詳細に説明する。なお、図1〜図7で示した構成については、実施例1と同様である。
ただし、図4において、ジョブログ収集サーバ103は、登録情報通信部407を備えていない。また、画像形成装置104も同様に、登録情報通信部409を備えていない。
図12は、実施例2におけるサービスが実装すべきインタフェースの構造図であり、図8と同一のものには同一の符号を付してある。
実施例2のサーバコンピュータ群102は、フロントエンドに登録予約要求受付部1201と、登録要求受付部801を持つ。また、実施例2のサーバコンピュータ群102は、バックエンドに、登録インスタンス作成部1203と、登録処理部805を持つ。さらに、実施例2のサーバコンピュータ群102のストレージは、第三実行命令データ保存部1202、第一実行命令データ保存部802と、圧縮データ一時保存部803と、ジョブログ保存部804で構成される。
登録予約要求受付部1201は、ジョブログ収集サーバ103からジョブログ登録予約要求を受け取ると、ジョブログ登録予約要求元のクライアントからジョブログ保存部804に最後に登録されたジョブログのLog ID603を取得し、ジョブログ収集サーバ103に返信する。そして、登録予約要求受付部1201は、登録要求受付部801と登録処理部805の作成要求メッセージを第三実行命令データ保存部1202へ登録する。なお、第三実行命令データ保存部1202は、登録予約要求受付部1201からのQueueのメッセージの格納が行われるストレージである。
登録インスタンス作成部1203は、第三実行命令データ保存部1202からメッセージを取得し、登録要求受付部801と登録処理部805を作成する。即ち、登録要求受付部801及び登録処理部805はそれぞれ、登録インスタンス作成部1203により必要時に、作成された(サーバコンピュータ群102上で仮想コンピュータとして実体化された)インスタンスである。
登録要求受付部801は、ジョブログ収集サーバ103から圧縮されたジョブログを受け取り、圧縮データ一時保存部803へ登録を行い、第一実行命令データ保存部802へメッセージの登録を行う。なお、圧縮データ一時保存部803は、ジョブログ収集サーバ103から受け渡された圧縮されたジョブログを一時的に保存しておくストレージである。また、第一実行命令データ保存部802は、登録要求受付部801からのQueueのメッセージの格納が行われるストレージである。
登録処理部805は、第一実行命令データ保存部802からメッセージを取得し、取得したメッセージを基に圧縮されたジョブログの取得を行う。さらに、登録処理部805は、取得した圧縮されたジョブログの解凍処理を行い、解凍したジョブログをジョブログ保存部804へ登録する。また、ジョブログ保存部804は、登録処理部805により解凍されたジョブログが登録されるストレージである。
以下、図13のシーケンス図を用いて、図12の構成における処理の流れを説明する。
図13は、実施例2のジョブログ登録システムにおける処理の流れの一例を示すシーケンス図である。
登録予約要求受付部1201は、ジョブログ収集サーバ102からジョブログ登録予約要求を受け取ると(S1301)、ジョブログ登録予約要求元のクライアントから最後にジョブログ保存部804に登録されたジョブログのLog ID603の取得要求を行う(S1302)。そして、登録予約要求受付部1201は、ジョブログ登録予約要求元のクライアントから最後に登録されたジョブログのLog ID603の取得を行う(S1303)。
次に、登録予約要求受付部1201は、第三実行命令データ保存部1202(作成命令保存部)にメッセージの追加を行い(S1304)、ジョブログ収集サーバ102へジョブログ登録予約受付正常終了通知を行う(S1305)。このメッセージは、登録要求受付部801と登録処理部805を作成するための実行命令データである。
登録インスタンス作成部1203は、第三実行命令データ保存部1202を監視しており、第三実行命令データ保存部1202にメッセージが積まれたら、第三実行命令データ保存部1202にメッセージ取得要求を出し(S1306)、メッセージの取得を行う。
メッセージを受け取った登録インスタンス作成部1203は、取得したメッセージをもとに、登録要求受付部801と登録処理部805を作成する(S1307)。登録要求受付部801と登録処理部805の生成が終了した後、登録インスタンス作成部1203は、第三実行命令データ保存部1202へメッセージ削除要求を出し(S1308)、処理の終わった第三実行命令データ保存部1202のメッセージの削除を行う。
登録インスタンス作成部1203によって作成された登録要求受付部801は、ジョブログ収集サーバ103からジョブログ登録要求(圧縮されたジョブログを含む)を受け取ると(S1309)、圧縮データ一時保存部803にジョブログ収集サーバ103から受け取った圧縮されたジョブログの登録を行う(S1310)。
次に、登録要求受付部801は、第一実行命令データ保存部802(登録命令保存部)にメッセージの追加を行う(S1311)。このメッセージは、上記受け付けた登録要求を処理するための実行命令データであり、上記受け付けた登録要求のClient IDとSend IDを含む。さらに、登録要求受付部801は、ジョブログ収集サーバ103へ登録受付正常終了通知(Send IDと受付成功を示す情報の通知)を行う(S1312)。なお、圧縮されたジョブログの登録に失敗した場合は、登録要求受付部801は、上記S1312の登録受付正常終了通知の代わりに、ジョブログ収集サーバ103へ登録受付異常終了通知(Send IDと受付失敗を示す情報の通知)を行う。
登録処理部805は、第一実行命令データ保存部802を監視しており、第一実行命令データ保存部802にメッセージが積まれたら、第一実行命令データ保存部802にメッセージ取得要求を出し(S1313)、メッセージの取得を行う(S1314)。
メッセージを受け取った登録処理部805は、取得したメッセージをもとに、圧縮データ一時保存部803に、圧縮されたジョブログの取得要求を出し(S1315)、圧縮データ一時保存部から圧縮されたジョブログの取得を行う(S1316)。
次に、登録処理部805は、取得した圧縮されたジョブログの解凍を行い、ジョブログ保存部804に、解凍したジョブログの登録を行う(S1317)。
ジョブログの登録終了後、登録処理部805は、第一実行命令データ保存部802へメッセージ削除要求を出し(S1318)、処理の終わった第一実行命令データ保存部802のメッセージの削除を行う。
第一実行命令データ保存部802のメッセージ削除後、登録処理部805は、使用したインスタンス(登録要求受付部801、登録処理部805)の削除を行う(S1319)。
図14は、実施例2におけるジョブログ収集サーバ103のジョブログ登録処理に一例を示すフローチャートである。なお、この処理は、ジョブログ収集サーバ103がサーバコンピュータ群102にジョブログの登録予約要求を行い、圧縮したジョブログの送信が完了するまでの処理に対応する。なお、このフローチャートの処理は、ジョブログ収集サーバ103を構成する情報処理装置(図2)のROM202又はHD211に保存されているプログラムが、RAM203にロードされて、CPU201により実行されることで実現される。
ジョブログ収集サーバ103は、サーバコンピュータ群102の登録予約要求受付部1201に対してジョブログ登録予約要求を送信する(登録予約要求送信処理)(S1401)。ジョブログ登録予約要求とは、ネットワーク100を介して通信可能な画像形成装置から収集し内部に保持するジョブログの登録の予約の受け付けを、登録予約要求受付部1201に対して要求するものである。
なお、ジョブログの登録予約の受付に成功した場合は、サーバコンピュータ群102から登録予約受付正常終了通知として、当該ジョブログ収集サーバ103から最後に登録されたジョブログのLog ID603の情報が返信される。一方、ジョブログの登録予約受付に失敗した場合は、サーバコンピュータ群102から登録予約受付異常終了通知が返信される。
次に、ジョブログ収集サーバ103は、登録予約要求受付部1201からの返信結果に基づいて、ジョブログ登録予約の受付に成功したか失敗したか判定する(S1402)。登録予約要求受付部1201から登録予約受付異常通知が返信され、ジョブログ登録予約の受付に失敗したと判定した場合(S1402でNo)、ジョブログ収集サーバ103は、再度、サーバコンピュータ群102への登録予約要求送信処理を行う(S1401)。
一方、登録予約要求受付部1201から登録予約受付正常通知(Log ID)が返信され、ジョブログ登録予約の受付に成功したと判定した場合(S1402でYes)、S1403に処理を進める。
S1403では、ジョブログ収集サーバ103は、登録予約要求受付部1201から返信されたLog ID603を基に登録要求するジョブログを選択する。即ち、上記返信されたLog IDの次のLog IDのジョブログを、登録要求するジョブログとして選択する。そして、上記選択したジョブログを圧縮する。
次に、ジョブログ収集サーバ103は、ジョブログ送信部406を用いて、サーバコンピュータ群102の登録要求受付部801に対して登録要求を送信する(登録要求送信処理)(S1404)。ここでジョブログ収集サーバ103は、ジョブログの登録要求として、Client ID、Send ID、上記S1403で選択されて圧縮されたジョブログを、登録要求受付部801に送信する。
次に、ジョブログ収集サーバ103は、登録要求受付部801からの返信結果を受け取り、該返信結果に基づいて、ジョブログ登録要求の受付に成功したか失敗したかを判定する(S1405)。返信結果よりジョブログ登録要求の受付に失敗したと判定した場合(S1405でNo)、ジョブログ収集サーバ103は、再度、サーバコンピュータ群102への登録要求送信処理を行う(S1404)。
一方、登録要求受付部801からの返信結果からジョブログ登録要求の受付に成功したと判定した場合(S1405でYes)、リカバリーは次回の登録予約要求送信処理のタイミングで行うので、登録の成否に関係なく、処理を終了する。
本実施例のように、ジョブログの登録のリカバリーを後で行う(次の予約受付時に行う)ことによって、登録確認用のインスタンス(実施例1の登録確認要求受付部809、登録確認処理部808)が不要になる。
さらに、クライアントからの要求(登録予約要求)に応じてインスタンスを作成することで、必要最低限の起動時間でインスタンスを運用できるようになり、インスタンスの総起動時間が減少し、運用コストの削減が可能となる。
以上示したように、本実施例によれば、クラウドコンピューティングでのインスタンスの総起動時間を減らしジョブログを含む各種ログの登録の運用コストを削減可能な優れたクラウドコンピューティングシステムを構築することができる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
(他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
100 ネットワーク
101 インターネット
102 サーバコンピュータ群
103 ジョブログ収集サーバ
104 画像形成装置

Claims (8)

  1. クライアントと、前記クライアントと通信可能な1台以上のサーバコンピュータからなるサーバコンピュータ群で構成されるサーバとを有するネットワークシステムであって、
    前記サーバは、
    前記クライアントから取得したログを保存するための保存手段と、
    前記クライアントから送信されるログの登録予約要求を受け付けて、前記クライアントから前記保存手段に最後に登録されたログの識別情報を、前記クライアントに返信する1又は複数の登録予約要求受付手段と、
    前記クライアントから送信されるログの登録要求を受け付けて、前記ログを一時保存手段に保存し、前記登録要求を処理するための実行命令データを登録命令保存手段に登録する1又は複数の登録要求受付手段と、
    前記登録命令保存手段への実行命令データの登録とは非同期で前記登録命令保存手段から前記実行命令データを取得して前記一時保存手段に保存された前記ログを前記保存手段に登録処理する1又は複数の登録処理手段とを有し、
    前記クライアントは、
    ログを保持する保持手段と、
    前記保持手段に保持されるログの登録予約要求を前記登録予約要求受付手段に送信する登録予約要求送信手段と、
    前記登録予約要求の送信に応じて返信されるログの識別情報に基づいて登録要求するログを前記保持手段に保持されるログから選択する選択手段と、
    前記選択手段により選択されたログを前記登録要求受付手段に送信して登録要求する登録要求送信手段とを有する、
    ことを特徴とするネットワークシステム。
  2. 画像形成装置と通信可能な1台以上のサーバコンピュータからなるサーバコンピュータ群で構成されるサーバであって、
    前記画像形成装置から取得したジョブログを保存するための保存手段と、
    前記画像形成装置から送信されるジョブログの登録予約要求を受け付けて、前記画像形成装置から前記保存手段に最後に登録されたジョブログの識別情報を、前記画像形成装置に返信する1又は複数の登録予約要求受付手段と、
    前記画像形成装置から送信されるジョブログの登録要求を受け付けて、前記ジョブログを一時保存手段に保存し、前記登録要求を処理するための実行命令データを登録命令保存手段に登録する1又は複数の登録要求受付手段と、
    前記登録命令保存手段への実行命令データの登録とは非同期で前記登録命令保存手段から前記実行命令データを取得して前記一時保存手段に保存された前記ジョブログを前記保存手段に登録処理する1又は複数の登録処理手段と、
    を有することを特徴とするサーバ。
  3. 前記登録要求受付手段及び前記登録処理手段はそれぞれ、前記サーバコンピュータ群上で仮想コンピュータとして実体化されたインスタンスであり、
    前記登録予約要求受付手段は、前記画像形成装置から送信されるジョブログの登録予約要求を受け付けて、前記登録要求受付手段及び前記登録処理手段を作成するための実行命令データを作成命令保存手段に登録するものであり、
    前記作成命令保存手段への実行命令データの登録とは非同期で前記作成命令保存手段から前記実行命令データを取得して前記登録要求受付手段及び前記登録処理手段を作成する作成手段を有することを特徴とする請求項2に記載のサーバ。
  4. 前記登録処理手段は、ジョブログの前記保存手段への登録の後に、前記登録要求受付手段及び前記登録処理手段自身を削除することを特徴とする請求項3に記載のサーバ。
  5. 前記登録要求受付手段が前記画像形成装置から受け取るジョブログは、圧縮された状態のジョブログであり、
    前記登録処理手段は、前記一時保存手段に保存された前記圧縮された状態のジョブログを解凍し、該解凍したジョブログを前記保存手段に登録処理することを特徴とする請求項2乃至4のいずれか1項に記載のサーバ。
  6. クライアントと、前記クライアントと通信可能な1台以上のサーバコンピュータからなるサーバコンピュータ群で構成されるサーバとを有するネットワークシステムにおけるログ登録方法であって、
    前記クライアントの登録予約要求送信手段が、保持手段に保持されるログの登録予約要求を前記サーバに送信する登録予約要求送信ステップと、
    前記サーバの1又は複数の登録予約要求受付手段が、前記クライアントから送信されるログの登録予約要求を受け付けて、前記クライアントから取得したログ を保存するための保存手段に対して、前記クライアントから最後に登録されたログの識別情報を、前記クライアントに返信する登録予約要求受付ステップと、
    前記クライアントの選択手段が、前記登録予約要求の送信に応じて返信されるログの識別情報に基づいて前記サーバに登録要求すべきログを前記保持手段に保持されるログから選択する選択ステップと、
    前記クライアントの登録要求送信手段が、前記選択ステップにより選択されたログを前記サーバに送信して登録要求する登録要求送信ステップと、
    前記サーバの1又は複数の登録要求受付手段が、前記クライアントから送信されるログの登録要求を受け付けて、前記ログを一時保存手段に保存し、前記登録要求を処理するための実行命令データを登録命令保存手段に登録する登録要求受付ステップと、
    前記サーバの1又は複数の登録処理手段が、前記登録命令保存手段への実行命令データの登録とは非同期で前記登録命令保存手段から前記実行命令データを取得して前記一時保存手段に保存された前記ログを前記保存手段に登録処理する登録処理ステップと、
    を有することを特徴とするログ登録方法。
  7. 画像形成装置と通信可能な1台以上のサーバコンピュータからなるサーバコンピュータ群から構成されるサーバにおけるログ登録方法であって、
    1又は複数の登録予約要求受付手段が、前記画像形成装置から送信されるジョブログの登録予約要求を受け付けて、前記画像形成装置から取得したジョブログ を保存するための保存手段に対して、前記画像形成装置から最後に登録されたジョブログの識別情報を、前記画像形成装置に返信する登録予約要求受付ステップ と、
    1又は複数の登録要求受付手段が、前記画像形成装置から送信されるジョブログの登録要求を受け付けて、前記ジョブログを一時保存手段に保存し、前記登録要求を処理するための実行命令データを登録命令保存手段に登録する登録要求受付ステップと、
    1又は複数の登録処理手段が、前記登録命令保存手段への実行命令データの登録とは非同期で前記登録命令保存手段から前記実行命令データを取得して前記一時保存手段に保存された前記ジョブログを前記保存手段に登録処理する登録処理ステップと、
    を有することを特徴とするログ登録方法。
  8. コンピュータを、請求項2乃至5のいずれか1項に記載された手段として機能させるためのプログラム。
JP2010252413A 2010-11-11 2010-11-11 ネットワークシステム、サーバ、ログ登録方法、及び、プログラム Expired - Fee Related JP5602592B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010252413A JP5602592B2 (ja) 2010-11-11 2010-11-11 ネットワークシステム、サーバ、ログ登録方法、及び、プログラム
US13/288,853 US9160621B2 (en) 2010-11-11 2011-11-03 Network system, server, information processing apparatus, log registration method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010252413A JP5602592B2 (ja) 2010-11-11 2010-11-11 ネットワークシステム、サーバ、ログ登録方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2012103928A JP2012103928A (ja) 2012-05-31
JP5602592B2 true JP5602592B2 (ja) 2014-10-08

Family

ID=46047505

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010252413A Expired - Fee Related JP5602592B2 (ja) 2010-11-11 2010-11-11 ネットワークシステム、サーバ、ログ登録方法、及び、プログラム

Country Status (2)

Country Link
US (1) US9160621B2 (ja)
JP (1) JP5602592B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8839447B2 (en) * 2012-02-27 2014-09-16 Ca, Inc. System and method for virtual image security in a cloud environment
JP6427880B2 (ja) * 2013-02-06 2018-11-28 株式会社リコー 情報処理システム、情報処理装置及びプログラム
US9846721B2 (en) * 2013-03-13 2017-12-19 Genesys Telecommunications Laboratories, Inc. Log file management tool
JP2016045930A (ja) * 2014-08-22 2016-04-04 キヤノン株式会社 管理システム、及び、管理システムの制御方法
US10552234B2 (en) * 2015-12-10 2020-02-04 Microsoft Technology Licensing, Llc Enhanced notification of editing events in shared documents
CN106878041B (zh) * 2015-12-11 2020-11-20 阿里巴巴(中国)有限公司 日志信息处理方法、装置及系统
US10698927B1 (en) * 2016-08-30 2020-06-30 Palantir Technologies Inc. Multiple sensor session and log information compression and correlation system
JP2018063672A (ja) * 2016-10-14 2018-04-19 キヤノン株式会社 メッセージ実行サーバー、制御方法、およびプログラム
JP6880961B2 (ja) * 2017-04-14 2021-06-02 富士通株式会社 情報処理装置、およびログ記録方法
CN107379787B (zh) * 2017-07-18 2019-01-29 大连探索者科技有限公司 一种基于移动互联网的自主扫描复印打印显示一体机系统
JP2019061458A (ja) * 2017-09-26 2019-04-18 京セラドキュメントソリューションズ株式会社 電子機器およびログアプリケーション
CN111782610B (zh) * 2020-06-03 2024-03-22 中移(杭州)信息技术有限公司 日志处理方法、装置、服务器、系统网络和存储介质
CN114640527B (zh) * 2022-03-21 2023-03-24 重庆市规划和自然资源信息中心 基于日志审计的不动产登记业务网络安全风险识别方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05298215A (ja) * 1992-04-20 1993-11-12 Fujitsu Ltd 欠落データ検出再送方法
JP3376760B2 (ja) * 1995-05-30 2003-02-10 富士ゼロックス株式会社 被管理機器のログ取得方式
JPH11338742A (ja) * 1998-05-26 1999-12-10 Nec Corp ログ収集方法、ログ方式及び記録媒体
JP4748950B2 (ja) * 2004-05-25 2011-08-17 株式会社日立製作所 記憶領域管理方法及びシステム
JP4725726B2 (ja) 2005-12-13 2011-07-13 富士ゼロックス株式会社 画像処理装置、ジョブログ管理プログラムおよび画像処理システム
JP4895908B2 (ja) * 2006-09-12 2012-03-14 株式会社リコー ログ転送装置、ログ転送プログラムおよび記録媒体
US8458727B2 (en) * 2007-11-05 2013-06-04 Microsoft Corporation Asynchronous client to server updates
US20090180141A1 (en) * 2008-01-11 2009-07-16 Kyocera Mita Image Forming Apparatus, Charge Server and Image Forming System

Also Published As

Publication number Publication date
JP2012103928A (ja) 2012-05-31
US9160621B2 (en) 2015-10-13
US20120120441A1 (en) 2012-05-17

Similar Documents

Publication Publication Date Title
JP5602592B2 (ja) ネットワークシステム、サーバ、ログ登録方法、及び、プログラム
JP5791390B2 (ja) 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
US8970876B2 (en) Printing system, cloud computing system, printing system control method, and storage medium
JP5595035B2 (ja) 情報処理装置、その方法及びプログラム
US8836974B2 (en) Image processing system and control method for managing a job related to image processing in a distributed environment
US9372648B2 (en) Image forming device capable of exchanging print data with another image forming device, and control method and storage medium therefor
JP6364738B2 (ja) 情報処理システム、情報処理装置、プログラム及び処理実行方法
US8570574B2 (en) Processing system, control method, and storage medium therefor
US8717600B2 (en) Network system, network system control method, and storage medium
JP2011248683A (ja) クラウドコンピューティングシステム、サーバーコンピュータ、デバイス接続方法及びプログラム
JP2012108620A (ja) 印刷中継システム、画像形成装置、システムの制御方法、およびプログラム
JP6041687B2 (ja) 印刷サーバシステム、および制御方法、およびプログラム
JP2015121989A (ja) ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
JP2014172394A (ja) 印刷装置、プログラム及び印刷システム
US20170118191A1 (en) Image processing apparatus, method for controlling the same, and storage medium for carrying out login processing
JP2009295080A (ja) 印刷処理システム
JP2013014021A (ja) ジョブ処理装置、ジョブ処理装置の制御方法及びプログラム
JP2017144684A (ja) 印刷システム、画像形成装置、印刷システムの制御方法、画像形成装置の制御方法、及びプログラム
JP7086767B2 (ja) プリントサーバー、制御方法、およびそのプログラム
JP2007122093A (ja) 印刷制御装置及び印刷制御方法ならびに印刷制御方法を実行するプログラム
JP5574821B2 (ja) 管理装置、管理方法、及びプログラム
JP6366332B2 (ja) プリントサーバ、制御方法およびコンピュータプログラム
JP2006155578A (ja) 情報管理装置、情報管理システム及び情報管理方法
JP2017136835A (ja) 画像形成装置、制御方法及びプログラム
JP2015022682A (ja) 印刷システム、方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131010

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140701

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140820

R151 Written notification of patent or utility model registration

Ref document number: 5602592

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees