JP2016018222A - Queue server - Google Patents
Queue server Download PDFInfo
- Publication number
- JP2016018222A JP2016018222A JP2014138236A JP2014138236A JP2016018222A JP 2016018222 A JP2016018222 A JP 2016018222A JP 2014138236 A JP2014138236 A JP 2014138236A JP 2014138236 A JP2014138236 A JP 2014138236A JP 2016018222 A JP2016018222 A JP 2016018222A
- Authority
- JP
- Japan
- Prior art keywords
- queue
- request
- priority
- server
- requests
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、各サービスを実現するシステムにおいて、キューを扱うシステムに関する。 The present invention relates to a system for handling queues in a system for realizing each service.
従来のキューを保持するシステムは、各用途においてキューを作成し、キューごとに、各リクエストをメッセージとして扱い、FIFO(ファーストインファーストアウト)で制御している。たとえば、メールシステムなどで使用されている、サービス加入/解約といったサービスを行う際に現状は、キューを用いたサーバを用いたシステム構成をしている場合が一般的である。キューを用いる理由としては、端末(クライアントサーバ)からの処理を遅延させることなく処理するため、また、サービスを実現する各サーバの障害時にも、リクエストを失わないようにするためである。 A system that holds a conventional queue creates a queue for each application, and handles each request as a message for each queue and controls the request by FIFO (first in first out). For example, when a service such as service subscription / cancellation used in a mail system or the like is performed, a system configuration using a server using a queue is generally used. The reason for using the queue is that processing from the terminal (client server) is performed without delay, and that requests are not lost even when a failure occurs in each server that implements the service.
関連する技術として、特許文献1がある。この文献に開示されているのは、「順序依存性を持つキュー群を正しい順序でコンシューマシステムごとに統合できるキュー統合システム」であり、キュー内部ではなく、キュー間で優先順位を持たせて処理する技術である。そのため、サービスごとに、キューを作成し、さらに、キュー間での優先順位を管理させる結合キューを新たに設けることにより、キュー間での、リクエストの優先順位を決定し、優先順位どおりに処理をしている(要約参照)。
There exists
特許文献1が開示する技術では、キューごとの各サービス実現システムに対しての、優先順位保証は可能であるが、キュー内部のリクエスト単位での、順序制御はできない。また、各サービス実現システムごとのキューの設計が必要となり、運用面においても複雑な運用となる。
With the technique disclosed in
また、図9に示すようにキューを用いたシステムでは、キューは格納順に処理する。格納順で処理するため、キューに格納した相互関係が無い他のリクエストの処理の影響を受け、処理遅延が起きる課題がある。また、図10で示すように、先頭のリクエストがエラーとなった場合に、後続の処理が先頭と相互関係が無い場合にも遅延してしまう課題がある。 Further, in a system using queues as shown in FIG. 9, the queues are processed in the order of storage. Since processing is performed in the order of storage, there is a problem that processing delay occurs due to the influence of processing of other requests stored in the queue that have no mutual relationship. Also, as shown in FIG. 10, there is a problem that when the head request becomes an error, the subsequent processing is delayed even if there is no correlation with the head.
上述したリクエストに限らず、キューに格納するメッセージとして扱えるデータ、例えば、各種通信プロトコルを用いてパソコンや携帯電話や携帯情報端末間で送受信される、文字、図、画像、音声、動画等を含む電子メールなどの情報や、センサ情報や、車などモノが発信するデータ、などについても同様の課題がある。 Not only the above-mentioned requests, but also data that can be handled as messages to be stored in a queue, for example, characters, diagrams, images, sounds, videos, etc. that are sent and received between personal computers, mobile phones, and personal digital assistants using various communication protocols There are similar problems with information such as e-mail, sensor information, and data transmitted by things such as cars.
本発明は、同一キュー内において、キューの特徴である格納順での処理の中で、キュー内のメッセージにおいて、他のメッセージとの相互関係に基づいた処理順序の制御を可能とし、さらに、これによりキュー管理を容易にするキュー制御技術を提供する。 The present invention makes it possible to control the processing order of messages in a queue based on the interrelationship with other messages in the processing in the storage order that is a characteristic of the queue within the same queue. Provides queue control technology that facilitates queue management.
本発明は、キュー内部のメッセージの相互関係を管理する優先順位管理テーブルを用意し、キュー格納時に、相互関係のあるメッセージを関連付けるキー(以下、優先順位決定キーという)を付与することにより、同一キュー内での相互関係がないメッセージ同士の独立した処理を可能とし、優先順位決定キーを用いた順序制御によりキュー滞留を発生させないことを特徴とする。 The present invention provides a priority management table for managing the mutual relationship of messages in a queue, and assigns a key (hereinafter referred to as a priority determination key) for associating mutually related messages when storing the queue. It is characterized by enabling independent processing of messages having no mutual relationship in the queue and preventing queue retention by order control using a priority determination key.
より具体的な本発明の態様は、クライアントサーバから受信するサービスリクエストを、複数のサービス実現サーバへ中継するキューサーバである。
上記キューサーバは、キューとキュー情報管理部とを備え、キュー情報管理部は、受信した、いずれかのサービス実現サーバを宛先とするメッセージに、当該メッセージを相互関係のある他のメッセージと関連付けるキーを付して上記キューへ格納し、上記キューから取得した、上記メッセージと、当該メッセージに付された上記キーと同じキーが付された他の上記メッセージとに対して、上記キーと同じキーが付されていない他の上記メッセージとは独立して、いずれかの上記サービス実現サーバへの送信処理を行うことを特徴とする。
また、上記キュー情報管理部は、上記キューへの上記メッセージの格納時に、同一の上記キーが付された上記メッセージを互いに関連付け、上記キューから上記メッセージを取得する際に、上記関連付けを参照するように構成しても良い。
A more specific aspect of the present invention is a queue server that relays a service request received from a client server to a plurality of service realization servers.
The queue server includes a queue and a queue information management unit. The queue information management unit associates the received message destined for one of the service realization servers with another message having a correlation with the message. Is stored in the queue, and the same key as the key is acquired for the message acquired from the queue and the other message with the same key as the key attached to the message. A transmission process to any one of the service realization servers is performed independently of the other messages not attached.
The queue information management unit associates the messages with the same key with each other when storing the message in the queue, and refers to the association when acquiring the message from the queue. You may comprise.
本発明によれば、キューへのリクエスト格納時、キューからのリクエスト取得時において、キュー設計の簡略化や、相互関係がないリクエストの影響を受けた処理遅延を排除することが可能である。 According to the present invention, when a request is stored in a queue and when a request is acquired from a queue, it is possible to simplify the queue design and to eliminate a processing delay affected by an unrelated request.
以下、本実施例の実施の形態について図面により詳細に説明する。以下の実施例では、メッセージの一例として、サービスのリクエストを取り上げて説明する。その他のメッセージについても同様に実施可能である。 Hereinafter, embodiments of the present embodiment will be described in detail with reference to the drawings. In the following embodiment, a service request will be described as an example of a message. Other messages can be similarly implemented.
図1は本実施例の実施の形態の論理構成とテーブル図を示したものである。300はキューサーバであり、以下、優先順位保証サーバという。優先順位保証サーバ300は、各サービスのリクエストを送信するクライアントサーバ102と、優先順位保証サーバ300が中継するリクエストに基づいて、要求されたサービスを提供するサービス実現サーバ104〜106と接続される。
FIG. 1 shows a logical configuration and a table diagram of the embodiment of the present embodiment.
優先順位保証サーバ300は、クライアントサーバ102からのリクエストを受信する入力インタフェース302、入力インタフェースからリクエストを格納するキュー303、リクエストをキュー303に格納したりキュー303から出力したりする場合の管理を行うキュー情報管理部304、出力インタフェース305を備える。
The
キュー情報管理部304は、キュー格納管理テーブル309、キュー取得管理テーブル313、優先順位制御テーブル310をメモリ上に保持する。
The queue
キュー格納管理テーブル309は、リクエストをキューへ格納する際に、リクエストID307と優先順位決定キー308とを対応付けたリストを格納し、格納したリクエストを管理するために用いる。キュー取得管理テーブル313は、キュー303からのリクエスト取得時に、リクエストID314を格納し、キュー303から取得したリクエストを管理するために用いる。
The queue storage management table 309 stores a list in which request
優先順位制御テーブル310は、優先順位決定キー308を一意のキーとして、それぞれの優先順位決定キー308に関連付くリクエストID307a、307bをリストとして持つテーブルである。キュー情報管理部304は、リクエストをキューへ格納する時とキューから取得する時に優先順位制御テーブル310を参照することにより、リクエストの送信順番の制御を行う。
The priority order control table 310 is a table having a priority
キューからリクエストを取得する場合は、キュー格納管理テーブル309を検索し、取得できるリクエストを抽出する。取得しようとしたリクエストIDに優先順位決定キー308が設定されている場合は、当該リクエストIDの取得可否を判断するために、優先順位制御テーブル310を参照する。
When acquiring a request from the queue, the queue storage management table 309 is searched to extract a request that can be acquired. When the
優先順位決定キー308は、キューからリクエストを取り出す際に、取得するリクエストが、送信する際の順序制御の対象になるかどうかを判断する情報となる。キューに格納されたリクエストのうち、同一の優先順位決定キー308が付与されているリクエストは、格納順に送信する。たとえば、電話番号とか、イベント情報を優先順位決定キーに設定することで、他の電話番号、イベント情報と関係なくリクエストが送信可能となる。
The
優先順位保証サーバ300は、プロセッサと記憶装置と通信装置とを備える一般的な計算機を用いて実現することが可能である。より具体的には、プロセッサが記憶装置に格納されたプログラムを実行することにより、キュー情報管理部304を実現し、キュー303を記憶装置上に構成することができる。また、プロセッサがプログラムを実行し通信装置と協働させることにより、入力インタフェース302と出力インタフェース305を実現できる。
The
次に、本実施例での優先順位決定キー308がすべて同一の値を設定した場合の通常処理を図2のシーケンスに従って説明する。
Next, normal processing when all the
顧客端末101からクライアントサーバ102にリクエストA407を送信する。
A request A 407 is transmitted from the
クライアントサーバ102は優先順位保証サーバ300へ転送し、409の処理でキュー303にリクエストAを格納する。
The
優先順位保証サーバ300は、クライアントサーバ102へ正常応答410を応答し、クライアントサーバ102は、顧客端末101に正常応答411を応答する。
The
次に、リクエストBについてもリクエストAと同じシーケンスで処理する。 Next, request B is processed in the same sequence as request A.
顧客端末101からクライアントサーバ102へリクエストB412を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストB413を転送する。
The
優先順位保証サーバ300は、414の処理でキュー303にリクエストBを格納する。
The
優先順位保証サーバ300は、414の処理後に、クライアントサーバ102に正常応答415を応答し、クライアントサーバ102は、顧客端末101へ正常応答416を応答する。
After the processing of 414, the
続いて、リクエストCについても、リクエストA、リクエストBと同じシーケンスで処理を実行する。 Subsequently, the request C is processed in the same sequence as the request A and the request B.
顧客端末101からクライアントサーバ102へリクエストC417を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストC418を転送する。
The request C417 is transmitted from the
優先順位保証サーバ300は、419の処理でキュー303にリクエストCを格納する。
The
優先順位保証サーバ300は、419の処理後に、クライアントサーバ102に正常応答420を応答し、クライアントサーバ102は、顧客端末101へ正常応答421を応答する。
After the processing of 419, the
優先順位保証サーバ300では、リクエストA、リクエストB、リクエストCの順番でキュー303に格納され、優先順位保証キーが同一であるので、422の処理で、キュー303からリクエストを取得し、サービス実現サーバA104へリクエストAを送信し、サービス実現サーバA104は正常応答424を応答する。
In the
422の処理後、425の処理で、キュー303からリクエストAを削除する。
After the
続けて、426の処理で、キュー303からリクエストBを取得し、サービス実現サーバB105にリクエストB427を送信し、サービス実現サーバB105は正常応答428を応答する。
Subsequently, in the process of 426, the request B is acquired from the
426の処理後、429の処理で、キュー303からリクエストBを削除する。
After the process of 426, the request B is deleted from the
最後に、430の処理でキュー303からリクエストCを取得し、サービス実現サーバC106へリクエストC431を送信し、サービス実現サーバC106は正常応答432を応答する。
Finally, request C is acquired from the
430の処理後、433の処理で、キュー303からリクエストCを削除する。
After the process of 430, the request C is deleted from the
図2の詳細に説明したとおり、リクエストA、リクエストB、リクエストCと連続で優先順位保証サーバ300が受信した場合、且つ、優先順位決定キー308が同一の場合は、リクエストを格納順に処理する。
As described in detail in FIG. 2, when the
図3は、本実施例での優先順位決定キー308がすべて同一の値を設定した場合のエラー処理時の図であり、シーケンスに従って説明する。
FIG. 3 is a diagram at the time of error processing when all of the
顧客端末101からクライアントサーバ102にリクエストA507を送信する。
A
クライアントサーバ102は優先順位保証サーバ300へ転送し、509の処理でキュー303にリクエストAを格納する。
The
優先順位保証サーバ300は、クライアントサーバ102へ正常応答510を応答し、クライアントサーバ102は、顧客端末101に正常応答511を応答する。
The
次に、リクエストBについてもリクエストAと同じシーケンスで処理する。 Next, request B is processed in the same sequence as request A.
顧客端末101からクライアントサーバ102へリクエストB512を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストB513を転送する。
The
優先順位保証サーバ300は、514の処理でキュー303にリクエストBを格納する。
The
優先順位保証サーバ300は、514の処理後に、クライアントサーバ102に正常応答515を応答し、クライアントサーバ102は、顧客端末101へ正常応答516を応答する。
After the processing of 514, the
続いて、リクエストCについても、リクエストA、リクエストBと同じシーケンスで処理を実行する。 Subsequently, the request C is processed in the same sequence as the request A and the request B.
顧客端末101からクライアントサーバ102へリクエストB517を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストC518を転送する。
The request B517 is transmitted from the
優先順位保証サーバ300は、519の処理でキュー303にリクエストCを格納する。
The
優先順位保証サーバ300は、519の処理後に、クライアントサーバ102に正常応答520を応答し、クライアントサーバ102は、顧客端末101へ正常応答521を応答する。
After the processing of 519, the
次に優先順位保証サーバ300は、522の処理でキュー303からリクエストAを取得し、リクエストAをサービス実現サーバA104へ送信する。
Next, the
サービス実現サーバA104はエラー応答524を応答する。
The service realization server A104 returns an
優先順位保証サーバ300は、エラー応答を受けたため、525の処理でリクエストAのリトライ処理を実行する。
Since the
キュー303に格納されているリクエストB、リクエストCについては、525の処理でリクエストAの処理を実行しているため、図2に示したリクエストB、リクエストCの処理は実行されない。
Regarding the request B and the request C stored in the
次に、本実施例での優先順位決定キー308がリクエストBのみ異なる値を設定した場合の通常処理を図4のシーケンスに従って説明する。
Next, normal processing when the
顧客端末101からクライアントサーバ102にリクエストA607を送信する。
A
クライアントサーバ102は優先順位保証サーバ300へ転送し、609の処理でキュー303にリクエストAを格納する。
The
優先順位保証サーバ300は、クライアントサーバ102へ正常応答610を応答し、クライアントサーバ102は、顧客端末101に正常応答611を応答する。
The
次に、リクエストBについてもリクエストAと同じシーケンスで処理する。 Next, request B is processed in the same sequence as request A.
顧客端末101からクライアントサーバ102へリクエストB612を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストB613を転送する。
The
優先順位保証サーバ300は、614の処理でキュー303にリクエストBを格納する。
The
優先順位保証サーバ300は、614の処理後に、クライアントサーバ102に正常応答615を応答し、クライアントサーバ102は、顧客端末101へ正常応答616を応答する。
The
続いて、リクエストCについても、リクエストA、リクエストBと同じシーケンスで処理を実行する。 Subsequently, the request C is processed in the same sequence as the request A and the request B.
顧客端末101からクライアントサーバ102へリクエストC617を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストC618を転送する。
The request C617 is transmitted from the
優先順位保証サーバ300は、619の処理でキュー303にリクエストCを格納する。
The
優先順位保証サーバ300は、619の処理後に、クライアントサーバ102に正常応答620を応答し、クライアントサーバ102は、顧客端末101へ正常応答621を応答する。
The
優先順位保証サーバ300では、リクエストA、リクエストB、リクエストCの順番でキュー303に格納される。
In the
622の処理で、キュー303からリクエストを取得し、サービス実現サーバA104へリクエストAを送信し、サービス実現サーバA104は正常応答624を応答する。
In the process of 622, a request is acquired from the
622の処理後、625の処理で、キュー303からリクエストAを削除する。
After the
図3で示した条件とは異なり、優先順位保証キーがリクエストBのみ異なるため、626の処理で、キュー303からリクエストCを取得し、サービス実現サーバC106にリクエストC627を送信し、サービス実現サーバC106は正常応答628を応答する。
Unlike the conditions shown in FIG. 3, the priority guarantee key is different only in request B. Therefore, in
626の処理後、629の処理で、キュー303からリクエストCを削除する。
After the process of 626, the request C is deleted from the
最後に、630の処理でキュー303からリクエストBを取得し、サービス実現サーバB105へリクエストB631を送信し、サービス実現サーバB105は正常応答632を応答する。
Finally, request B is acquired from the
630の処理後、633の処理で、キュー303からリクエストBを削除する。
After the
図4の詳細に説明したとおり、リクエストA、リクエストB、リクエストCと連続で優先順位保証サーバ300が受信した場合、且つ、優先順位決定キー308がリクエストBのみ異なる場合は、リクエストA、リクエストCを格納順に処理するが、リクエストBは、リクエストA、リクエストCの処理とは関係なく、処理が可能となる。
As described in detail in FIG. 4, when the
図5は、本実施例での優先順位決定キー308がリクエストBのみが異なる値を設定した場合のエラー処理時の図であり、シーケンスに従って説明する。 FIG. 5 is a diagram at the time of error processing when the priority order determination key 308 in this embodiment sets different values only for the request B, and will be described according to the sequence.
顧客端末101からクライアントサーバ102にリクエストA707を送信する。
A
クライアントサーバ102は優先順位保証サーバ300へ転送し、709の処理でキュー303にリクエストAを格納する。
The
優先順位保証サーバ300は、クライアントサーバ102へ正常応答710を応答し、クライアントサーバ102は、顧客端末101に正常応答711を応答する。
The
次に、リクエストBについてもリクエストAと同じシーケンスで処理する。 Next, request B is processed in the same sequence as request A.
顧客端末101からクライアントサーバ102へリクエストB712を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストB713を転送する。
The
優先順位保証サーバ300は、714の処理でキュー303にリクエストBを格納する。
The
優先順位保証サーバ300は、714の処理後に、クライアントサーバ102に正常応答715を応答し、クライアントサーバ102は、顧客端末101へ正常応答716を応答する。
After the processing of 714, the
続いて、リクエストCについても、リクエストA、リクエストBと同じシーケンスで処理を実行する。 Subsequently, the request C is processed in the same sequence as the request A and the request B.
顧客端末101からクライアントサーバ102へリクエストC717を送信し、クライアントサーバ102は、優先順位保証サーバ300にリクエストC718を転送する。
The
優先順位保証サーバ300は、719の処理でキュー303にリクエストCを格納する。
The
優先順位保証サーバ300は、719の処理後に、クライアントサーバ102に正常応答720を応答し、クライアントサーバ102は、顧客端末101へ正常応答721を応答する。
After the processing of 719, the
次に優先順位保証サーバ300は、722の処理でキュー303からリクエストAを取得し、リクエストAをサービス実現サーバA104へ送信する。
Next, the
サービス実現サーバA104はエラー応答724を応答する。
The service realization server A104 returns an
優先順位保証サーバ300は、エラー応答を受けたため、725の処理でリクエストAのリトライ処理を実行する。
Since the
キュー303に格納されているリクエストCについては、725の処理でリクエストAの処理を実行しているため、図4に示したリクエストCの処理は実行されない。
For request C stored in the
リクエストBについては、優先順位決定キー308が異なるため、726の処理で、サービス実現サーバB105にリクエストB727を送信し、サービス実現サーバB105は正常応答728を応答する。
Since the priority
726の処理後、729の処理で、キュー303からリクエストBを削除する。
After the process at 726, the request B is deleted from the
次に、優先順位保証サーバ300のキュー情報管理部304による、キュー303へリクエストを格納する処理の詳細を、図6のフローチャートに従って説明する。
Next, details of the process of storing a request in the
リクエスト格納時処理では、リクエストを優先順位制御するかを判定するために、801で優先順位決定キー308の有無を解析する。
In the request storage process, the presence / absence of the
802にて、優先順位決定キー308の判定をし、優先順位決定キー308がある場合は、803にて、図1で説明したキュー格納管理テーブル309にリクエストID307と優先順位決定キー308を関連付けて格納する。
In
其の後、804の処理で、優先順位制御テーブル310の情報を取得し、805で、優先順位決定キー308が優先順位制御テーブル310に登録済みかの判定をする。
Thereafter, in
判定結果が、YESの場合は、すでに登録されているため、先に格納しているリクエストID307より後に処理することとなるため、806の処理ですでに登録してあるリクエストID307の後ろに追加でリクエストID307を格納する。
If the determination result is YES, since it is already registered, it will be processed after the previously stored
その後、807の処理でキュー303にリクエストを格納する。
Thereafter, the request is stored in the
805の判定結果で、NOの場合は、優先順位制御テーブル310に新規に優先順位決定キー308とリクエストID307を格納する。
If the determination result of 805 is NO, the
802の判定で、優先順位決定キー308がない場合は、キュー格納管理テーブル309にリクエストID307を格納し、807の処理でキュー303にリクエストを格納して処理を終了する。
If the
次に、優先順位保証サーバ300のキュー情報管理部304による、キュー303からリクエストを取得する処理の詳細を、図7のフローチャートに従って説明する。
Next, details of the process of acquiring a request from the
リクエスト取得処理では、取得可能なリクエストを判定するために、901でキュー格納管理テーブル309の情報を取得する。 In the request acquisition process, information of the queue storage management table 309 is acquired in 901 in order to determine the requests that can be acquired.
901で取得したキュー格納管理テーブル309から、リクエストID307、優先順位決定キー308を取得し、902で、優先順位決定キー308の有無を判定する。
A
判定結果がなしの場合は、優先順位決定キーがないリクエストのため、各サーバへリクエストを優先的に送信する必要はない。そのため、910でリクエストをキュー303から取得し、911で取得したリクエストを各サーバへ送信し、912でリクエストID307をキュー取得管理テーブル313に格納し、913でキュー格納管理テーブル309からリクエストID307、優先順位決定キーを削除し、処理を終了する。
If the determination result is none, the request does not need to be transmitted to each server with priority because there is no priority determination key. Therefore, the request is acquired from the
902の判定結果でありの場合、優先順位決定キーがあり、各サーバへリクエストの送信の優先順位を保つ必要がある。そのため、903で優先順位制御テーブル310から情報を取得する。 In the case of the determination result of 902, there is a priority determination key, and it is necessary to maintain the priority of request transmission to each server. Therefore, information is acquired from the priority order control table 310 at 903.
優先順位制御テーブル310から、904で取得するリクエストID307が先頭であるかを判定する。
It is determined from the priority order control table 310 whether the
判定結果がYESの場合は、取得時にキューに格納されているリクエストの中で、取得しようとしているリクエストが先頭であるため、905でリクエストをキュー303から取得し、906でリクエストを各サーバへ送信し、907でリクエストID307をキュー取得管理テーブル313に格納し、909でキュー格納管理テーブル309からリクエストID307、優先順位決定キー308を削除し、処理を終了する。
When the determination result is YES, since the request to be acquired is the first among the requests stored in the queue at the time of acquisition, the request is acquired from the
904の判定結果がNOの場合は、取得しようしたリクエストが先頭に格納されていないこととなり、他に優先的に送信するリクエストがある判断となるため、その後はなにも実行せずに処理を終了する。 If the determination result of 904 is NO, it means that the request to be acquired is not stored at the head, and there is a request to be transmitted with priority, so the processing is performed without executing anything after that. finish.
次に、優先順位保証サーバ300のキュー情報管理部304による、キュー303からリクエストを削除する処理の詳細を、図8のフローチャートに従って説明する。リクエスト削除処理では、1001でキュー取得管理テーブル313情報を取得し、1002でキュー取得管理テーブル313からリクエストID307を削除し、1003で、優先順位制御テーブル310から情報を取得し、1004で、優先順位制御テーブル310からリクエストID307を削除し、1005でキュー303からリクエストを削除し、処理を終了する。
Next, details of the process of deleting a request from the
300:優先順位保証サーバ
303:キュー
304:キュー情報管理部
309:キュー格納管理テーブル
310:優先順位制御テーブル
313:キュー取得管理テーブル
300: Priority guarantee server 303: Queue 304: Queue information management unit 309: Queue storage management table 310: Priority order control table 313: Queue acquisition management table
Claims (2)
キューとキュー情報管理部とを備え、
前記キュー情報管理部は、
受信した、いずれかの前記サービス実現サーバを宛先とするメッセージに、当該メッセージを相互関係のある他のメッセージと関連付けるキーを付して前記キューへ格納し、
前記キューから取得した、前記メッセージと、当該メッセージに付された前記キーと同じキーが付された他の前記メッセージとに対して、前記キーと同じキーが付されていない他の前記メッセージとは独立して、いずれかの前記サービス実現サーバへの送信処理を行う
ことを特徴とするキューサーバ。 A queue server that relays service requests received from a client server to a plurality of service realization servers,
A queue and a queue information management unit,
The queue information management unit
The received message addressed to any one of the service realization servers is stored in the queue with a key for associating the message with other interrelated messages,
The other messages that are not given the same key as the key with respect to the message obtained from the queue and the other message that is given the same key as the key attached to the message. A queue server characterized by independently performing a transmission process to any one of the service realization servers.
前記キュー情報管理部は、
前記キューへの前記メッセージの格納時に、同一の前記キーが付された前記メッセージを互いに関連付け、
前記キューから前記メッセージを取得する際に、前記関連付けを参照する
ことを特徴とするキューサーバ。 The queue server according to claim 1,
The queue information management unit
When storing the message in the queue, the messages with the same key are associated with each other;
A queue server that refers to the association when acquiring the message from the queue.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014138236A JP6518411B2 (en) | 2014-07-04 | 2014-07-04 | Queue server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014138236A JP6518411B2 (en) | 2014-07-04 | 2014-07-04 | Queue server |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016018222A true JP2016018222A (en) | 2016-02-01 |
JP6518411B2 JP6518411B2 (en) | 2019-05-22 |
Family
ID=55233443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014138236A Active JP6518411B2 (en) | 2014-07-04 | 2014-07-04 | Queue server |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6518411B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10684901B2 (en) | 2016-08-23 | 2020-06-16 | Hitachi, Ltd. | Data store device and data management method |
JP2021040259A (en) * | 2019-09-04 | 2021-03-11 | 株式会社日立製作所 | Computer, data control method, and data store system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61175822A (en) * | 1985-01-31 | 1986-08-07 | Nec Corp | Cue with priority |
JPH06119282A (en) * | 1992-10-05 | 1994-04-28 | Mitsubishi Electric Corp | Device controller and its priority processing system |
JP2002054263A (en) * | 2000-08-08 | 2002-02-20 | System Kenso:Kk | Noise insulation structure in building |
JP2002215405A (en) * | 2001-01-16 | 2002-08-02 | Matsushita Electric Ind Co Ltd | Method and device for processing message |
JP2002269063A (en) * | 2001-03-07 | 2002-09-20 | Toshiba Corp | Massaging program, messaging method of distributed system, and messaging system |
JP2006202310A (en) * | 2000-12-28 | 2006-08-03 | Future System Consulting Corp | Framework system |
JP2010039632A (en) * | 2008-08-01 | 2010-02-18 | Canon Inc | Bus arbitration system |
-
2014
- 2014-07-04 JP JP2014138236A patent/JP6518411B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61175822A (en) * | 1985-01-31 | 1986-08-07 | Nec Corp | Cue with priority |
JPH06119282A (en) * | 1992-10-05 | 1994-04-28 | Mitsubishi Electric Corp | Device controller and its priority processing system |
JP2002054263A (en) * | 2000-08-08 | 2002-02-20 | System Kenso:Kk | Noise insulation structure in building |
JP2006202310A (en) * | 2000-12-28 | 2006-08-03 | Future System Consulting Corp | Framework system |
JP2002215405A (en) * | 2001-01-16 | 2002-08-02 | Matsushita Electric Ind Co Ltd | Method and device for processing message |
JP2002269063A (en) * | 2001-03-07 | 2002-09-20 | Toshiba Corp | Massaging program, messaging method of distributed system, and messaging system |
JP2010039632A (en) * | 2008-08-01 | 2010-02-18 | Canon Inc | Bus arbitration system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10684901B2 (en) | 2016-08-23 | 2020-06-16 | Hitachi, Ltd. | Data store device and data management method |
JP2021040259A (en) * | 2019-09-04 | 2021-03-11 | 株式会社日立製作所 | Computer, data control method, and data store system |
JP7351679B2 (en) | 2019-09-04 | 2023-09-27 | 株式会社日立製作所 | Computer, data control method and data store system |
Also Published As
Publication number | Publication date |
---|---|
JP6518411B2 (en) | 2019-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8862672B2 (en) | Content sharing and instant messaging | |
US8818940B2 (en) | Systems and methods for performing record actions in a multi-tenant database and application system | |
CN109040227B (en) | Service request response method and device based on block chain and computer equipment | |
JP2019533235A5 (en) | ||
US9852220B1 (en) | Distributed workflow management system | |
US8689243B2 (en) | Web service API for unified contact store | |
US10498681B1 (en) | Storage management for ephemeral messages | |
US9900837B2 (en) | Multi-channel communications for sending push notifications to mobile devices | |
JP6764796B2 (en) | Robot control system and robot control method | |
WO2017045450A1 (en) | Resource operation processing method and device | |
US11716419B2 (en) | Object oriented call management | |
WO2016172398A1 (en) | Rich attachment regeneration | |
US8694462B2 (en) | Scale-out system to acquire event data | |
WO2016149314A1 (en) | Facilitating controlled electronic communication | |
US20150106899A1 (en) | System and method for cross-cloud identity matching | |
US20110307557A1 (en) | Selectively controlling information flow in a collaborative environment | |
US10713279B2 (en) | Enhanced replication | |
CN109391658B (en) | Account data synchronization method and equipment, storage medium and terminal thereof | |
JP2016018222A (en) | Queue server | |
US9401953B2 (en) | Intelligent high-volume cloud application programming interface request caching | |
JP2010086137A (en) | Message queuing method and program | |
US20140289339A1 (en) | Global email identity preferences | |
CN104199737B (en) | A kind of method and apparatus for synchronizing handled image | |
CN115314457B (en) | Offline message processing method and device | |
US9185059B1 (en) | Management of journaling destinations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170110 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170112 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190311 |
|
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: 20190326 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6518411 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |