JP5138026B2 - Multiple process processing apparatus and method - Google Patents

Multiple process processing apparatus and method Download PDF

Info

Publication number
JP5138026B2
JP5138026B2 JP2010293986A JP2010293986A JP5138026B2 JP 5138026 B2 JP5138026 B2 JP 5138026B2 JP 2010293986 A JP2010293986 A JP 2010293986A JP 2010293986 A JP2010293986 A JP 2010293986A JP 5138026 B2 JP5138026 B2 JP 5138026B2
Authority
JP
Japan
Prior art keywords
response
item
difference information
determination
update
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
JP2010293986A
Other languages
Japanese (ja)
Other versions
JP2012141781A (en
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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2010293986A priority Critical patent/JP5138026B2/en
Publication of JP2012141781A publication Critical patent/JP2012141781A/en
Application granted granted Critical
Publication of JP5138026B2 publication Critical patent/JP5138026B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数プロセス処理装置及び方法に関する。   The present invention relates to a multi-process processing apparatus and method.

従来より、コンピュータシステムは、マルチタスクオペレーティングシステムの管理下において、複数のプロセスが並列処理を行い、迅速な処理や、速やかな応答等を行う。このマルチタスクオペレーティングシステムの管理下でデータを共有する複数のプロセス同士は、共有するデータを更新するために互いに排他制御を行い、安全に更新する。このような排他制御について、ロック解除待ちによるデッドロックの発生を回避し、アクセスするたびにロックやロック解除を行うことによる応答性の低下等を防止するための対策が行われている。   2. Description of the Related Art Conventionally, in a computer system, a plurality of processes perform parallel processing under the management of a multitask operating system, and quick processing, quick response, and the like are performed. A plurality of processes sharing data under the management of the multitask operating system perform exclusive control and update safely in order to update the shared data. For such exclusive control, measures are taken to avoid the occurrence of deadlock due to waiting for unlocking and to prevent a decrease in responsiveness caused by locking or unlocking each time access is performed.

例えば、必要とされるデータページのみを占有するきめ細かな排他制御を可能とし、デッドロックを減少させることを目的とした特許文献1が知られている。   For example, Japanese Patent Application Laid-Open No. 2004-151867 is known that enables fine exclusive control that occupies only a required data page and reduces deadlock.

特許文献1のデッドロック削減方式は、複数のプロセスからのデータベースへのアクセス要求を参照ロックと更新ロックにより制御するロック制御において、データベース操作記述中に更新可能表の指定が明示的に規定されている場合は、データベース検索時に対象となるページにのみ予め更新ロックをかけ、明示的に規定されていない場合には、データベース検索時に対象となるページに参照ロックをかける。
一方、例えば、クライアントプログラムからのAPI(Application Programming Interface)の利用を許可するACL(Access Control List)サーバにおいて、秒間数万回の要求を受ける場合等の極めて高頻度の要求に応えるために、ロックをかけずに複数の応答プロセスに処理を実行させると、データに不整合が生じることになる。
In the deadlock reduction method of Patent Document 1, in lock control in which access requests to a database from a plurality of processes are controlled by reference locks and update locks, the specification of an updatable table is explicitly specified in the database operation description. If it is, update lock is applied in advance only to the target page at the time of database search, and if not explicitly specified, reference lock is applied to the target page at the time of database search.
On the other hand, for example, an ACL (Access Control List) server that permits the use of API (Application Programming Interface) from a client program is locked to respond to extremely high frequency requests such as receiving tens of thousands of requests per second. If processing is executed by a plurality of response processes without applying the process, data will be inconsistent.

特許第3338752号公報Japanese Patent No. 3338752

すなわち、このような極めて高頻度の要求に応えるためには、特許文献1のデッドロック削減方式では、十分なパフォーマンスを提供することはできず、他方、ロックを伴わない処理方式では、データの不整合が生じた場合に当該不整合を適切に制御することができない。   That is, in order to meet such an extremely high frequency request, the deadlock reduction method disclosed in Patent Document 1 cannot provide sufficient performance, while the processing method without a lock does not provide data. When a match occurs, the mismatch cannot be properly controlled.

そこで、全体として一定範囲の回数制限を有するクライアント処理を行う際に、ある程度のデータの不整合を許容しつつもこれを適切に制御し、応答速度を向上させることができる複数プロセス処理装置及び方法が望まれている。   Therefore, when performing client processing having a limited number of times as a whole, a multi-process processing apparatus and method capable of appropriately controlling this while allowing a certain amount of data inconsistency and improving response speed Is desired.

本発明は、全体として一定範囲の回数制限を有するクライアント処理を行う際に、複数のプロセスによってある程度のデータの不整合を許容して逐次応答を行いつつもこれを適切に制御し、応答速度を向上させることができる複数プロセス処理装置及び方法を提供することを目的とする。   In the present invention, when performing client processing having a certain number of times limit as a whole, a plurality of processes allow a certain amount of data inconsistency and perform a sequential response while appropriately controlling the response speed. An object of the present invention is to provide a multi-process processing apparatus and method that can be improved.

本発明では、以下のような解決手段を提供する。   The present invention provides the following solutions.

(1) 全体として一定範囲の回数制限を有するクライアント処理を行う複数プロセス処理装置であって、データベースが保持する項目の内容についてクライアントプログラムからの当該一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスを発生させるプロセス発生手段と、前記プロセス発生手段が発生させた前記複数のレスポンスプロセスの各々が、それぞれクライアントプログラムから前記一定範囲の回数制限に係る判断要求を受け付けたことに応じて、前記項目の内容を参照して当該一定範囲の回数制限に係る判断を行う際に、前記レスポンスプロセスの各々が独立して、他の前記レスポンスプロセスの処理結果を考慮しないで当該一定範囲の回数制限に係る判断を行って、前記クライアントプログラムに応答を返す応答手段と、さらに、前記項目の内容を更新するための差分情報を作成して前記レスポンスプロセスの各々が管理するメモリ上に保持する更新用差分情報作成手段と、前記差分情報について所定の更新条件を満たしたか否かを判断する更新条件判断手段と、前記更新条件判断手段が前記所定の更新条件を満たしたと判断したことに応じて、前記レスポンスプロセスの各々が保持している前記差分情報を用いて前記項目の内容を更新する項目更新手段と、を備える複数プロセス処理装置。   (1) A plurality of process processing apparatuses that perform client processing having a limited number of times as a whole, and that correspond to a determination request related to the limited number of times from the client program regarding the contents of items held in the database. In response to each of the plurality of response processes generated by the process generating means and the process generating means for generating the response process of each receiving a determination request relating to the limited number of times from the client program, When making a determination related to the limited number of times with reference to the content of the item, each of the response processes independently, without considering the processing results of the other response processes, And make a response to the client program Response means, and further, update difference information creating means for creating difference information for updating the contents of the item and holding the difference information in a memory managed by each of the response processes, and predetermined update for the difference information An update condition determination unit that determines whether or not a condition is satisfied, and the difference information held by each of the response processes in response to the determination that the update condition determination unit satisfies the predetermined update condition. A multi-process processing apparatus comprising: an item updating unit that updates the content of the item by using the item updating unit.

(1)の構成によれば、本発明に係る複数プロセス処理装置は、全体として一定範囲の回数制限を有するクライアント処理を行う際に、データベースが保持する項目の内容についてクライアントプログラムからの当該一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスを発生させる。そして、当該複数プロセス処理装置は、発生させた複数のレスポンスプロセスの各々が、それぞれクライアントプログラムから当該一定範囲の回数制限に係る判断要求を受け付けたことに応じて、独立して、他のレスポンスプロセスの処理結果を考慮しないで当該一定範囲の回数制限に係る判断を行い、クライアントプログラムに応答を返す。さらに、当該複数プロセス処理装置は、項目の内容を更新するための差分情報を作成してレスポンスプロセスの各々が管理するメモリ上に保持する。そして、当該複数プロセス処理装置は、差分情報について所定の更新条件を満たしたか否かを判断し、所定の更新条件を満たしたと判断したことに応じて、レスポンスプロセスの各々が保持している差分情報を用いて項目の内容を更新する。   According to the configuration of (1), when the multi-process processing device according to the present invention performs client processing having a certain number of times as a whole, the certain range from the client program regarding the contents of the items held in the database. A plurality of response processes corresponding to the determination request related to the number of times limit are generated. Then, in response to each of the generated plurality of response processes receiving a determination request related to the limited number of times from the client program, each of the plurality of process processing devices independently receives another response process. Without considering the processing result, the determination regarding the number of times within a certain range is made, and a response is returned to the client program. Further, the multi-process processing device creates difference information for updating the contents of the item and holds it on the memory managed by each of the response processes. Then, the multi-process processing device determines whether or not the predetermined update condition is satisfied for the difference information, and in response to determining that the predetermined update condition is satisfied, the difference information held by each of the response processes Update the content of the item using.

すなわち、本発明に係る複数プロセス処理装置において、クライアントプログラムからの全体として一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスは、各々が他のレスポンスプロセスの処理結果を考慮しないで、項目の内容を参照して当該一定範囲の回数制限に係る判断を行って、クライアントプログラムに応答を返す。そして、各レスポンスプロセスは、各々が保持している差分情報について所定の更新条件を満たしたと判断したことに応じて、各々が保持している差分情報を用いて項目の内容を更新する。よって、本発明に係る複数プロセス処理装置において、複数のプロセスの各々は、逐次応答を行う際の判断において互いのアクションを所定期間考慮しないで判断しつつ、所定の更新条件ごとに当該各々の差分情報が当該項目の内容に反映することになる。
したがって、本発明に係る複数プロセス処理装置は、複数のプロセスによって応答を行う際の判断において互いのプロセスのアクションを所定期間考慮しないで逐次応答することにより、ある程度の不整合を許容しつつもそれが際限なく大きくなることがないように制御し、応答速度を向上させることができる。
That is, in the multi-process processing apparatus according to the present invention, the plurality of response processes corresponding to the determination request related to the limited number of times as a whole from the client program do not consider the processing results of the other response processes, Referring to the content of the item, make a determination related to the limited number of times and return a response to the client program. Each response process updates the content of the item using the difference information held by each of the response processes when it is determined that the predetermined update condition is satisfied for the difference information held by each response process. Therefore, in the multi-process processing apparatus according to the present invention, each of the plurality of processes determines each difference for each predetermined update condition while determining each other's actions without considering the predetermined period in the determination when performing the sequential response. The information will be reflected in the contents of the item.
Therefore, the multi-process processing apparatus according to the present invention allows a certain degree of inconsistency while allowing a certain degree of inconsistency by sequentially responding without considering the actions of each other in a predetermined period in the determination when responding by a plurality of processes. Can be controlled so as not to increase without limit, and the response speed can be improved.

(2) 前記所定の更新条件は、前記項目更新手段による前記項目の内容の更新から所定の期間が経過したことである、(1)に記載の複数プロセス処理装置。   (2) The multiple process processing device according to (1), wherein the predetermined update condition is that a predetermined period has elapsed since the item update unit updated the content of the item.

よって、(2)に係る複数プロセス処理装置において、複数のプロセスの各々は、項目の内容の更新から所定の期間が経過するまでの判断において互いのアクションを考慮しないで判断する。したがって、(2)に係る複数プロセス処理装置は、複数のプロセスによって所定の期間が経過するまでの判断においてある程度の不整合を許容して逐次応答を行いつつ、当該所定の期間ごとに不整合を解消して当該不整合が際限なく大きくなることがないように制御し、応答速度を向上させることができる。   Therefore, in the multi-process processing apparatus according to (2), each of the plurality of processes makes a determination without considering each other's actions in the determination until the predetermined period elapses from the update of the content of the item. Therefore, the multi-process processing apparatus according to (2) allows the inconsistency to some extent in the determination until a predetermined period elapses by a plurality of processes, and performs a response in response to each of the predetermined periods. The response speed can be improved by controlling so that the inconsistency does not increase without limit.

(3) 前記所定の更新条件は、前記差分情報が所定以上蓄積されたことである、(1)又は(2)に記載の複数プロセス処理装置。   (3) The multiple process processing device according to (1) or (2), wherein the predetermined update condition is that the difference information has been accumulated more than a predetermined amount.

よって、(3)に係る複数プロセス処理装置において、複数のプロセスの各々は、差分情報が所定以上蓄積されるまでの判断において互いのアクションを考慮しないで判断する。したがって、(3)に係る複数プロセス処理装置は、複数のプロセスによって差分情報が所定以上蓄積されるまでの判断においてある程度の不整合を許容して逐次応答を行いつつ、当該差分情報が所定以上蓄積するごとに不整合を解消して当該不整合が際限なく大きくなることがないように制御し、応答速度を向上させることができる。   Therefore, in the multiple process processing device according to (3), each of the multiple processes makes a determination without considering each other's actions in the determination until the difference information is accumulated more than a predetermined amount. Therefore, the multi-process processing apparatus according to (3) accumulates more than a predetermined amount of difference information while allowing a certain amount of inconsistency in the determination until the difference information is accumulated more than a predetermined amount by a plurality of processes. It is possible to improve the response speed by eliminating the inconsistency each time the control is performed so that the inconsistency does not increase without limit.

(4) 前記所定の更新条件は、前記差分情報が示す差分が所定以上大きくなったことである、(1)から(3)のいずれかに記載の複数プロセス処理装置。   (4) The multiple process processing device according to any one of (1) to (3), wherein the predetermined update condition is that a difference indicated by the difference information is greater than a predetermined value.

よって、(4)に係る複数プロセス処理装置において、複数のプロセスの各々は、差分情報が示す差分が所定以上大きくなるまでの判断において互いのアクションを考慮しないで判断する。したがって、(4)に係る複数プロセス処理装置は、複数のプロセスによって差分情報が示す差分が所定以上大きくなるまでの判断においてある程度の不整合を許容して逐次応答を行いつつ、当該差分情報が示す差分が所定以上になるごとに不整合を解消して当該不整合が際限なく大きくなることがないように制御し、応答速度を向上させることができる。   Therefore, in the multiple process processing device according to (4), each of the multiple processes determines without considering each other's actions in the determination until the difference indicated by the difference information becomes greater than a predetermined value. Therefore, the multi-process processing apparatus according to (4) indicates that the difference information indicates while allowing a certain amount of inconsistency in the determination until the difference indicated by the difference information becomes larger than a predetermined value by a plurality of processes and performing a sequential response. It is possible to improve the response speed by eliminating the inconsistency every time the difference exceeds a predetermined value and controlling the inconsistency so that the inconsistency does not increase without limit.

(5) 全体として一定範囲の回数制限を有するクライアント処理を行う複数プロセス処理装置が、データベースが保持する前記項目の内容についてクライアントプログラムからの当該一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスを発生させるプロセス発生ステップと、前記プロセス発生ステップが発生させた前記複数のレスポンスプロセスの各々が、それぞれクライアントプログラムから前記一定範囲の回数制限に係る判断要求を受け付けたことに応じて、前記項目の内容を参照して当該一定範囲の回数制限に係る判断を行う際に、前記レスポンスプロセスの各々が独立して、他の前記レスポンスプロセスの処理結果を考慮しないで当該一定範囲の回数制限に係る判断を行って、前記クライアントプログラムに応答を返す応答ステップと、さらに、前記項目の内容を更新するための差分情報を作成して前記レスポンスプロセスの各々が管理するメモリ上に保持する更新用差分情報作成ステップと、前記差分情報について所定の更新条件を満たしたか否かを判断する更新条件判断ステップと、前記更新条件判断ステップが前記所定の更新条件を満たしたと判断したことに応じて、前記レスポンスプロセスの各々が保持している前記差分情報を用いて前記項目の内容を更新する項目更新ステップと、を実行する方法。   (5) A plurality of process processing apparatuses that perform client processing having a limited number of times as a whole, a plurality of items corresponding to a determination request related to the limited number of times from the client program for the contents of the item held in the database A process generation step for generating a response process, and each of the plurality of response processes generated by the process generation step in response to receiving a determination request for limiting the number of times within a certain range from a client program, When making a determination related to the limited number of times with reference to the contents of the item, each of the response processes independently performs the limited number of times without considering the processing results of the other response processes. Make such a determination, the client program A response step for returning an answer, a difference information creation step for creating difference information for updating the contents of the item, and storing the difference information in a memory managed by each of the response processes; An update condition determination step for determining whether or not the update condition is satisfied, and the difference held by each of the response processes in response to the determination that the update condition determination step satisfies the predetermined update condition An item updating step of updating the content of the item using information.

したがって、(5)に係る方法は、(1)と同様に、全体として一定範囲の回数制限を有するクライアント処理を行う複数プロセス処理装置が、複数のプロセスによって応答を行う際の判断において互いのプロセスのアクションを所定期間考慮しないで逐次応答することにより、ある程度の不整合を許容しつつもそれが際限なく大きくなることがないように制御し、応答速度を向上させることができる。   Therefore, the method according to (5) is similar to (1) in that a plurality of process processing apparatuses that perform client processing having a limited number of times as a whole perform mutual processes in a determination when responding by a plurality of processes. By sequentially responding without taking any action into consideration for a predetermined period, it is possible to control so as not to increase indefinitely while allowing a certain degree of inconsistency, thereby improving the response speed.

本発明によれば、全体として一定範囲の回数制限を有するクライアント処理を行う際に、複数のプロセスによってある程度のデータの不整合を許容して逐次応答を行いつつもこれを適切に制御し、応答速度を向上させることができる複数プロセス処理装置及び方法を提供することができる。   According to the present invention, when performing client processing having a limited number of times as a whole, a plurality of processes allow a certain amount of data inconsistency and perform a sequential response while appropriately controlling the response. A multi-process processing apparatus and method capable of improving the speed can be provided.

本発明の一実施形態に係る複数プロセス処理装置の機能構成を示す機能ブロック図である。It is a functional block diagram which shows the function structure of the multiple process processing apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係る複数プロセス処理装置の項目の一例を示す図である。It is a figure which shows an example of the item of the multiple process processing apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係る複数プロセス処理装置の差分情報の一例を示す図である。It is a figure which shows an example of the difference information of the multiple process processing apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係る複数プロセス処理装置の複数のレスポンスプロセスの各々の応答処理を示すフローチャートである。It is a flowchart which shows each response process of the some response process of the multi-process processing apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係る複数プロセス処理装置の複数のレスポンスプロセスの各々の更新条件判断処理を示すフローチャートである。It is a flowchart which shows the update condition judgment process of each of the some response process of the multi-process processing apparatus which concerns on one Embodiment of this invention.

以下、本発明の実施形態について図を参照しながら説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

本実施形態の複数プロセス処理装置10は、コンピュータ及びその周辺装置に適用される。本実施形態における各部及び各手段は、コンピュータ及びその周辺装置が備えるハードウェア並びに該ハードウェアを制御するソフトウェアによって構成される。   The multi-process processing apparatus 10 of this embodiment is applied to a computer and its peripheral devices. Each unit and each means in the present embodiment are configured by hardware included in a computer and its peripheral devices, and software that controls the hardware.

上記ハードウェアには、制御部としてのCPU(Central Processing Unit)の他、記憶部、通信装置、表示装置及び入力装置が含まれる。記憶部としては、例えば、メモリ50(RAM:Random Access Memory、ROM:Read Only Memory等)、ディスク装置31(HDD:Hard Disk Drive)及び光ディスク(CD:Compact Disk、DVD:Digital Versatile Disk等)ドライブが挙げられる。通信装置としては、例えば、クライアント装置60と通信するための各種有線及び無線インターフェース装置が挙げられる。表示装置としては、例えば、液晶ディスプレイやプラズマディスプレイ等の各種ディスプレイが挙げられる。入力装置としては、例えば、キーボード及びポインティング・デバイス(マウス、トラッキングボール等)が挙げられる。   The hardware includes a storage unit, a communication device, a display device, and an input device in addition to a CPU (Central Processing Unit) as a control unit. Examples of the storage unit include a memory 50 (RAM: Random Access Memory, ROM: Read Only Memory, etc.), a disk device 31 (HDD: Hard Disk Drive), and an optical disk (CD: Compact Disk, DVD: Digital Versatile Drive, etc.). Is mentioned. Examples of the communication device include various wired and wireless interface devices for communicating with the client device 60. Examples of the display device include various displays such as a liquid crystal display and a plasma display. Examples of the input device include a keyboard and a pointing device (mouse, tracking ball, etc.).

上記ソフトウェアには、上記ハードウェアを制御するコンピュータ・プログラムやデータが含まれる。コンピュータ・プログラムやデータは、記憶部により記憶され、制御部により適宜実行、参照される。また、コンピュータ・プログラムやデータは、通信回線を介して配布されることも可能であり、CD−ROM等のコンピュータ可読媒体に記録して配布されることも可能である。   The software includes a computer program and data for controlling the hardware. The computer program and data are stored in the storage unit, and are appropriately executed and referenced by the control unit. The computer program and data can be distributed via a communication line, or can be recorded on a computer-readable medium such as a CD-ROM and distributed.

図1は、本発明の一実施形態に係る複数プロセス処理装置10の機能構成を示す機能ブロック図である。図2は、本発明の一実施形態に係る複数プロセス処理装置10の項目の一例を示す図である。図3は、本発明の一実施形態に係る複数プロセス処理装置10の差分情報21の一例を示す図である。図1において、図2及び図3を参照して複数プロセス処理装置10の機能を説明する。   FIG. 1 is a functional block diagram showing a functional configuration of a multiple process processing apparatus 10 according to an embodiment of the present invention. FIG. 2 is a diagram showing an example of items of the multi-process processing apparatus 10 according to an embodiment of the present invention. FIG. 3 is a diagram showing an example of the difference information 21 of the multiple process processing apparatus 10 according to an embodiment of the present invention. In FIG. 1, functions of the multiple process processing apparatus 10 will be described with reference to FIGS. 2 and 3.

複数プロセス処理装置10では、マルチタスクオペレーティングシステムの管理下で、プロセスがメモリ50上で並列実行する。このようなマルチタスクオペレーティングシステムにおいて、プロセス発生手段11は、項目DB32(DB:データベース)が保持する項目の内容について、クライアント装置60で動作するクライアントプログラム61からの一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセス41a,41b,41n(以下、レスポンスプロセスを区別しない場合、レスポンスプロセス41という)を発生させる。   In the multi-process processing apparatus 10, processes are executed in parallel on the memory 50 under the management of the multitask operating system. In such a multitasking operating system, the process generation means 11 requests the determination of the content of items held in the item DB 32 (DB: database) from the client program 61 operating on the client device 60 to limit the number of times within a certain range. A plurality of response processes 41a, 41b, and 41n (hereinafter referred to as response processes 41 when the response processes are not distinguished) are generated.

ディスク装置31に記憶された項目DB32には、クライアントプログラム61からの一定範囲の回数制限に係る判断要求に対し、可能か否かを判断するための項目が記憶されている。項目は、例えば、図2のように、クライアントプログラム61のアプリケーションIDごとのAPI利用許可回数及びAPI利用許可上限回数である。API利用許可回数には、アプリケーションIDごとにAPIの利用を許可した回数が記憶され、API利用許可上限回数には、API利用許可回数の上限が記憶されている。API利用許可回数は、所定の更新条件(後述の項目更新手段15において詳述する)によって更新される。   The item DB 32 stored in the disk device 31 stores an item for determining whether or not a determination request from the client program 61 relating to the limited number of times is possible. The items are, for example, the API usage permission count and the API usage permission upper limit count for each application ID of the client program 61 as shown in FIG. The number of times of API use permission stores the number of times API use is permitted for each application ID, and the API use permission upper limit number stores the upper limit of API use permission times. The API usage permission count is updated according to a predetermined update condition (described in detail in item update means 15 described later).

プロセス発生部によって発生したレスポンスプロセス41は、応答手段12と、更新用差分情報作成手段13と、更新条件判断手段14と、項目更新手段15とを備える。   The response process 41 generated by the process generation unit includes response means 12, update difference information creation means 13, update condition determination means 14, and item update means 15.

プロセス発生手段11によって発生した複数のレスポンスプロセス41の各々において、応答手段12は、項目受付手段121によって、クライアントプログラム61からの一定範囲の回数制限に係る判断要求を受け付ける。一定範囲の回数制限に係る判断要求は、例えば、クライアントプログラム61のアプリケーションIDごとに所定回数までAPIの利用を許可するACL処理において、クライアントプログラム61がAPIの利用の許可を要求するAPI利用許可要求である。   In each of the plurality of response processes 41 generated by the process generation unit 11, the response unit 12 receives a determination request related to the limited number of times from the client program 61 by the item reception unit 121. The determination request related to the limited number of times is, for example, an API use permission request for requesting permission to use the API by the client program 61 in the ACL processing for permitting use of the API up to a predetermined number of times for each application ID of the client program 61. It is.

次に、応答手段12は、項目参照手段122によって、一定範囲の回数制限に係る判断要求(例えば、API利用許可要求)に対して判断するために項目の内容(例えば、API利用許可回数)を参照する。   Next, the response means 12 uses the item reference means 122 to determine the content of the item (for example, the number of times of API use permission) in order to make a determination with respect to a determination request (for example, an API use permission request) related to a limited number of times. refer.

次に、応答手段12は、判断処理実行手段123によって、参照した項目の内容(例えば、API利用許可回数)によって一定範囲の回数制限に係る判断を行う際に、レスポンスプロセス41の各々が独立して、他のレスポンスプロセス41の処理結果を考慮しないで判断を行う。
一定範囲の回数制限に係る判断は、例えば、上述のACL処理において、クライアントプログラム61のアプリケーションIDごとにAPIの利用を許可するか否か(例えば、API利用許可上限回数以内であるか否か)の判断である。
具体的には、応答手段12は、判断処理実行手段123によって、参照したAPI利用許可回数がAPI利用許可上限回数以内であるか否かを判断する際に、マルチタスクオペレーティングシステムの管理下で、項目DB32へのアクセス制限(例えば、レスポンスプロセス41同士の排他制御)を行うことなく、API利用許可回数を参照し、判断する。
Next, when the response unit 12 makes a determination regarding the number of times within a certain range according to the contents of the referenced item (for example, the number of times API use is permitted) by the determination process execution unit 123, each of the response processes 41 is independent. Thus, the determination is made without considering the processing results of the other response processes 41.
The determination related to the limited number of times is, for example, whether or not to permit the use of the API for each application ID of the client program 61 in the above-described ACL processing (for example, whether or not the API usage permission is within the upper limit number of times). It is a judgment.
Specifically, the response unit 12 uses the determination process execution unit 123 to determine whether or not the referred API use permission count is within the API use permission upper limit count under the management of the multitask operating system. The determination is made by referring to the API usage permission count without restricting access to the item DB 32 (for example, exclusive control between the response processes 41).

そして、応答手段12は、要求応答手段124によって、クライアントプログラム61に応答(例えば、APIの利用許可又は利用不許可)を返す。   Then, the response unit 12 returns a response (for example, API usage permission or usage permission) to the client program 61 by the request response unit 124.

更新用差分情報作成手段13は、項目の内容を更新するための差分情報21a,21b,21n(以下、差分情報を区別しない場合、差分情報21という)を作成してレスポンスプロセス41の各々が管理するメモリ50上に保持する。
差分情報21は、例えば、上述のACL処理において、クライアントプログラム61のアプリケーションIDごとのAPI利用許可回数の差分である。図3のように、レスポンスプロセス41の各々が、アプリケーションIDごとのAPI利用許可回数の差分をメモリ50の差分情報21に記憶している。さらに、差分情報21は、API利用許可回数の差分によって項目DB32を更新するたびに、更新した時刻である更新時刻を記憶する。
具体的には、更新用差分情報作成手段13は、マルチタスクオペレーティングシステムによってレスポンスプロセス41に割り当てられたメモリ50上に、アプリケーションIDごとのAPI利用許可回数の差分を作成し、例えば、応答手段12によってAPIの利用の許可を返すごとにカウントし、記憶する。
The update difference information creation means 13 creates difference information 21a, 21b, 21n (hereinafter referred to as difference information 21 when the difference information is not distinguished) for updating the contents of the item, and each response process 41 manages it. To be stored on the memory 50.
The difference information 21 is, for example, a difference in the number of permitted API usages for each application ID of the client program 61 in the above-described ACL processing. As shown in FIG. 3, each of the response processes 41 stores the difference in the number of times of API use permission for each application ID in the difference information 21 of the memory 50. Further, the difference information 21 stores an update time that is an updated time each time the item DB 32 is updated with a difference in the number of times of API use permission.
Specifically, the update difference information creation unit 13 creates a difference in the number of API usages permitted for each application ID in the memory 50 allocated to the response process 41 by the multitask operating system. For example, the response unit 12 Whenever API usage permission is returned, it counts and stores.

更新条件判断手段14は、差分情報21について所定の更新条件を満たしたか否かを判断する。そして、項目更新手段15は、更新条件判断手段14が所定の更新条件を満たしたと判断したことに応じて、レスポンスプロセス41の各々が保持している差分情報21を用いて項目の内容を更新する。
具体的には、更新条件判断手段14は、項目更新手段15による項目の内容の更新から所定の期間(例えば、10分)が経過したか否かを判断する。そして、項目更新手段15は、更新条件判断手段14が、例えば、項目の内容の直近の更新から所定の期間(例えば、10分)が経過したと判断したことに応じて、メモリ50に記憶しているAPI利用許可回数の差分を用いて項目の内容を更新する。そして、項目更新手段15は、差分情報21の更新時刻を更新する。
例えば、項目更新手段15は、項目DB32の項目を安全に更新する項目保持プロセス22に対してプロセス間通信によって、更新情報(例えば、アプリケーションID及びAPI利用許可回数の差分)をキューイングする。項目保持プロセス22は、レスポンスプロセス41の各々からキューイングされた更新情報によって、項目の内容を逐次、安全に更新する(例えば、アプリケーションIDのAPI利用許可回数の差分を、対応するアプリケーションIDのAPI利用許可回数に加算する)。
The update condition determination unit 14 determines whether or not a predetermined update condition is satisfied for the difference information 21. Then, the item update unit 15 updates the content of the item using the difference information 21 held by each of the response processes 41 in response to the determination that the update condition determination unit 14 satisfies the predetermined update condition. .
Specifically, the update condition determination unit 14 determines whether or not a predetermined period (for example, 10 minutes) has elapsed since the item update unit 15 updated the content of the item. Then, the item update unit 15 stores the update condition determination unit 14 in the memory 50 when, for example, it is determined that a predetermined period (for example, 10 minutes) has elapsed since the latest update of the content of the item. The content of the item is updated using the difference in the number of permitted API usages. Then, the item update unit 15 updates the update time of the difference information 21.
For example, the item update unit 15 queues update information (for example, the difference between the application ID and the API usage permission count) by inter-process communication with respect to the item holding process 22 that safely updates the item in the item DB 32. The item holding process 22 updates the contents of the item sequentially and safely with the update information queued from each of the response processes 41 (for example, the API use permission count difference of the application ID is changed to the API of the corresponding application ID. Add to the number of times allowed.)

このように、項目の内容は、所定期間ごとに更新される。例えば、API利用許可上限回数が10000回、直近のAPI利用許可回数が9999回であった場合に、複数プロセス処理装置10は、一のレスポンスプロセス41にAPIの利用許可の応答をすることによって実際にはAPI利用許可回数が10000回に達するが、API利用許可回数を更新するのが所定期間後なので、次の同じアプリケーションIDのAPI利用許可要求に対してもAPIの利用許可の応答をする。
よって、所定期間、項目の内容に所定の誤差が生じるが、複数プロセス処理装置10は、所定期間ごとに差分情報によってAPI利用許可回数を更新することによって、誤差が際限なく大きくなることがないように制御したうえで、応答速度を向上させることができる。
Thus, the content of the item is updated every predetermined period. For example, when the API use permission upper limit number is 10000 times and the latest API use permission number is 9999 times, the multi-process processing device 10 actually responds to one response process 41 by API use permission. The API usage permission count reaches 10,000 times, but since the API usage permission count is updated after a predetermined period, an API usage permission response is also made to the API usage permission request for the same application ID.
Therefore, although a predetermined error occurs in the content of the item for a predetermined period, the multiple process processing apparatus 10 does not increase the error indefinitely by updating the API usage permission count with the difference information for each predetermined period. It is possible to improve the response speed after being controlled.

上述の所定の更新条件は、差分情報21が所定以上蓄積されたこと、例えば、項目を更新するための情報がメモリ50に所定以上(例えば、100kバイト以上)蓄積されたことであってもよい。また、所定の更新条件は、差分情報21が示す差分が所定以上大きくなったこと、例えば、差分の値が10以上であることであってもよい。   The predetermined update condition described above may be that the difference information 21 has been accumulated for a predetermined amount or more, for example, information for updating an item has been accumulated in the memory 50 for a predetermined amount or more (for example, 100 kbytes or more). . Further, the predetermined update condition may be that the difference indicated by the difference information 21 is larger than a predetermined value, for example, that the difference value is 10 or more.

図4は、本発明の一実施形態に係る複数プロセス処理装置10の複数のレスポンスプロセス41の各々の応答処理を示すフローチャートである。なお、レスポンスプロセス41は、マルチタスクオペレーティングシステムの管理下で生成される。   FIG. 4 is a flowchart showing response processing of each of the plurality of response processes 41 of the multi-process processing apparatus 10 according to an embodiment of the present invention. The response process 41 is generated under the management of the multitask operating system.

ステップS101において、複数プロセス処理装置10のCPU(以下、単にCPUという)は、一定範囲の回数制限に係る判断要求を受け付ける。より具体的には、CPUは、クライアントプログラム61からの一定範囲の回数制限に係る判断要求(例えば、API利用許可要求)とアプリケーションIDとを受信する。その後、CPUは、処理をステップS102に移す。   In step S <b> 101, the CPU of the multi-process processing apparatus 10 (hereinafter simply referred to as “CPU”) accepts a determination request relating to a limited number of times. More specifically, the CPU receives a determination request (for example, an API usage permission request) and an application ID related to a limited number of times from the client program 61. Thereafter, the CPU moves the process to step S102.

ステップS102において、CPUは、項目の内容を参照する。より具体的には、CPUは、一定範囲の回数制限に係る判断要求(例えば、API利用許可要求)を判断するために、項目の内容(例えば、受信したアプリケーションIDに対応するAPI利用許可回数)を参照する。その後、CPUは、処理をステップS103に移す。   In step S102, the CPU refers to the content of the item. More specifically, in order to determine a determination request (for example, API usage permission request) related to a limited number of times, the CPU may determine the content of the item (for example, the API usage permission number corresponding to the received application ID). Refer to Thereafter, the CPU moves the process to step S103.

ステップS103において、CPUは、ステップS102において参照した項目の内容によって一定範囲の回数制限に係る判断を行い、一定範囲の回数制限に係る判断要求に対して許可するか否かを判断する。より具体的には、CPUは、ステップS102において参照したAPI利用許可回数が、受信したアプリケーションIDに対応するAPI利用許可上限回数以内であるか否かを判断する。この判断がYESの場合、CPUは、処理をステップS104に移し、この判断がNOの場合、CPUは、処理をステップS106に移す。   In step S <b> 103, the CPU makes a determination related to the fixed number of times limit according to the content of the item referred to in step S <b> 102, and determines whether or not to permit a determination request related to the fixed number of times limit. More specifically, the CPU determines whether or not the API usage permission count referred to in step S102 is within the API usage permission upper limit count corresponding to the received application ID. If this determination is YES, the CPU moves the process to step S104, and if this determination is NO, the CPU moves the process to step S106.

ステップS104において、CPUは、許可を応答する。より具体的には、CPUは、APIの利用許可をクライアントプログラム61に送信する。その後、CPUは、処理をステップS105に移す。   In step S104, the CPU responds permission. More specifically, the CPU transmits API usage permission to the client program 61. Thereafter, the CPU moves the process to step S105.

ステップS105において、CPUは、差分情報21を作成する。より具体的には、CPUは、受信したアプリケーションIDに対応した差分情報21の差分をカウント(+1)し、記憶する。その後、CPUは、処理を終了する。   In step S <b> 105, the CPU creates difference information 21. More specifically, the CPU counts (+1) the difference of the difference information 21 corresponding to the received application ID and stores it. Thereafter, the CPU ends the process.

ステップS106において、CPUは、不許可を応答する。より具体的には、CPUは、APIの利用不許可をクライアントプログラム61に送信する。その後、CPUは、処理を終了する。   In step S <b> 106, the CPU responds with a disapproval. More specifically, the CPU transmits API usage disapproval to the client program 61. Thereafter, the CPU ends the process.

図5は、本発明の一実施形態に係る複数プロセス処理装置10の複数のレスポンスプロセス41の各々の更新条件判断処理を示すフローチャートである。   FIG. 5 is a flowchart showing update condition determination processing for each of the plurality of response processes 41 of the multi-process processing apparatus 10 according to an embodiment of the present invention.

ステップS201において、CPUは、差分情報21を参照する。より具体的には、CPUは、マルチタスクオペレーティングシステムによって割り当てられたメモリ50上に記憶している差分情報21を参照する。その後、CPUは、処理をステップS202に移す。   In step S <b> 201, the CPU refers to the difference information 21. More specifically, the CPU refers to the difference information 21 stored on the memory 50 allocated by the multitask operating system. Thereafter, the CPU moves the process to step S202.

ステップS202において、CPUは、ステップS201において参照した差分情報21の更新時刻について所定期間が経過か否かを判断する。より具体的には、CPUは、ステップS201において参照した更新時刻と、現在の時刻とを比較し、所定の期間(例えば、10分)が経過しているか否かを判断する。この判断がYESの場合、CPUは、処理をステップS205に移し、この判断がNOの場合、CPUは、処理をステップS203に移す。   In step S202, the CPU determines whether a predetermined period has elapsed for the update time of the difference information 21 referenced in step S201. More specifically, the CPU compares the update time referenced in step S201 with the current time, and determines whether or not a predetermined period (for example, 10 minutes) has elapsed. If this determination is YES, the CPU moves the process to step S205, and if this determination is NO, the CPU moves the process to step S203.

ステップS203において、CPUは、差分情報21が所定以上蓄積か否かを判断する。より具体的には、CPUは、差分情報21がメモリ50に所定以上(例えば、100kバイト以上)蓄積しているか否かを判断する。この判断がYESの場合、CPUは、処理をステップS205に移し、この判断がNOの場合、CPUは、処理をステップS204に移す。   In step S <b> 203, the CPU determines whether or not the difference information 21 has accumulated a predetermined amount or more. More specifically, the CPU determines whether or not the difference information 21 is accumulated in the memory 50 by a predetermined amount (for example, 100 kbytes or more). If this determination is YES, the CPU moves the process to step S205, and if this determination is NO, the CPU moves the process to step S204.

ステップS204において、CPUは、差分情報21が所定以上大きいか否かを判断する。より具体的には、CPUは、差分情報21の差分が所定以上大きい(例えば、10以上)か否かを判断する。この判断がYESの場合、CPUは、処理をステップS205に移し、この判断がNOの場合、CPUは、処理を終了する。   In step S204, the CPU determines whether or not the difference information 21 is greater than a predetermined value. More specifically, the CPU determines whether or not the difference of the difference information 21 is larger than a predetermined value (for example, 10 or more). If this determination is YES, the CPU moves the process to step S205, and if this determination is NO, the CPU ends the process.

ステップS205において、CPUは、項目の内容を更新する。より具体的には、CPUは、差分情報21をプロセス間通信に従って項目保持プロセス22に送信する。そして、CPUは、差分情報21の差分(例えば、API利用許可回数の差分)をクリアし、更新時刻を更新する。その後、CPUは、処理を終了する。なお、項目保持プロセス22は、受信した差分情報21に基づいて、アプリケーションIDに対応する項目の内容を更新する(例えば、アプリケーションIDに対応するAPI利用許可回数に、受信した差分情報21の差分を加算し、記憶する)。   In step S205, the CPU updates the content of the item. More specifically, the CPU transmits the difference information 21 to the item holding process 22 according to the interprocess communication. Then, the CPU clears the difference of the difference information 21 (for example, the difference in the number of times of API use permission) and updates the update time. Thereafter, the CPU ends the process. The item holding process 22 updates the content of the item corresponding to the application ID based on the received difference information 21 (for example, the difference of the received difference information 21 is set to the number of API use permission corresponding to the application ID). Add and remember).

