説明

サーバ装置、メモリ管理方法及びメモリ管理プログラム

【課題】メモリを効率的に使用する。
【解決手段】サーバ装置3は、クライアント2が取得するデータの種類ごとにデータの実行履歴から算出したデータ量を表す使用メモリ量情報3bから、クライアント2からの要求に応じて実行するデータの種類に対応するデータ量を特定し、特定したデータ量をメモリ3aに割り当てるようにした。このため、メモリ3aの容量に対してデータ量を効率的に割り当てることが可能となる。したがって、1台のサーバ装置3に対して接続できるクライアント2の台数を増加させることが可能となり、サーバ装置3の増設を防ぎ、サーバ装置3の導入コストを抑制することができる。

【発明の詳細な説明】
【技術分野】
【0001】
サーバ装置、メモリ管理方法及びメモリ管理プログラムに関する。
【背景技術】
【0002】
銀行等の金融機関では、取引業務を行うためのクライアントが設置されている。クライアントは、通帳プリンタユニットと、帳票読取ユニット、手のひら静脈認証ユニット、現金処理ユニット、文字及び数字を入力するためのキーボードユニット、これらのユニットが接続される制御ユニット(クライアント端末)等とを備えている。クライアント端末はオペレータによる操作入力に応じて接続されているユニットを制御し、また、接続されているユニットから入力された情報に応じて所定の処理を実行する。また、このような複数のクライアントはクライアント端末から、取引に関する情報の処理及び管理を行うサーバに接続されている。
【0003】
例えば、オペレータはクライアント端末に接続されている帳票読取ユニットに帳票を読み取らせ、オペレータの操作入力に基づきクライアント端末は読み取った帳票の画像データをサーバに送信する。サーバは受信した帳票の画像データを保持することができる。また、オペレータは、サーバから所望の帳票の画像データの取り出し要求の操作入力をクライアント端末に対して行うと、クライアント端末からサーバに対して当該取り出し要求が通知される。サーバはクライアント端末からの要求に基づいた帳票の画像データをクライアント端末に通知すると、オペレータは所望の帳票の画像データをクライアント端末を介して取り扱うことができる(例えば、特許文献1参照)。
【0004】
また、サーバに接続されるクライアント端末の台数はサーバのメモリ使用量を考慮して各クライアント端末で取り扱われる帳票の画像データのうち最も大きなメモリ量を要するものを基準にして決定されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2011−076407号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、このような接続台数の決定方法では、各クライアント端末で取り扱われる帳票の画像データが1つでも非常に大きいもの、または一度に取り扱う枚数が大量のものがあれば、この画像データ量を基準に台数が決定されるために、サーバに接続させるクライアント端末の台数が制限されてしまう。
【0007】
このため、大量の帳票を処理したい場合には、サーバを大量に導入して、各サーバにクライアント端末を接続させる必要があり、サーバの導入コストが増加するという問題点があった。
【0008】
本発明はこのような点に鑑みてなされたものであり、メモリを効率的に使用するサーバ装置、メモリ管理方法及びメモリ管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために、クライアントが通信可能に接続されるサーバ装置において、前記クライアントが取得するデータの種類ごとに前記データの実行履歴から算出したデータ量を表す使用メモリ量情報から、前記クライアントからの要求に応じて実行するデータの種類に対応するデータ量を特定する要求実行手段と、前記要求実行手段が特定した前記データ量をメモリに割り当てるメモリ管理手段と、を有するサーバ装置が提供される。
【0010】
また、上記目的を達成するために、上記サーバ装置と同様のメモリ管理を実行する方法及びプログラムが提供される。
【発明の効果】
【0011】
このようなサーバ装置、メモリ管理方法及びメモリ管理プログラムにより、メモリを効率的に使用することができる。
【図面の簡単な説明】
【0012】
【図1】第1の実施の形態に係るサーバ装置の概念図である。
【図2】第2の実施の形態に係るクライアント及びサーバを備える取引システムを説明するための図である。
【図3】第2の実施の形態に係るクライアント及び周辺装置のハードウェア構成例を示す図である。
【図4】第2の実施の形態に係るサーバのハードウェア構成例を示す図である。
【図5】第2の実施の形態に係るサーバが備える機能を示すブロック図である。
【図6】第2の実施の形態に係るサーバのメモリ統計情報保持部を保持する情報を示す図である。
【図7】第2の実施の形態に係るメモリ統計情報保持部が保持する情報を示す図である。
【図8】第2の実施の形態に係るサーバの帳票情報を保持する帳票情報保持部を示す図である。
【図9】第2の実施の形態に係るサーバにおける帳票の画像データの読取格納処理を示すフローチャート(その1)である。
【図10】第2の実施の形態に係るサーバにおける帳票の画像データの読取格納処理を示すフローチャート(その2)である。
【図11】第2の実施の形態に係るサーバにおける帳票の画像データの読取格納処理の場合のシーケンス図である。
【図12】第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理を示すフローチャート(その1)である。
【図13】第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理を示すフローチャート(その2)である。
【図14】第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理を示すフローチャート(その3)である。
【図15】第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理の場合のシーケンス図である。
【発明を実施するための形態】
【0013】
以下、図面を参照して実施の形態について説明する。
[第1の実施の形態]
図1は、第1の実施の形態に係るサーバ装置の概念図である。
【0014】
サーバ装置は、クライアントからの要求に応じて実行するデータの種類に対応するデータ量を予め特定して、特定したデータ量をメモリに割り当てることでメモリを効率的に使用することができるものである。
【0015】
図1には、クライアント2とこのようなサーバ装置3とを備える情報処理システム1が示されている。
クライアント2は、オペレータの操作入力に応じて取得したデータをサーバ装置3に格納させる。また、サーバ装置3に格納されているデータをサーバ装置3から取り出す。クライアント2は、例えば、帳票読取装置が接続された営業店システムを構成するクライアント端末であって、オペレータは帳票読取装置に帳票の画像データを読み取らせる。帳票読取装置が読み取った画像データをクライアント端末からサーバ装置3に通知して、サーバ装置3に当該画像データを格納させる。または、オペレータは所望の画像データの送信要求をクライアント端末からサーバ装置3に通知することで、サーバ装置3から当該画像データが通知される。また、クライアント2のその他の例としては、書類を保管するファイリングセンターの端末等である。
【0016】
サーバ装置3は、図1に示されるように、メモリ3aと、使用メモリ量情報3b、データ構成情報3c、要求実行手段3d、メモリ管理手段3e、情報管理手段3fとを有する。
【0017】
メモリ3aは、データを格納することができ、例えば、RAM(Random Access Memory)等の記憶装置である。または、このような物理的なメモリに限らず、Java(登録商標)VM(Virtual Machine)の割り当てでも構わない。
【0018】
使用メモリ量情報3bは、クライアント2が取得するデータの種類ごとにデータの実行履歴から算出したデータ量を表す。例えば、上記のクライアント2がクライアントのクライアント端末である場合には、使用メモリ量情報3bは、サーバ装置3がクライアント2からの要求に応じて帳票の画像データに関して所定の処理を実行した際の実行した画像データの実際のデータ量に基づいて算出した画像データの種類ごとのデータ量である。
【0019】
データ構成情報3cは、実行種別ごとのデータの種類の構成を表す。例えば、複数種類の帳票が存在する場合に、サーバ装置3がこのような帳票の画像データに対して所定の処理を実行する場合に、実行される画像データの種類の構成を表す。
【0020】
要求実行手段3dは、使用メモリ量情報3bから、クライアント2からの要求に応じて実行するデータの種類に対応するデータ量を特定する。
メモリ管理手段3eは、要求実行手段3dが特定したデータ量をメモリ3aに割り当てる。
【0021】
情報管理手段3fは、クライアント2からの要求に応じて実行したデータの実際のデータ量に基づいて使用メモリ量情報3bを更新する。また、使用メモリ量情報3b及びデータ構成情報3cの情報を要求実行手段3dに通知する。
【0022】
このような構成を備えるサーバ装置3によるメモリ管理方法について説明する。
サーバ装置3に、クライアント2から、例えば、データの格納要求またはデータの取り出し要求が通知されると、要求実行手段3dは当該要求に応じて実行するデータの種類に対応するデータ量を情報管理手段3fを介して使用メモリ量情報3bから特定する。
【0023】
メモリ管理手段3eはメモリ3aに十分な容量があることを確認して特定したデータ量をメモリ3aに割り当てる。
この後、要求実行手段3dは、割り当てられたメモリ3aに要求実行のデータを適切に読み込ませることでクライアント2からの要求に基づいた処理を当該データに実行する。
【0024】
また、情報管理手段3fは、このようにしてクライアント2からの要求に応じて実行したデータの実際のデータ量を使用メモリ量情報3bに反映させて、使用メモリ量情報3bを更新することができる。
【0025】
このようにサーバ装置3は、クライアント2が取得するデータの種類ごとにデータの実行履歴から算出したデータ量を表す使用メモリ量情報3bから、クライアント2からの要求に応じて実行するデータの種類に対応するデータ量を特定し、特定したデータ量をメモリ3aに割り当てるようにした。このため、メモリ3aの容量に対してデータ量を効率的に割り当てることが可能となる。したがって、1台のサーバ装置3に対して接続できるクライアント2の台数を増加させることが可能となり、サーバ装置3の増設を防ぎ、サーバ装置3の導入コストを抑制することができる。
【0026】
また、使用メモリ量情報3bは、クライアント2からの要求に応じて実行したデータの実際のデータ量が反映されるため、使用メモリ量情報3bのデータ量は随時更新されるようになり、使用メモリ量情報3bのデータ量の信頼性が向上する。
【0027】
[第2の実施の形態]
第2の実施の形態では、第1の実施の形態で金融機関を想定して、情報処理システム1が営業店システム、クライアント2がクライアント端末である場合を例に挙げてより具体的に説明する。特に、帳票読取ユニットで読み取った帳票の画像データを利用して説明する。
【0028】
図2は第2の実施の形態に係るクライアント及びサーバを備える取引システムを説明するための図である。
金融機関の店舗内には、図2に示されるように、複数のクライアント20とサーバ30とが相互に通信可能に接続されている営業店システム10が構築されている。
【0029】
このような営業店システム10では、クライアント20からサーバ30に対してデータの格納及びデータの取り出し要求を行うことができる。また、サーバ30は各クライアント20からの要求に応じて処理を実行してデータの格納及び取り出したデータの通知を行うことができる。
【0030】
次に、このように店舗内に構築されている営業店システム10を構成するクライアント20及びサーバ30について説明する。
図3は、第2の実施の形態に係るクライアント及び周辺装置のハードウェア構成例を示す図である。
【0031】
クライアント20は、図3に示されるように、クライアント端末20aを備え、当該クライアント端末20aにタッチパネル20bと、キーボード20c、マウス20d、帳票読取ユニット20e、通帳プリンタユニット20f、現金処理ユニット20g等との各ユニットがそれぞれ接続されている。また、タッチパネル20bと、キーボード20c、帳票読取ユニット20e、通帳プリンタユニット20f、現金処理ユニット20gとがクライアント端末20aから取り付け及び取り外し可能となっている。
【0032】
クライアント端末20aは、接続されている各ユニットをそれぞれ制御し、各ユニットが取得した情報が通知されて、通知された情報に基づいた処理を実行する。また、クライアント端末20aはサーバ30にも通信可能に接続されている。
【0033】
このようなクライアント端末20aは、CPU(Central Processing Unit)20a1と、RAM20a2、通信部20a3、グラフィック処理部20a4、HDD(Hard Disk Drive)20a5、入力インタフェース20a6、入出力制御部20a7とを備えており、これらの各部はバス20a8で相互に接続されている。
【0034】
CPU20a1は、HDD20a5等の記憶媒体に記憶された各種プログラムを実行することにより、このクライアント端末20a全体を統括的に制御する。
RAM20a2には、CPU20a1に実行させるOS(Operating System)並びにプログラムの少なくとも一部が一時的に格納される。RAM20a2には、CPU20a1により実行するデータに対応するデータ量が割り当てられる。また、必要な各種データが格納される。
【0035】
通信部20a3は、サーバ30、後述する現金処理ユニット20gと通信可能に、例えばLAN(Local Area Network)で接続されており、送受信信号の通信を行うことができる。
【0036】
グラフィック処理部20a4は、具体例としては、ビデオカード、グラフィックボードであって、CPU20a1からの命令に従って、タッチパネル20bに表示させる画像データを後述するタッチパネル20bのモニタ20b1に送信する。
【0037】
HDD20a5には、クライアント端末20a上のOSやアプリケーションのプログラムが格納される。また、HDD20a5には、CPU20a1による処理に必要な各種データが格納される。
【0038】
入力インタフェース20a6は、顧客による操作入力を受け付けた後述するタッチパネル20bのタッチ検知部20b2、マウス20d及びキーボード20cから当該操作入力の情報を受信して、CPU20a1にそれぞれ通知する。
【0039】
入出力制御部20a7には、帳票読取ユニット20e及び通帳プリンタユニット20fが接続されている。帳票読取ユニット20e及び通帳プリンタユニット20fは、バス20a8を介してCPU20a1と相互に信号の送受信を行う。
【0040】
また、タッチパネル20bは、通知された画像情報に基づいて画像を表示する例えばLCD(Liquid Crystal Display)であるモニタ20b1と、オペレータによる操作入力を受け付けるタッチ検知部20b2とを備える。
【0041】
キーボード20cは、オペレータの操作入力に応じた文字情報を、入力インタフェース20a6を介してCPU20a1に通知する。
マウス20dは、オペレータの操作に応じた信号を入力インタフェース20a6に通知する。当該信号に応じて、モニタ20b1に表示されるカーソルの移動、クリックに対応した処理が実行される。
【0042】
帳票読取ユニット20eは、例えば、オーバーヘッドリーダにより1枚ずつ帳票の画像データを読み取るもの、または、ADF(Auto Document Feeder)が設けられた帳票読取装置により種類が混合した複数枚の帳票の画像を連続して読み取るもの等である。このような帳票読取ユニット20eはオペレータによる操作入力に応じて、帳票の画像データを読み取り、読み取った画像データを入出力制御部20a7を介してCPU20a1に通知する。
【0043】
通帳プリンタユニット20fは、オペレータにより挿入された通帳を所定位置まで搬送し、オペレータからの実行指示に応じた処理の処理結果を記録する。また、通帳プリンタユニット20fは、処理結果の記録が完了した通帳を搬送して、オペレータに返却する。
【0044】
現金処理ユニット20gは、紙幣挿入/放出口から挿入された紙幣を受け入れて、紙幣をそれぞれ計数する。また、オペレータの所定の実行指示に応じて、紙幣挿入/放出口から処理に応じた額の紙幣をそれぞれ放出することができる。
【0045】
このようなタッチパネル20bと、キーボード20c、マウス20d、帳票読取ユニット20e、通帳プリンタユニット20f、現金処理ユニット20gとは、CPU20a1によってそれぞれ制御される。
【0046】
図4は、第2の実施の形態に係るサーバのハードウェア構成例を示す図である。
なお、これらは図3のクライアント端末20aが保持する構成と同じであるためにそれぞれの詳細な説明は省略する。
【0047】
サーバ30は、図4に示されるように、CPU30aと、RAM30b、通信部30c、モニタ30hが接続されたグラフィック処理部30d、HDD30e、キーボード30i及びマウス30jがそれぞれ接続された入力インタフェース30fとを備えており、これらの各部はバス30gで相互に接続されている。
【0048】
次に、このようなサーバ30が備える機能について説明する。
図5は、第2の実施の形態に係るサーバが備える機能を示すブロック図である。
サーバ30は、クライアント端末20aからの要求に応じて実行する帳票の画像データの種類に対応するデータ量を予め特定して、特定したデータ量をメモリ部に割り当てることでメモリ部を効率的に使用することができるものである。
【0049】
このようなサーバ30は、メモリ部31と、メモリ統計情報保持部32、帳票情報保持部33とを備える。さらに、受付部34と、要求実行部35、情報管理部36、メモリ管理部37、帳票情報制御部38、応答部39とを備える。
【0050】
メモリ部31は、例えば、共有メモリ、JavaVMのメモリ等である。
メモリ統計情報保持部32は、メモリ部31及び帳票の画像データ等に関する情報を保持する。
【0051】
図6は、第2の実施の形態に係るサーバのメモリ統計情報保持部を保持する情報を示す図である。
メモリ統計情報保持部32には、使用メモリ量情報32aと、帳票データ量情報32b、案件構成情報32c、メモリ状態情報32dとを保持している。
【0052】
図7は、第2の実施の形態に係るメモリ統計情報保持部が保持する情報を示す図である。
なお、図7(A)〜(D)は、使用メモリ量情報32aと、帳票データ量情報32b、案件構成情報32c、メモリ状態情報32dとをそれぞれ表している。
【0053】
使用メモリ量情報32aは、図7(A)に示されるように、帳票種ごとのメモリ部31の各メモリ1〜3に対する使用メモリ量(平均)である。なお、帳票には、帳票種ごとに帳票1,2,3,…,Nの番号が付されている。例えば、帳票種の「帳票1」はメモリ1に「300KB」のデータ量(平均)を、メモリ2に「50KB」のデータ量(平均)をそれぞれ使用する。
【0054】
帳票データ量情報32bは、メモリ1〜3について、帳票種ごとの画像データのこれまでに実行された回数(頻度)と、最大データ量(最大)、最小データ量(最小)、平均データ量(平均)との情報である。なお、図7(B)では、メモリ1の場合のみを例に示している。これによれば、「帳票2」は、これまでに「12000回」実行されており、そのうち最大データ量は「500KB」で、最小データ量は「100KB」であり、平均データ量は「250KB」である。帳票データ量情報32bは、画像データが実際に実行されることで得られる実際のデータ量が随時反映される。そして、帳票データ量情報32bの平均データ量は、使用メモリ量情報32aの平均データ量に反映される。
【0055】
案件構成情報32cは、図7(C)に示されるように、取引種別ごとの案件構成のデータである。なお、取引種別は、帳票の画像データの種類の構成を種別するものである。具体的には、例えば、銀行口座を開設する際には、申込書と本人確認証(免許書等)との2種の帳票(書類)が1枚ずつ必要となる。この場合には、「帳票1」として申込書と「帳票2」として本人確認証(コピー)とが1枚ずつ用いられる。図7(C)の場合には、取引種別の案件aは、帳票寸法がA4の「帳票1」(1枚)と、A3の「帳票2」(1枚)とで構成されている。また、取引種別の案件bは、帳票寸法がA3の「帳票2」(2枚)と、A4の「帳票3」(1枚)とで構成されている。また、このような取引種別は、クライアント端末20aからサーバ30に対して所望の処理実行要求と共に通知される。
【0056】
メモリ状態情報32dは、図7(D)に示されるように、メモリ部31のメモリ種類に応じた各メモリ種類の最上限及び現在の使用メモリ量の情報である。例えば、「メモリ1」、「メモリ2」、「メモリ3」の使用メモリの最上限はそれぞれ、「3000MB」、「2000MB」、「1000MB」である。また、現在の使用メモリ量はそれぞれ「300MB」、「800MB」、「500MB」である。
【0057】
メモリ統計情報保持部32はこのような情報を保持している。
そして、帳票情報保持部33は、クライアント端末20aからの格納要求に基づき帳票の画像データを保持する。
【0058】
図8は、第2の実施の形態に係るサーバが格納する帳票情報を保持する帳票情報保持部を示す図である。
帳票情報保持部33は、図8に示されるように、図7(C)で説明した案件構成ごとに帳票の画像データを保持する。例えば、図8(A)では、「帳票1」(1枚)と、「帳票2」(1枚)とを案件aとして保持している。また、図8(B)では、「帳票2」(2枚)と、「帳票3」(1枚)とを案件bとして保持している。
【0059】
帳票情報保持部33はこのような情報を保持している。
また、受付部34は、各クライアント端末20aからデータの格納要求を、サーバ30が保持するデータの取り出し要求をそれぞれ受け付ける。例えば、クライアント端末20aから読み取った帳票の画像データのサーバ30への格納要求と共に取引種別の情報を受け付ける。また、クライアント端末20aからサーバ30に対する所望の帳票の画像データの取り出し要求と共に取引種別の情報を受け付ける。受付部34はクライアント端末20aから受け付けた要求等を要求実行部35に出力する。
【0060】
要求実行部35は、受付部34から受け付けた要求等に基づいた処理を実行する。まず、受付部34から帳票の画像データの格納要求を受け付けた場合には、取引種別に基づきメモリ統計情報保持部32から画像データのデータ量の通知要求を情報管理部36に通知する。要求実行部35は通知されたデータ量に基づいたメモリ部31の割り当て要求をメモリ管理部37に通知する。要求実行部35はメモリ部31に読み込まれた画像データの帳票情報保持部33に対する格納要求を帳票情報制御部38に通知する。
【0061】
また、受付部34から画像データの取り出し要求を受け付けた場合には、要求実行部35は取引種別に基づきメモリ統計情報保持部32から案件構成のデータの通知要求を情報管理部36に通知する。情報管理部36から通知された案件構成のデータを後述する応答部39からクライアント端末20aに通知する。また、格納要求の場合と同様にデータ量に基づいたメモリ部31の割り当て要求をメモリ管理部37に通知する。そして、メモリ部31に読み込まれた画像データを応答部39からクライアント端末20aに送信する。
【0062】
情報管理部36は、要求実行部35からの要求に基づきメモリ統計情報保持部32のデータを要求実行部35に通知する。また、帳票の画像データに所定の処理が実行されると、画像データの実際のデータ量をメモリ統計情報保持部32の帳票データ量情報32bに反映させて更新する。
【0063】
メモリ管理部37は、要求実行部35からの要求に基づきメモリ部31に対して所定のデータ量を使用メモリ量として割り当て、また、当該データに関する所定の処理が完了するとメモリ部31に割り当てた使用メモリ量を開放する。
【0064】
帳票情報制御部38は、要求実行部35からの要求に基づきメモリ部31に読み込ませた帳票の画像データを帳票情報保持部33に格納させ、また、帳票情報保持部33の帳票の画像データをメモリ部31に読み込ませる。
【0065】
応答部39は、要求実行部35の要求に基づいてクライアント端末20aにデータを応答する。
次に、サーバ30で行われるクライアント端末20aの要求に応じた帳票の画像データの格納処理について説明する。
【0066】
図9及び図10は、第2の実施の形態に係るサーバにおける帳票の画像データの読取格納処理を示すフローチャートである。
[ステップS10] 要求実行部35は、クライアント端末20aから受け付けた帳票の画像データの格納要求及び取引種別の情報を受付部34から取得する。
【0067】
[ステップS11] 要求実行部35は取引種別に基づいた案件構成のデータと案件構成に対応する画像データのデータ量との通知要求を情報管理部36に通知する。
情報管理部36は、メモリ統計情報保持部32の案件構成情報32cから取引種別に対応する案件構成のデータを特定し、当該案件を構成する帳票の画像データのデータ量を要求実行部35に通知する。
【0068】
要求実行部35は取引種別に対応した案件構成のデータ及び各帳票の画像データのデータ量を取得する。
[ステップS12] 要求実行部35は、帳票iに1をセットする。
【0069】
[ステップS13] 要求実行部35は、ステップS11で取得した帳票の画像データに帳票iに対応する画像データの有無を判定する。
判定の結果、帳票iに対応する帳票の画像データがある場合にはステップS14に進められ、無い場合にはステップS20(図10)に進められる。
【0070】
[ステップS14] 要求実行部35は、帳票iの画像データのデータ量を当該帳票iの使用メモリ量とする。
[ステップS15] 要求実行部35は、メモリ部31に対するステップS14の帳票iの画像データの使用メモリ量の空きの有無の判定要求をメモリ管理部37に通知する。
【0071】
メモリ管理部37の判定結果、ステップS14で取得した使用メモリ量の空きがある場合にはステップS16に進められ、空きが無い場合にはステップS25(図10)に進められる。
【0072】
[ステップS16] メモリ管理部37はメモリ部31にステップS14の使用メモリ量を割り当てる。
[ステップS17] メモリ管理部37はメモリ部31に対する使用メモリ量の割り当てが正常に行われたか否かを判定する。
【0073】
判定の結果、使用メモリ量の割り当てが正常に行われた場合にはステップS18に進められ、正常に行われなかった場合にはステップS25(図10)に進められる。
[ステップS18] 要求実行部35は、ステップS16で割り当てた使用メモリ量によるメモリ統計情報保持部32のメモリ状態情報32dの更新要求を情報管理部36に通知して、情報管理部36は当該更新要求に基づいてメモリ統計情報保持部32のメモリ状態情報32dを更新する。
【0074】
[ステップS19] 要求実行部35は、帳票iに対応する帳票の画像データが他にもあるか否かを判定する。
判定の結果、帳票iに対応する帳票の画像データが他にもある場合にはステップS14に再び進められ、他に無い場合にはステップS20(図10)に進められる。
【0075】
[ステップS20] 要求実行部35は、帳票iに1を加えて、帳票i+1をセットする。
[ステップS21] 要求実行部35は、セットした帳票iのiがN以下であるか否かを判定する。
【0076】
判定の結果、N以下である場合にはステップS12に再び進められ、Nを超える場合にはステップS22に進められる。
[ステップS22] 要求実行部35は、案件構成のデータの格納要求を帳票情報制御部38に通知すると、帳票情報制御部38は帳票情報保持部33に案件構成のデータを格納する。
【0077】
[ステップS23] 要求実行部35は、クライアント端末20aから帳票の画像データが通知されて、当該画像データをメモリ部31に読み込ませる。そして、メモリ部31に読み込ませた帳票の画像データの格納要求を帳票情報制御部38に通知する。
【0078】
帳票情報制御部38は、格納要求に基づき、メモリ部31から帳票の画像データを帳票情報保持部33の案件構成に対して格納する。
[ステップS24] 要求実行部35は、メモリ部31に読み込ませた帳票の画像データの実際のデータ量に基づいた帳票データ量情報の更新要求を情報管理部36に通知する。
【0079】
情報管理部36は更新要求に基づいて帳票データ量情報32bに実際のデータ量を反映して、帳票データ量情報32bを更新する。
[ステップS25] 要求実行部35は、クライアント端末20aの要求がエラーであった旨を応答部39からクライアント端末20aに通知する。
【0080】
[ステップS26] 要求実行部35は、メモリ部31に割り当てた使用メモリ量の開放要求をメモリ管理部37に通知する。
メモリ管理部37は、メモリ部31のメモリ量を開放する。
【0081】
[ステップS27] 要求実行部35は、ステップS26で割り当てた使用メモリ量によるメモリ統計情報保持部32のメモリ状態情報32dの更新要求を情報管理部36に通知して、情報管理部36は当該更新要求に基づいてメモリ統計情報保持部32のメモリ状態情報32dを更新する。
【0082】
次に、このようなサーバ30による画像データの読取格納処理の具体例についてシーケンス図を用いて説明する。
図11は、第2の実施の形態に係るサーバにおける帳票の画像データの読取格納処理の場合のシーケンス図である。
【0083】
[ステップS30] クライアント端末20aは帳票読取ユニット20eで読み取った帳票1,2から構成される案件aを取引種別とする格納要求をサーバ30に通知する。
サーバ30の受付部34は、当該取引種別を受け付けると、要求実行部35に通知する(図9:ステップS10)。
【0084】
[ステップS31] 要求実行部35は取引種別に基づいた案件構成(案件a)のデータと案件構成の帳票1,2の画像データのデータ量との通知要求を情報管理部36に通知する(図9:ステップS11)。
【0085】
[ステップS32] 情報管理部36は、メモリ統計情報保持部32の案件構成情報32cから取引種別に対応する案件構成(案件a)のデータを特定し、当該案件aを構成する帳票1,2の画像データのデータ量を要求実行部35に通知する。
【0086】
要求実行部35は取引種別に対応した案件構成(案件a)のデータ、帳票1の画像データのデータ量(メモリ1:500KB、メモリ2:50KB)と、帳票2の画像データのデータ量(メモリ1:250KB)とを取得する(図9:ステップS11)。
【0087】
[ステップS33] 要求実行部35は、まず、取得した帳票1の画像データのデータ量を使用メモリ量として、当該使用メモリ量の割り当て要求をメモリ管理部37に通知する(図9:ステップS12〜S14)。
【0088】
[ステップS34] メモリ管理部37は、メモリ部31に十分な空きがあることを判定して、通知された帳票1のデータ量に対応する使用メモリ量をメモリ部31に正常に割り当てる(図9:ステップS15〜S17)。
【0089】
[ステップS35] 要求実行部35は、帳票1の画像データの使用メモリ量によるメモリ統計情報保持部32のメモリ状態情報32dの更新要求を情報管理部36に通知して、情報管理部36は当該更新要求に基づいてメモリ統計情報保持部32のメモリ状態情報32dを更新する(図9:ステップS18)。
【0090】
なお、帳票2についてもステップS33〜S35と同様の処理を実行する。
[ステップS36] 要求実行部35は、案件構成のデータの格納要求を帳票情報制御部38に通知する(図10:ステップS22)。
【0091】
[ステップS37] 帳票情報制御部38は帳票情報保持部33に案件aのデータを格納する(図10:ステップS22)。
[ステップS38] クライアント端末20aは帳票1,2の画像データをサーバ30に通知する。
【0092】
サーバ30の受付部34は、当該画像データを受け付けると、要求実行部35に通知する(図10:ステップS23)。
[ステップS39] 要求実行部35は、帳票1,2の画像データをメモリ部31に読み込ませる(図10:ステップS23)。
【0093】
[ステップS40] メモリ部31に読み込ませた帳票1,2の画像データの格納要求を帳票情報制御部38に通知する(図10:ステップS23)。
[ステップS41] 帳票情報制御部38は、格納要求に基づき、帳票1,2の画像データを帳票情報保持部33の案件構成に対して格納する(図10:ステップS23)。
【0094】
[ステップS42] 要求実行部35は、メモリ部31に読み込ませた帳票1,2の画像データの実際のデータ量に基づいた帳票データ量情報32bの更新要求を情報管理部36に通知する。
【0095】
情報管理部36は更新要求に基づいて帳票データ量情報32bに帳票1,2の画像データの実際のデータ量を反映して、帳票データ量情報32bを更新する(図10:ステップS24)。
【0096】
[ステップS43] 要求実行部35は、メモリ部31に割り当てた帳票1,2の画像データの使用メモリ量の開放要求をメモリ管理部37に通知する。メモリ管理部37は、メモリ部31のメモリ量を開放する(図10:ステップS26)。
【0097】
[ステップS44] メモリ管理部37は、メモリ部31のメモリ量を開放する(図10:ステップS26)。
[ステップS45] 要求実行部35は、帳票1,2の画像データの使用メモリ量によるメモリ統計情報保持部32のメモリ状態情報32dの更新要求を情報管理部36に通知して、情報管理部36は当該更新要求に基づいてメモリ統計情報保持部32のメモリ状態情報32dを更新する(図10:ステップS27)。
【0098】
このようにサーバ30は、クライアント端末20aが帳票読取ユニット20eで読み取った帳票の画像データの種類ごとに画像データの実行履歴から算出したデータ量を表す使用メモリ量情報32aから、クライアント端末20aからの読取格納要求に応じて格納する帳票の画像データの種類に対応するデータ量を特定し、特定したデータ量をメモリ部31に割り当てるようにした。このため、メモリ部31の容量に対して帳票の画像データのデータ量を効率的に割り当てることが可能となる。したがって、1台のサーバ30に対して接続できるクライアント端末20aの台数を増加させることが可能となり、サーバ30の増設を防ぎ、サーバ30の導入コストを抑制することができる。
【0099】
また、クライアント端末20aからの読取格納要求に応じて実行した帳票の画像データの実際のデータ量が使用メモリ量情報32aに反映されて更新されるため、使用メモリ量情報32aのデータ量の信頼性が向上する。したがって、メモリ部31に対して使用メモリ量をより適切に割り当てることができるようになる。
【0100】
[第3の実施の形態]
第3の実施の形態では、第2の実施の形態にクライアント20のクライアント端末20aがサーバ30に対して取り出し要求を通知する場合について説明する。
【0101】
なお、第3の実施の形態においても、第2の実施の形態のクライアント20とサーバ30とを備える営業店システム10を利用する(図2〜図9)。
このようなサーバ30で行われるクライアント端末20aの要求に応じた帳票の画像データの取り出し処理について説明する。
【0102】
図12〜図14は、第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理を示すフローチャートである。
なお、図9,図10のフローチャートで実行される処理と同じ処理が行われるものにはそれらと同じステップ番号を付しており、それらについては簡単に説明する。
【0103】
[ステップS50] 要求実行部35は、クライアント端末20aから通知された任意の帳票から構成される案件の取り出し要求を受付部34から取得する。
[ステップS51] 要求実行部35は、取り出し対象の案件構成のデータの通知要求を帳票情報制御部38に通知する。
【0104】
帳票情報制御部38は、通知された案件構成のデータを帳票情報保持部33から特定し、当該データを要求実行部35に通知する。
要求実行部35は案件構成のデータをクライアント端末20aに送信する。
【0105】
[ステップS11〜S21] 取り出し対象の案件を構成する帳票の画像データのデータ量に対応する使用メモリ量をメモリ部31に割り当てる。
[ステップS52] 要求実行部35は、帳票i=1をセットする。
【0106】
[ステップS53] 要求実行部35は、取り出し対象の案件構成に帳票iが含まれているか否かを判定する。
判定の結果、取り出し対象の案件構成に帳票iが含まれている場合にはステップS54に進められ、含まれていない場合にはステップS57に進められる。
【0107】
[ステップS54] 帳票情報制御部38は、要求実行部35からの要求に応じて帳票情報保持部33から帳票iの画像データを取り出す。そして、取り出した帳票iの画像データをメモリ部31の割り当てた所定箇所に出力する。
【0108】
[ステップS55] 要求実行部35は、メモリ部31の所定箇所に出力された帳票iの画像データを応答部39からクライアント端末20aに送信する。
[ステップS56] 要求実行部35は、帳票iに対応する帳票の画像データが他にもあるか否かを判定する。
【0109】
判定の結果、帳票iに対応する帳票の画像データが他にもある場合にはステップS54に再び進められ、他に無い場合にはステップS57に進められる。
[ステップS57] 要求実行部35は、帳票iに1を加えて、帳票i+1をセットする。
【0110】
[ステップS58] 要求実行部35は、セットした帳票iのiがN以下であるか否かを判定する。
判定の結果、iがN以下である場合にはステップS53に再び進められ、Nを超える場合にはステップS24(図14)に進められる。
【0111】
[ステップS24,S26,S27] 帳票データ量情報32bを更新し、メモリ部31において使用メモリ量を開放し、メモリ状態情報32dを更新する。
[ステップS25] クライアント端末20aにエラーであった旨を通知する。
【0112】
次に、このようなサーバ30による画像データ取り出し処理の具体例についてシーケンス図を用いて説明する。
図15は、第3の実施の形態に係るサーバにおける帳票の画像データの取り出し処理の場合のシーケンス図である。
【0113】
なお、図11のシーケンス図で実行される処理と同じ処理が行われるものにはそれらと同じステップ番号を付しており、それらについては簡単に説明する。
[ステップS60] クライアント端末20aは帳票1,2で構成される案件aの取り出し要求をサーバ30に通知する。
【0114】
サーバ30の受付部34は、当該取り出し要求を受け付けると、要求実行部35に通知する(図12:ステップS50)。
[ステップS61] 取り出し対象の案件aの構成のデータの通知要求を帳票情報制御部38に通知する(図12:ステップS51)。
【0115】
[ステップS62,S63] 帳票情報制御部38は、通知された案件構成のデータを帳票情報保持部33から特定し、当該データを要求実行部35に通知する(図12:ステップS51)。
【0116】
[ステップS64] 要求実行部35は案件構成のデータをクライアント端末20aに送信する(図12:ステップS51)。
[ステップS31〜S35] 要求実行部35が取り出し対象の案件aの構成のデータと案件aを構成する画像データのデータ量とを情報管理部36を介してメモリ統計情報保持部32から取得する。また、メモリ管理部37に当該データ量に基づいてメモリ部31に使用メモリ量を割り当てさせる。要求実行部35は割り当てられたメモリ部31に応じてメモリ状態情報32dを情報管理部36に更新させる。
【0117】
[ステップS65,S66] 帳票情報制御部38は、帳票情報保持部33から帳票1の画像データを取り出し、取り出した帳票1の画像データをメモリ部31の割り当てた所定箇所に出力する(図13:ステップS54)。
【0118】
[ステップS67,S68] 要求実行部35は、メモリ部31の所定箇所に出力された帳票1の画像データを応答部39からクライアント端末20aに送信する(図13:ステップS55)。
【0119】
なお、帳票2についてもステップS65〜S68と同様の処理を実行してクライアント端末20aに帳票2の画像データを送信する。
[ステップS42〜S45] 要求実行部35は、帳票データ量情報32bの帳票1,2について情報管理部36に更新させて、メモリ管理部37にメモリ部31に割り当てた使用メモリ量を開放させる。そして、要求実行部35は、メモリ状態情報32dの帳票1,2が読み込まれていたメモリについてメモリ管理部37に更新させる。
【0120】
このようにサーバ30は、クライアント端末20aが帳票読取ユニット20eで読み取った帳票の画像データの種類ごとに画像データの実行履歴から算出したデータ量を表す使用メモリ量情報32aから、クライアント端末20aからの取り出し要求に応じて取り出す帳票の画像データの種類に対応するデータ量を特定し、特定したデータ量をメモリ部31に割り当てるようにした。このため、メモリ部31の容量に対して帳票の画像データのデータ量を効率的に割り当てることが可能となる。したがって、1台のサーバ30に対して接続できるクライアント端末20aの台数を増加させることが可能となり、サーバ30の増設を防ぎ、サーバ30の導入コストを抑制することができる。
【0121】
また、取り出し処理においても、クライアント端末20aからの読取格納要求に応じて実行した帳票の画像データの実際のデータ量が使用メモリ量情報32aに反映されて更新されるため、使用メモリ量情報32aのデータ量の信頼性が向上する。したがって、メモリ部31に対して使用メモリ量をより適切に割り当てることができるようになる。
【0122】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、サーバ装置3及びサーバ30が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープ等がある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD(Compact Disc)−ROM(Read Only Memory)/RW(ReWritable)等がある。光磁気記録媒体には、MO(Magneto-Optical disk)等がある。
【0123】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0124】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0125】
また、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)等の電子回路で実現することもできる。
【符号の説明】
【0126】
1 情報処理システム
2,20 クライアント
3 サーバ装置
3a メモリ
3b 使用メモリ量情報
3c データ構成情報
3d 要求実行手段
3e メモリ管理手段
3f 情報管理手段
10 営業店システム
20a クライアント端末
20a1,30a CPU
20a2,30b RAM
20a3,30c 通信部
20a4,30d グラフィック処理部
20a5,30e HDD
20a6,30f 入力インタフェース
20a7 入出力制御部
20a8,30g バス
20b タッチパネル
20b1,30h モニタ
20b2 タッチ検知部
20c,30i キーボード
20d,30j マウス
20e 帳票読取ユニット
20f 通帳プリンタユニット
20g 現金処理ユニット
30 サーバ
31 メモリ部
32 メモリ統計情報保持部
32a 使用メモリ量情報
32b 帳票データ量情報
32c 案件構成情報
32d メモリ状態情報
33 帳票情報保持部
34 受付部
35 要求実行部
36 情報管理部
37 メモリ管理部
38 帳票情報制御部
39 応答部