本実施形態によれば、複数プロセス処理装置10は、項目DB32が保持する項目の内容についてクライアントプログラム61からの一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセス41を発生させる。そして、複数プロセス処理装置10は、発生させた複数のレスポンスプロセス41の各々が、それぞれクライアントプログラム61から一定範囲の回数制限に係る判断要求を受け付けたことに応じて独立して、他のレスポンスプロセス41の処理結果を考慮しないで当該判断を行い、クライアントプログラム61に応答を返す。さらに、複数プロセス処理装置10は、項目の内容を更新するための差分情報21を作成してレスポンスプロセス41の各々が管理するメモリ50上に保持する。そして、複数プロセス処理装置10は、差分情報21について所定の更新条件(例えば、項目の内容の更新から所定期間が経過したこと、差分情報21が所定以上蓄積されたこと、又は差分情報21が示す差分が所定以上大きくなったこと)を満たしたか否かを判断し、所定の更新条件を満たしたと判断したことに応じて、レスポンスプロセス41の各々が保持している差分情報21を用いて項目の内容を更新する。したがって、複数プロセス処理装置10は、複数のプロセスによって応答を行う際の判断において互いのプロセスのアクションを所定期間考慮しないで逐次応答することにより、ある程度の不整合を許容しつつもそれが際限なく大きくなることがないように制御し、応答速度を向上させることができる。   According to the present embodiment, the multi-process processing device 10 generates a plurality of response processes 41 corresponding to a determination request related to the number of times within a certain range from the client program 61 for the contents of the items held in the item DB 32. Then, the multi-process processing device 10 independently determines that each of the generated response processes 41 receives another determination process related to the limited number of times from the client program 61, and receives another response process. This determination is made without considering the processing result of 41, and a response is returned to the client program 61. Further, the multi-process processing device 10 creates the difference information 21 for updating the contents of the item and holds it on the memory 50 managed by each of the response processes 41. Then, the multi-process processing device 10 indicates that the difference information 21 has a predetermined update condition (for example, that a predetermined period has elapsed since the update of the content of the item, the difference information 21 has been accumulated more than a predetermined amount, or the difference information 21 indicates The difference information 21 held by each of the response processes 41 is used in response to the determination that the predetermined update condition is satisfied. Update the contents. Accordingly, the multi-process processing apparatus 10 allows the inconsistency to some extent while responding to each other without sequentially considering the actions of the processes for a predetermined period in the determination when the response is made by a plurality of processes, which is unlimited. The response speed can be improved by controlling so as not to increase.

以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。   As mentioned above, although embodiment of this invention was described, this invention is not restricted to embodiment mentioned above. The effects described in the embodiments of the present invention are only the most preferable effects resulting from the present invention, and the effects of the present invention are limited to those described in the embodiments of the present invention. is not.

10 複数プロセス処理装置
11 プロセス発生手段
12 応答手段
121 項目受付手段
122 項目参照手段
123 判断処理実行手段
124 要求応答手段
13 更新用差分情報作成手段
14 更新条件判断手段
15 項目更新手段
21a、21b、21n 差分情報
22 項目保持プロセス
31 ディスク装置
32 項目DB
41a、41b、41n レスポンスプロセス
50 メモリ
60 クライアント装置
61 クライアントプログラム
DESCRIPTION OF SYMBOLS 10 Multiple process processing apparatus 11 Process generation means 12 Response means 121 Item reception means 122 Item reference means 123 Judgment processing execution means 124 Request response means 13 Update difference information creation means 14 Update condition judgment means 15 Item update means 21a, 21b, 21n Difference information 22 Item holding process 31 Disk device 32 Item DB
41a, 41b, 41n Response process 50 Memory 60 Client device 61 Client program

Claims (5)

全体として一定範囲の回数制限を有するクライアント処理を行う複数プロセス処理装置であって、
データベースが保持する項目の内容についてクライアントプログラムからの当該一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスを発生させるプロセス発生手段と、
前記プロセス発生手段が発生させた前記複数のレスポンスプロセスの各々が、
それぞれクライアントプログラムから前記一定範囲の回数制限に係る判断要求を受け付けたことに応じて、前記項目の内容を参照して当該一定範囲の回数制限に係る判断を行う際に、前記レスポンスプロセスの各々が独立して、他の前記レスポンスプロセスの処理結果を考慮しないで当該一定範囲の回数制限に係る判断を行って、前記クライアントプログラムに応答を返す応答手段と、
さらに、前記項目の内容を更新するための差分情報を作成して前記レスポンスプロセスの各々が管理するメモリ上に保持する更新用差分情報作成手段と、
前記差分情報について所定の更新条件を満たしたか否かを判断する更新条件判断手段と、
前記更新条件判断手段が前記所定の更新条件を満たしたと判断したことに応じて、前記レスポンスプロセスの各々が保持している前記差分情報を用いて前記項目の内容を更新する項目更新手段と、
を備える複数プロセス処理装置。
A multi-process processing apparatus that performs client processing having a fixed number of times as a whole,
A process generating means for generating a plurality of response processes corresponding to a determination request related to the limited number of times from the client program with respect to the contents of the items held in the database;
Each of the plurality of response processes generated by the process generating means is
In response to receiving a determination request related to the limited number of times from the client program, each of the response processes is performed when making a determination related to the fixed number of times with reference to the contents of the item. Independently, a response means for making a determination related to the limited number of times without considering the processing result of the other response process and returning a response to the client program;
Further, update difference information creating means for creating difference information for updating the content of the item and holding it on a memory managed by each of the response processes;
Update condition determination means for determining whether or not a predetermined update condition is satisfied for the difference information;
In response to determining that the update condition determination unit satisfies the predetermined update condition, an item update unit that updates the content of the item using the difference information held by each of the response processes;
A multi-process processing apparatus comprising:
前記所定の更新条件は、前記項目更新手段による前記項目の内容の更新から所定の期間が経過したことである、請求項1に記載の複数プロセス処理装置。   2. The multi-process processing apparatus according to claim 1, wherein the predetermined update condition is that a predetermined period has elapsed from the update of the content of the item by the item update unit. 前記所定の更新条件は、前記差分情報が所定以上蓄積されたことである、請求項1又は2に記載の複数プロセス処理装置。   The multi-process processing apparatus according to claim 1, wherein the predetermined update condition is that the difference information is accumulated more than a predetermined amount. 前記所定の更新条件は、前記差分情報が示す差分が所定以上大きくなったことである、請求項1から3のいずれかに記載の複数プロセス処理装置。   4. The multi-process processing apparatus according to claim 1, wherein the predetermined update condition is that a difference indicated by the difference information is greater than a predetermined value. 5. 全体として一定範囲の回数制限を有するクライアント処理を行う複数プロセス処理装置が、データベースが保持する項目の内容についてクライアントプログラムからの当該一定範囲の回数制限に係る判断要求に対応する複数のレスポンスプロセスを発生させるプロセス発生ステップと、
前記プロセス発生ステップが発生させた前記複数のレスポンスプロセスの各々が、
それぞれクライアントプログラムから前記一定範囲の回数制限に係る判断要求を受け付けたことに応じて、前記項目の内容を参照して当該一定範囲の回数制限に係る判断を行う際に、前記レスポンスプロセスの各々が独立して、他の前記レスポンスプロセスの処理結果を考慮しないで当該一定範囲の回数制限に係る判断を行って、前記クライアントプログラムに応答を返す応答ステップと、
さらに、前記項目の内容を更新するための差分情報を作成して前記レスポンスプロセスの各々が管理するメモリ上に保持する更新用差分情報作成ステップと、
前記差分情報について所定の更新条件を満たしたか否かを判断する更新条件判断ステップと、
前記更新条件判断ステップが前記所定の更新条件を満たしたと判断したことに応じて、前記レスポンスプロセスの各々が保持している前記差分情報を用いて前記項目の内容を更新する項目更新ステップと、
を実行する方法。
A multi-process processing device that performs client processing with a limited number of times as a whole generates a plurality of response processes corresponding to the determination request related to the fixed number of times from the client program for the contents of items held in the database Process generation steps to
Each of the plurality of response processes generated by the process generation step is
In response to receiving a determination request related to the limited number of times from the client program, each of the response processes is performed when making a determination related to the fixed number of times with reference to the contents of the item. Independently, a response step of making a determination related to the limited number of times without considering the processing result of the other response process and returning a response to the client program;
Furthermore, creating difference information for updating the contents of the item and holding on a memory managed by each of the response processes to create a difference information for update,
An update condition determination step for determining whether or not a predetermined update condition is satisfied for the difference information;
An item update step for updating the content of the item using the difference information held by each of the response processes in response to determining that the update condition determination step satisfies the predetermined update condition;
How to run.
JP2010293986A 2010-12-28 2010-12-28 Multiple process processing apparatus and method Active JP5138026B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010293986A JP5138026B2 (en) 2010-12-28 2010-12-28 Multiple process processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010293986A JP5138026B2 (en) 2010-12-28 2010-12-28 Multiple process processing apparatus and method

Publications (2)

Publication Number Publication Date
JP2012141781A JP2012141781A (en) 2012-07-26
JP5138026B2 true JP5138026B2 (en) 2013-02-06

Family

ID=46678022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010293986A Active JP5138026B2 (en) 2010-12-28 2010-12-28 Multiple process processing apparatus and method

Country Status (1)

Country Link
JP (1) JP5138026B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6189266B2 (en) 2014-08-20 2017-08-30 東芝メモリ株式会社 Data processing apparatus, data processing method, and data processing program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3338752B2 (en) * 1996-05-31 2002-10-28 日本電気株式会社 Deadlock reduction method by explicitly specifying updatable tables
JP2001034595A (en) * 1999-07-21 2001-02-09 Hitachi Ltd Method and device for integrating work among a plurality of systems
JP4654707B2 (en) * 2005-02-18 2011-03-23 日本電気株式会社 Bottleneck detection system, measurement target server, bottleneck detection method and program

Also Published As

Publication number Publication date
JP2012141781A (en) 2012-07-26

Similar Documents

Publication Publication Date Title
US10506043B2 (en) Rapid client-side component processing based on component relationships
US9378337B2 (en) Data item deletion in a database system
US10165079B2 (en) Providing a persona-based application experience
US8930323B2 (en) Transaction processing system, method, and program
US20120317234A1 (en) Managing data access in mobile devices
US8868604B2 (en) Methods and apparatus for implementing Semi-distributed Lock Management
JP2016524255A (en) Naive client-side sharding with online addition of shards
US20190354512A1 (en) Storing temporary state data in separate containers
WO2018120810A1 (en) Method and system for solving data collision
US8751469B2 (en) System and method for scaling for a large number of concurrent users
EP3049940B1 (en) Data caching policy in multiple tenant enterprise resource planning system
US10685034B2 (en) Systems, methods, and apparatuses for implementing concurrent dataflow execution with write conflict protection within a cloud based computing environment
JP6853714B2 (en) How to store data in a data storage system that provides a zero-competition parallel data stack
WO2018031351A1 (en) Discovery of calling application for control of file hydration behavior
US9405602B1 (en) Method for application notification and tasking
US20150121373A1 (en) User Privacy Systems And Methods
JP5138026B2 (en) Multiple process processing apparatus and method
Thota et al. Efficient large-scale replica-exchange simulations on production infrastructure
US11349930B2 (en) Identifying and deleting idle remote sessions in a distributed file system
US20170315785A1 (en) Concurrent authoring session management for declarative document
US9971801B2 (en) Grid cell data requests
US11308028B2 (en) Predicting and deleting idle remote sessions in a distributed file system
US10091064B2 (en) Systems and methods for stateless management of object properties
US9467452B2 (en) Transferring services in a networked environment
US9304829B2 (en) Determining and ranking distributions of operations across execution environments

Legal Events

Date Code Title Description
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: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121113

R150 Certificate of patent or registration of utility model

Ref document number: 5138026

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151122

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350