【特許請求の範囲】
【請求項1】
クライアントが通信可能に接続されるサーバ装置において、
前記クライアントが取得するデータの種類ごとに前記データの実行履歴から算出したデータ量を表す使用メモリ量情報から、前記クライアントからの要求に応じて実行するデータの種類に対応するデータ量を特定する要求実行手段と、
前記要求実行手段が特定した前記データ量をメモリに割り当てるメモリ管理手段と、
を有することを特徴とするサーバ装置。
【請求項2】
前記要求実行手段は、前記使用メモリ量情報と共に、実行種別ごとのデータの種類の構成を表すデータ構成情報から、前記クライアントからの実行種別に基づく要求に応じて実行する各種類のデータのデータ量をそれぞれ特定する、
ことを特徴とする請求項1記載のサーバ装置。
【請求項3】
前記クライアントからの要求に応じて実行したデータの実際のデータ量に基づいて前記使用メモリ量情報を更新する情報管理手段を更に有することを特徴とする請求項1記載のサーバ装置。
【請求項4】
前記使用メモリ量情報の前記算出したデータ量は、前記実行したデータの実際のデータ量の平均値であることを特徴とする請求項3記載のサーバ装置。
【請求項5】
クライアントが接続されるサーバ装置のメモリ管理方法において、
要求実行手段が、前記クライアントが取得したデータの種類ごとに前記データの実行実績から予測したデータ量を表す使用メモリ量情報から、前記クライアントからの要求に応じて実行するデータの種類に対応するデータ量を特定し、
メモリ管理手段が、前記要求実行手段が特定した前記データ量をメモリに割り当てる、
ことを特徴とするメモリ管理方法。
【請求項6】
クライアントが接続されるサーバ装置のメモリ管理プログラムにおいて、
コンピュータに、
前記クライアントが取得したデータの種類ごとに前記データの実行実績から予測したデータ量を表す使用メモリ量情報から、前記クライアントからの要求に応じて実行するデータの種類に対応するデータ量を特定させ、
特定させた前記データ量をメモリに割り当てさせる、
処理を実行させることを特徴とするメモリ管理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−234277(P2012−234277A)
【公開日】平成24年11月29日(2012.11.29)
【国際特許分類】
【出願番号】特願2011−101216(P2011−101216)
【出願日】平成23年4月28日(2011.4.28)
【出願人】(000237639)富士通フロンテック株式会社 (667)
【Fターム(参考)】