JP4812680B2 - Access control device - Google Patents

Access control device Download PDF

Info

Publication number
JP4812680B2
JP4812680B2 JP2007104035A JP2007104035A JP4812680B2 JP 4812680 B2 JP4812680 B2 JP 4812680B2 JP 2007104035 A JP2007104035 A JP 2007104035A JP 2007104035 A JP2007104035 A JP 2007104035A JP 4812680 B2 JP4812680 B2 JP 4812680B2
Authority
JP
Japan
Prior art keywords
service
access
server
priority
name
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007104035A
Other languages
Japanese (ja)
Other versions
JP2008262351A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2007104035A priority Critical patent/JP4812680B2/en
Publication of JP2008262351A publication Critical patent/JP2008262351A/en
Application granted granted Critical
Publication of JP4812680B2 publication Critical patent/JP4812680B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、Webサービスを提供するサーバへのアクセス制御に関するものであり、特に、サーバの負荷を考慮してサーバへのアクセスを制御するアクセス制御装置に関するものである。   The present invention relates to access control to a server that provides a Web service, and more particularly to an access control apparatus that controls access to a server in consideration of server load.

World Wide Web(以下、単にWebという)システムや、Web技術を応用して、各種ソフトウェアの機能をSOAP(Simple Object Access Protocol)などによってネットワークを介して利用できるようにしたWebサービス技術の登場により、情報システムの連携や情報サービスの活用がより広く行われるようになってきている。しかしながら、このような技術を用いたネットワークシステムにおいては、サービスを利用するユーザ数(アクセスユーザ数)が多くなると、サーバへのアクセスが集中してしまい、応答時間が低下してしまうという問題があった。   With the advent of World Wide Web (hereinafter simply referred to as Web) systems and Web service technologies that make it possible to use various software functions via the network using SOAP (Simple Object Access Protocol), etc. Linkage of information systems and utilization of information services are becoming more widespread. However, in a network system using such a technique, when the number of users using the service (the number of access users) increases, access to the server is concentrated and the response time decreases. It was.

このような問題を改善するために、従来から種々の技術が考えられている。たとえば、サービスを提供するサーバを複数準備しておき、負荷分散装置を利用して応答時間を短縮する第1の従来技術がある。   In order to improve such a problem, various techniques have been conventionally considered. For example, there is a first conventional technique in which a plurality of servers providing services are prepared and the response time is shortened by using a load balancer.

また、アクセス時に優先順位を付与することで特定のユーザの処理を優先的に行わせることで応答時間を短縮する第2の従来技術がある(たとえば、特許文献1および2参照)。具体的には、特許文献1に記載の従来技術では、クライアント対応に識別情報と優先度情報を含む属性情報を格納したクライアント情報データベースを設け、要求コマンドがトランザクション終了要求コマンドの時に、クライアント情報データベースを参照して、クライアントの優先度の高い順に要求コマンド群を実行するようにしている。   In addition, there is a second conventional technique that shortens response time by giving priority to processing of a specific user by giving priority when accessing (see, for example, Patent Documents 1 and 2). Specifically, in the prior art described in Patent Document 1, a client information database storing attribute information including identification information and priority information is provided for each client, and when the request command is a transaction end request command, the client information database The request command group is executed in descending order of client priority.

また、特許文献2に記載の従来技術では、コールバック要求などの特定の操作を行ったユーザのセッションを記憶する手段を設け、当該セッションと一致するWebデータについては、その送受信を他のセッションよりも優先させるようにしている。   Further, in the prior art described in Patent Document 2, a means for storing a session of a user who has performed a specific operation such as a callback request is provided, and Web data that matches the session is transmitted and received from other sessions. Is also prioritized.

特開2001−312424号公報JP 2001-31424 A 特開2003−087421号公報JP 2003-087421 A

しかしながら、上記第1の従来技術では、ユーザ数に応じて多数のサーバを準備する必要があり、ネットワークシステムのコストが高くなってしまうという問題があった。   However, in the first conventional technique, it is necessary to prepare a large number of servers according to the number of users, and there is a problem that the cost of the network system increases.

また、上記第2の従来技術では、サービスを提供するサーバの負荷状況を考慮していないため、多くのユーザからのアクセス要求を受けている場合にはユーザの優先順位を高くしてもサーバの負荷は軽減されることなく高い状態のままとなってしまう。そのため、優先度の高いユーザについてはその応答時間を短縮することはできるが、優先順位の低いユーザについてはその対応時間を短縮することはできないという問題があった。すなわち、上記第2の従来技術では、サーバへのアクセスの応答時間の短縮効果は限定的なものとなってしまうという問題があった。   Further, in the second prior art, since the load situation of the server providing the service is not taken into consideration, even when the priority of the user is increased when the access request is received from many users, The load remains high without being reduced. Therefore, there is a problem that the response time can be shortened for a user with high priority, but the response time cannot be shortened for a user with low priority. In other words, the second prior art has a problem that the effect of shortening the response time for access to the server is limited.

本発明は、上記に鑑みてなされたものであって、サーバの台数を必要以上に増やすことなく利用者への優先度およびサーバへの負荷分散を考慮してサーバへのアクセスの応答時間を短縮することができるアクセス制御装置を得ることを目的とする。   The present invention has been made in view of the above, and shortens the response time of access to the server in consideration of the priority to the user and the load distribution to the server without increasing the number of servers more than necessary. It is an object of the present invention to obtain an access control apparatus that can do the above.

上述した課題を解決し、目的を達成するために、本発明は、少なくとも1つのサービスに関するデータを保持する複数のサーバに接続されるとともに、該サーバにアクセスしてサービスを要求するクライアントとネットワークを介して接続され、前記クライアントから要求されたサービスを提供する複数のサーバの中から1つのサーバを選択し、選択したサーバから要求されたサービスに関するデータを取得して前記クライアントに送信するアクセス制御装置であって、前記サーバ毎に対応付けられ当該サーバへのアクセス待ちを登録するキューを有するアクセスキューと、前記サーバが保持するサービス名およびサービスを利用する利用者を識別するための利用者IDに関連付けてサーバへの負荷分散の優先度を示す負荷分散レベルが登録される負荷分散定義データベース、および前記サービス名および前記負荷分散レベルに関連付けてアクセスすべきサーバ名が登録されるサービス配備情報データベースを記憶する記憶手段と、クライアントから受信したサービス呼び出し要求に含まれるサービス名および利用者IDと、前記記憶手段に記憶された負荷分散定義データベースおよびサービス配備情報データベースとに基づいて、前記クライアントから要求されたサービス名および利用者IDの負荷分散レベルに応じてアクセス可能なサーバの候補を選択する負荷分散制御手段と、前記負荷分散制御手段によって選択されたサーバの候補の負荷状況に基づいて、最も負荷状況の低いサーバを選択し、選択したサーバに対応するキューに前記サービス呼び出し要求によるアクセス待ちを登録するサーバ負荷監視手段と、を備えることを特徴とする。   In order to solve the above-described problems and achieve the object, the present invention provides a client and a network that are connected to a plurality of servers that hold data related to at least one service, and that access the server and request a service. An access control apparatus that selects one server from a plurality of servers that are connected via the network and provides a service requested by the client, acquires data related to the requested service from the selected server, and transmits the data to the client An access queue having a queue that is associated with each server and registers waiting for access to the server, a service name held by the server, and a user ID for identifying a user who uses the service. The load distribution level indicating the priority of load distribution to the server is registered. Load distribution definition database, storage means for storing a service deployment information database in which the service name and the server name to be accessed in association with the load distribution level are stored, and the service name included in the service call request received from the client And a server accessible according to the load distribution level of the service name and user ID requested from the client based on the user ID and the load distribution definition database and service deployment information database stored in the storage means Load balancing control means for selecting a candidate for the server, and based on the load status of the server candidate selected by the load balancing control means, the server having the lowest load status is selected, and the service is added to the queue corresponding to the selected server. Wait for access by call request Characterized in that and a server load monitoring means for registering.

この発明によれば、負荷分散制御手段が、クライアントから受信したサービス呼び出し要求に含まれるサービス名および利用者IDと、サーバが保持するサービス名およびサービスを利用する利用者を識別するための利用者IDに関連付けてサーバへの負荷分散の優先度を示す負荷分散レベルが登録される負荷分散定義データベースと、サービス名および前記負荷分散レベルに関連付けてアクセスすべきサーバ名が登録されるサービス配備情報データベースとに基づいてクライアントから要求されたサービス名および利用者IDの負荷分散レベルに応じてアクセス可能なサーバの候補を選択し、サーバ負荷監視手段が、負荷分散制御手段によって選択されたサーバの候補の負荷状況に基づいて、最も負荷状況の低いサーバを選択し、選択したサーバに対応するキューに前記サービス呼び出し要求によるアクセス待ちを登録するようにしているため、利用者および利用するサービスに応じてサーバに対する負荷分散を行うことが可能となり、サーバの台数を必要以上に増やすことなく利用者への優先度およびサーバへの負荷分散を考慮してサーバへのアクセスの応答時間を短縮することができるアクセス制御装置を得ることができるという効果を奏する。   According to the present invention, the load balancing control means allows the user to identify the service name and user ID included in the service call request received from the client, and the service name and service held by the server. A load distribution definition database in which a load distribution level indicating the priority of load distribution to a server is registered in association with an ID, and a service deployment information database in which a service name and a server name to be accessed in association with the load distribution level are registered Based on the service name requested by the client and the load distribution level of the user ID, the server candidate that can be accessed is selected, and the server load monitoring unit selects the server candidate selected by the load distribution control unit. Based on the load status, select the server with the lowest load status and select Since the access waiting due to the service call request is registered in the queue corresponding to the server, it becomes possible to distribute the load on the server according to the user and the service to be used, and the number of servers is more than necessary. There is an effect that it is possible to obtain an access control device that can shorten the response time of access to the server in consideration of the priority to the user and the load distribution to the server without increasing.

以下に、本発明にかかるアクセス制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。   Embodiments of an access control apparatus according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

図1〜図9を用いてこの発明におけるアクセス制御装置の実施の形態を説明する。図1は、この発明におけるアクセス制御装置が適用されるネットワークシステムの構成の一例を示す図である。図1において、ネットワークシステムは、1〜複数(この場合は3台)のクライアント3(3−1〜3−3を示す)と、複数(この場合は3台)のサーバ7(7−1〜7−3を示す)と接続されたアクセス制御装置1とが、たとえば、インターネットなどのネットワーク5によって接続されている。   An embodiment of an access control apparatus according to the present invention will be described with reference to FIGS. FIG. 1 is a diagram showing an example of a configuration of a network system to which an access control apparatus according to the present invention is applied. In FIG. 1, the network system includes one to a plurality of (in this case, three) clients 3 (shown as 3-1 to 3-3) and a plurality (in this case, three) of servers 7 (7-1 to 7-1). 7-3) and the connected access control device 1 are connected by a network 5 such as the Internet, for example.

サーバ7は、提供するサービスに関する情報を保持しており、アクセス制御装置1からの要求によって所定のサービス情報を提供する。図1においては、サーバ7−1,7−2はサービス1,2を保持しており、サーバ7−3はサービス1を保持している。   The server 7 holds information related to the service to be provided, and provides predetermined service information in response to a request from the access control device 1. In FIG. 1, servers 7-1 and 7-2 hold services 1 and 2, and server 7-3 holds service 1.

アクセス制御装置1は、サービスインタフェース定義DB11、サービスインタフェース部12、負荷分散定義DB13、サービス配備情報DB14、優先度定義DB15、負荷分散制御部161と優先度制御部162とサーバ負荷監視部163とを有するアクセス制御部16、アクセスキュー17、実サービス呼び出し部18、アクセス履歴管理部19、およびアクセス履歴DB20を備えている。なお、サービスインタフェース定義DB11、負荷分散定義DB13、サービス配備情報DB14、優先度定義DB15、およびアクセス履歴DB20は、図示しない記憶手段に記憶される。   The access control device 1 includes a service interface definition DB 11, a service interface unit 12, a load distribution definition DB 13, a service deployment information DB 14, a priority definition DB 15, a load distribution control unit 161, a priority control unit 162, and a server load monitoring unit 163. An access control unit 16, an access queue 17, an actual service calling unit 18, an access history management unit 19, and an access history DB 20. The service interface definition DB 11, the load distribution definition DB 13, the service deployment information DB 14, the priority definition DB 15, and the access history DB 20 are stored in a storage unit (not shown).

サービスインタフェース定義DB11には、クライアント3に提供するWebサービスのインタフェースに関する情報が登録される。図2は、サービスインタフェース定義DB11に登録される登録項目を示す図である。図2においては、サービスインタフェース定義DB11の登録項目として、サービス名と、このサービス名に関連付けられたサービスURL(Uniform Resource Locator)およびインタフェース定義ファイル名とを挙げている。   Information related to the interface of the Web service provided to the client 3 is registered in the service interface definition DB 11. FIG. 2 is a diagram showing registration items registered in the service interface definition DB 11. In FIG. 2, as a registration item of the service interface definition DB 11, a service name, a service URL (Uniform Resource Locator) associated with the service name, and an interface definition file name are listed.

サービス名には、提供するサービスの名称が登録される。サービスURLにはサービス名に登録されたサービスのデータが格納されるURLが登録される。インタフェース定義ファイル名には、サービス名が示すサービスのインタフェース情報の定義が詳細に記載されたインタフェース定義ファイルのファイル名が登録される。インタフェース定義ファイルは、たとえば、WSDL(Web Services Description Language)などで書式や検索情報に使用される項目などが記載され、アクセス制御装置1内の図示しない記憶手段やアクセス制御装置1が接続可能な記憶装置内に格納されている。   In the service name, the name of the service to be provided is registered. In the service URL, a URL storing the data of the service registered in the service name is registered. In the interface definition file name, the file name of the interface definition file in which the definition of the interface information of the service indicated by the service name is described in detail is registered. The interface definition file describes, for example, items used for format and search information in WSDL (Web Services Description Language) and the like, and storage means (not shown) in the access control device 1 or storage to which the access control device 1 can be connected. Stored in the device.

図1に戻って、サービスインタフェース部12は、ネットワーク5を介してクライアント3と通信を行うインタフェース機能を有し、クライアント3との通信を行う。また、クライアント3からの要求、およびサービスインタフェース定義DB11に基づいて提供する(クライアント3から要求された)サービスのサービスインタフェース情報を生成し、生成したサービスインタフェース情報をクライアント3に送信する。   Returning to FIG. 1, the service interface unit 12 has an interface function for communicating with the client 3 via the network 5, and performs communication with the client 3. Further, the service interface information of the service provided from the request from the client 3 and the service interface definition DB 11 (requested from the client 3) is generated, and the generated service interface information is transmitted to the client 3.

負荷分散定義DB13には、利用者に対するサーバ7の負荷分散レベルの情報が登録される。図3は、負荷分散定義DB13に登録される登録項目を示す図である。図3においては、負荷分散定義DB13に登録される登録項目として、サービス名、利用者ID、時間帯、および負荷分散レベルを挙げている。   Information on the load distribution level of the server 7 for the user is registered in the load distribution definition DB 13. FIG. 3 is a diagram showing registration items registered in the load distribution definition DB 13. In FIG. 3, the service name, user ID, time zone, and load distribution level are listed as registration items registered in the load distribution definition DB 13.

サービス名には、提供するサービスの名称が登録される。利用者IDには、サービス名に登録されたサービスを提供する利用者を識別するために利用者に予め付与された識別子(利用者ID)が登録される。時間帯には、サービスを提供する負荷分散レベルを有効とする時間帯が登録される。負荷分散レベルには、サービス名に登録されたサービスを利用者IDに登録された利用者が利用する際の負荷分散レベルが登録される。   In the service name, the name of the service to be provided is registered. In the user ID, an identifier (user ID) given in advance to the user in order to identify the user who provides the service registered in the service name is registered. In the time zone, a time zone in which the load distribution level for providing the service is valid is registered. In the load distribution level, the load distribution level when the user registered in the user ID uses the service registered in the service name is registered.

図1に戻って、サービス配備情報DB14には、実際にサービスを保持しているサーバ7に関する情報が登録される。図4は、サービス配備情報DB14に登録される登録項目を示す図である。図4においては、サービス配備情報DB14の登録項目として、サービス名、負荷分散レベル、および実サーバ名を挙げている。サービス名には、提供するサービスの名称が登録される。負荷分散レベルには、サービス名に登録されたサービスにおける負荷分散レベルが登録される。実サーバ名には、サービス名に登録されたサービスを負荷分散レベルに登録された負荷分散レベルで選択可能なサーバ7の名前(識別子)が登録される。   Returning to FIG. 1, information regarding the server 7 that actually holds the service is registered in the service deployment information DB 14. FIG. 4 is a diagram showing registration items registered in the service deployment information DB 14. In FIG. 4, service names, load distribution levels, and real server names are listed as registration items in the service deployment information DB 14. In the service name, the name of the service to be provided is registered. In the load distribution level, the load distribution level in the service registered in the service name is registered. In the real server name, the name (identifier) of the server 7 that can select the service registered in the service name at the load distribution level registered in the load distribution level is registered.

図1に戻って、優先度定義DB15には、サービスに関する優先度に関する情報が登録される。図5は、優先度定義DB15に登録される登録項目を示す図である。図5においては、優先度定義DB15に登録される登録項目として、サービス名、利用者ID、時間帯、および優先度を挙げている。サービス名には、提供するサービスの名称が登録される。利用者IDには、サービス名に登録されたサービスを提供する利用者を識別するために利用者に予め付与された利用者IDが登録される。時間帯には、優先度を有効とする時間帯が登録される。優先度には、利用者IDに登録された利用者がサービス名に登録されたサービスを利用する際の優先度が登録される。ここでは、優先度「1」が最も優先度が高く、優先度「2」が優先度「1」のつぎに優先度が高いものとする。   Returning to FIG. 1, information related to priority related to services is registered in the priority definition DB 15. FIG. 5 is a diagram showing registration items registered in the priority definition DB 15. In FIG. 5, service names, user IDs, time zones, and priorities are listed as registration items registered in the priority definition DB 15. In the service name, the name of the service to be provided is registered. In the user ID, a user ID given in advance to the user in order to identify the user who provides the service registered in the service name is registered. In the time zone, a time zone in which the priority is valid is registered. In the priority, the priority when the user registered in the user ID uses the service registered in the service name is registered. Here, it is assumed that the priority “1” has the highest priority, and the priority “2” has the highest priority next to the priority “1”.

アクセス制御部16は、負荷分散定義DB13、サービス配備情報DB14、優先度定義DB15、およびサーバ7の負荷状況に基づいて、クライアント3から要求されたサービスの優先度を判定し、判定した優先度に基づいてアクセスするサーバ7を選択する。アクセス制御部16は、選択したサーバ7に応じてアクセスキュー17の所定の位置にジョブ(アクセス要求)を設定する。   The access control unit 16 determines the priority of the service requested from the client 3 based on the load distribution definition DB 13, the service deployment information DB 14, the priority definition DB 15, and the load status of the server 7, and sets the determined priority. Based on this, the server 7 to be accessed is selected. The access control unit 16 sets a job (access request) at a predetermined position in the access queue 17 according to the selected server 7.

アクセス制御部16は、負荷分散制御部161、優先度制御部162、およびサーバ負荷監視部163を備えている。負荷分散制御部161は、負荷分散定義DB13およびサービス配備情報DB14に基づいてクライアント3から要求されたサービスを保持しているサーバ7の中から、アクセス可能なサーバ7の候補を選択する。   The access control unit 16 includes a load distribution control unit 161, a priority control unit 162, and a server load monitoring unit 163. The load distribution control unit 161 selects an accessible server 7 candidate from the servers 7 that hold the service requested by the client 3 based on the load distribution definition DB 13 and the service deployment information DB 14.

サーバ負荷監視部163は、サーバ7の負荷状況を監視し、監視結果に基づいて負荷分散制御部161によって選択されたアクセス可能なサーバ7の候補の中からアクセスするサーバ7を選択する。優先度制御部162は、優先度定義DB15およびアクセスキュー17に保持されているジョブの優先度に基づいてサーバ負荷監視部163によって選択されたサーバ7に応じてアクセスキュー17の所定の位置にジョブを設定する。 The server load monitoring unit 163 monitors the load status of the server 7 and selects the server 7 to be accessed from the candidates for the accessible server 7 selected by the load distribution control unit 161 based on the monitoring result. The priority control unit 162 sets the job at a predetermined position in the access queue 17 according to the server 7 selected by the server load monitoring unit 163 based on the priority of the job held in the priority definition DB 15 and the access queue 17. Set.

アクセスキュー17は、サーバ7毎に対応付けられたキューを有し、当該サーバ7にアクセスすべきジョブを保持する。図1においては、アクセスキュー17は、サーバ7−1に対応付けられたキューと、サーバ7−2に対応付けられたキューと、サーバ7−3に対応付けられたキューとを有する。そして、各キューには、優先度制御部162によってジョブを識別するために付与されるアクセスIDが登録され、このアクセスIDに関連づけてアクセス情報が登録される。ここで、アクセス情報とは、優先度、利用者ID、アクセスすべきサービス名、サービスURL、アクセスキュー17への登録日時、予め定められた待ち時間の上限値を含むアクセスIDが示すジョブに関する各種情報のことである。   The access queue 17 has a queue associated with each server 7 and holds jobs to be accessed to the server 7. In FIG. 1, the access queue 17 includes a queue associated with the server 7-1, a queue associated with the server 7-2, and a queue associated with the server 7-3. In each queue, an access ID assigned to identify a job by the priority control unit 162 is registered, and access information is registered in association with the access ID. Here, the access information refers to various jobs related to the job indicated by the access ID including priority, user ID, service name to be accessed, service URL, date and time of registration in the access queue 17, and a predetermined upper limit of waiting time. It is information.

実サービス呼び出し部18は、サーバ7とのインタフェースを有し、アクセスキュー17に登録されているアクセスIDと当該アクセスIDに関連付けられたアクセス情報に基づいてサーバ7にアクセスして実際のサービスを提供するデータを取得し、取得したデータをアクセス制御部16およびサービスインタフェース部12を介してクライアント3に送信する。   The actual service calling unit 18 has an interface with the server 7 and provides the actual service by accessing the server 7 based on the access ID registered in the access queue 17 and the access information associated with the access ID. The acquired data is acquired, and the acquired data is transmitted to the client 3 via the access control unit 16 and the service interface unit 12.

アクセス履歴管理部19は、サーバ7が保持するサービスへのアクセス履歴情報をアクセス履歴DB20に登録してアクセス履歴情報を管理する。図6は、アクセス履歴DB20に登録される登録項目の一例を示す図である。図6においては、アクセス履歴DB20の登録項目として、アクセス日時、サービス名、利用者ID、実施優先度、および利用負荷分散レベルを挙げている。   The access history management unit 19 registers access history information for services held by the server 7 in the access history DB 20 and manages the access history information. FIG. 6 is a diagram illustrating an example of registration items registered in the access history DB 20. In FIG. 6, access date / time, service name, user ID, implementation priority, and usage load distribution level are listed as registration items in the access history DB 20.

アクセス日時には、サーバ7にアクセスした日時が登録される。なお、アクセス日時は、クライアント3からの要求を受け付けた日時としてもかまわない。サービス名には、利用した(アクセスした)サービスの名称が登録される。利用者IDには、アクセス日時に登録された日時にサービス名に登録されたサービスを利用した利用者を識別するための利用者IDが登録される。実施優先度には、実際にサーバ7にアクセスした際に利用した優先度が登録される。利用負荷分散レベルには、実際にサーバ7にアクセスした際に利用した負荷分散レベルが登録される。   In the access date and time, the date and time when the server 7 was accessed is registered. The access date and time may be the date and time when the request from the client 3 is received. In the service name, the name of the service used (accessed) is registered. In the user ID, a user ID for identifying a user who uses the service registered in the service name on the date and time registered as the access date and time is registered. As the execution priority, the priority used when the server 7 is actually accessed is registered. In the use load distribution level, the load distribution level used when actually accessing the server 7 is registered.

つぎに、図7のシーケンス図を参照して、本発明にかかるアクセス制御装置1が適用されるネットワークシステムの動作を説明する。利用者は、所望のサービスを受けるためにサービス名を含む情報をクライアント3に入力する。   Next, the operation of the network system to which the access control apparatus 1 according to the present invention is applied will be described with reference to the sequence diagram of FIG. The user inputs information including a service name to the client 3 in order to receive a desired service.

クライアント3は、利用者IDおよびサービス名を含むサービスインタフェース情報取得要求を生成する(ステップS100)。クライアント3は、生成したサービスインタフェース情報取得要求をアクセス制御装置1に送信する(ステップS101)。   The client 3 generates a service interface information acquisition request including the user ID and service name (step S100). The client 3 transmits the generated service interface information acquisition request to the access control apparatus 1 (step S101).

アクセス制御装置1は、クライアント3から受信したサービスインタフェース情報取得要求およびサービスインタフェース定義DB11に基づいて、要求されたサービスを受ける際に必要なサービスインタフェース情報を取得するサービスインタフェース情報取得処理を実行する(ステップS102)。   Based on the service interface information acquisition request and the service interface definition DB 11 received from the client 3, the access control apparatus 1 executes a service interface information acquisition process for acquiring service interface information necessary for receiving the requested service ( Step S102).

図8のフローチャートを参照して、アクセス制御装置1が実行するサービスインタフェース情報取得処理の動作を詳細に説明する。サービスインタフェース部12は、受信したサービスインタフェース情報取得要求からサービス名を抽出する(ステップS200)。   The operation of the service interface information acquisition process executed by the access control device 1 will be described in detail with reference to the flowchart of FIG. The service interface unit 12 extracts a service name from the received service interface information acquisition request (step S200).

サービスインタフェース部12は、サービス名およびサービスインタフェース定義DB11に基づいてサービスURLおよびインタフェース定義ファイル名を取得する(ステップS201)。具体的には、サービスインタフェース部12は、抽出したサービス名を検索キーとしてサービスインタフェース定義DB11のサービス名を検索キーとして、検索キーと一致するサービス名に関連づけてサービスインタフェース定義DB11のサービスURLおよびインタフェース定義ファイル名に登録されているサービスURLおよびインタフェース定義ファイル名を取得する。   The service interface unit 12 acquires a service URL and an interface definition file name based on the service name and the service interface definition DB 11 (step S201). Specifically, the service interface unit 12 uses the extracted service name as a search key and the service name in the service interface definition DB 11 as a search key, and associates the service URL and interface in the service interface definition DB 11 with the service name that matches the search key. Get the service URL and interface definition file name registered in the definition file name.

サービスインタフェース部12は、図示しない記憶手段またはアクセス制御装置1が接続可能な記憶装置から取得したインタフェース定義ファイル名が示すファイルを取得する(ステップS202)。サービスインタフェース部12は、取得したファイルおよびサービスURLに基づいて、取得したファイル(インタフェース定義ファイル)からアクセスに必要な情報(書式や検索情報に使用される項目など)およびサービスURLを含むサービスインタフェース情報を生成する(ステップS203)。なお、サービスインタフェース情報に取得したインタフェース定義ファイルそのものを含めるようにしてもよい。サービスインタフェース部12は、生成したサービスインタフェース情報を含むサービスインタフェース情報取得応答を生成して(ステップS204)アクセス情報取得処理を終了する。   The service interface unit 12 acquires a file indicated by the interface definition file name acquired from a storage unit (not shown) or a storage device to which the access control device 1 can be connected (step S202). Based on the acquired file and the service URL, the service interface unit 12 includes service interface information including information (such as items used for format and search information) required for access from the acquired file (interface definition file) and the service URL. Is generated (step S203). The acquired interface definition file itself may be included in the service interface information. The service interface unit 12 generates a service interface information acquisition response including the generated service interface information (step S204) and ends the access information acquisition process.

図7に戻って、アクセス制御装置1のサービスインタフェース部12は、サービスインタフェース情報取得処理によって生成したサービスインタフェース情報取得応答を利用者IDが示すクライアント3に送信する(ステップS103)。   Returning to FIG. 7, the service interface unit 12 of the access control apparatus 1 transmits the service interface information acquisition response generated by the service interface information acquisition process to the client 3 indicated by the user ID (step S103).

クライアント3は、受信したサービスインタフェース情報応答からアクセスに必要な情報およびサービスURLを抽出する。クライアント3は、アクセスに必要な情報に基づいてサービスの提供を受ける環境を整えるとともに、利用者ID、サービス名およびサービスURLを含むサービス読み出し要求を生成する(ステップS104)。クライアント3は、生成したサービス読み出し要求をアクセス制御装置1に送信する(ステップS105)。   The client 3 extracts information necessary for access and a service URL from the received service interface information response. The client 3 prepares an environment for receiving a service based on information necessary for access, and generates a service read request including a user ID, a service name, and a service URL (step S104). The client 3 transmits the generated service read request to the access control apparatus 1 (step S105).

アクセス制御装置1は、クライアント3から受信したサービス読み出し要求、負荷分散定義DB13、サービス配備情報DB14、および優先度定義DB15に基づいて、サービス読み出し要求によって要求されたサービスを保持するサーバ7にアクセスするためのアクセス制御処理を実行する(ステップS106)。   The access control device 1 accesses the server 7 that holds the service requested by the service read request, based on the service read request, the load distribution definition DB 13, the service deployment information DB 14, and the priority definition DB 15 received from the client 3. An access control process is executed (step S106).

図9のフローチャートを参照して、アクセス制御装置1が実行するアクセス制御処理の詳細な動作について説明する。アクセス制御装置1の負荷分散制御部161は、サービスインタフェース部12を介してクライアント3から受信したサービス読み出し要求からサービス名、サービスURL、および利用者IDを抽出する(ステップS300)。   With reference to the flowchart of FIG. 9, the detailed operation of the access control process executed by the access control apparatus 1 will be described. The load distribution control unit 161 of the access control apparatus 1 extracts a service name, a service URL, and a user ID from a service read request received from the client 3 via the service interface unit 12 (step S300).

負荷分散制御部161は、抽出したサービス名および利用者IDと、現在時刻とに基づいて負荷分散定義DB13から負荷分散レベルを取得する(ステップS301)。具体的には、負荷分散制御部161は、抽出したサービス名および利用者IDの組を検索キーとして負荷分散定義DB13のサービス名および利用者IDを検索して、検索キーと一致するサービス名および利用者IDの組を抽出する。負荷分散制御部161は、抽出した組に関連付けて負荷分散定義DB13の時間帯および負荷分散レベルに登録されている時間帯および負荷分散レベルを取得する。   The load distribution control unit 161 acquires a load distribution level from the load distribution definition DB 13 based on the extracted service name and user ID and the current time (step S301). Specifically, the load distribution control unit 161 searches for the service name and user ID in the load distribution definition DB 13 using the combination of the extracted service name and user ID as a search key, and matches the service name and user ID that match the search key. A set of user IDs is extracted. The load distribution control unit 161 acquires the time zone and the load distribution level registered in the time zone and the load distribution level of the load distribution definition DB 13 in association with the extracted set.

図3に示した負荷分散定義DB13の利用者IDには「ユーザ1」、「ユーザ2」、「ユーザ3」および「*」が登録されている。ここで「*」はすべての利用者を示している。ここで、利用者ID「ユーザ1」に着目すると、負荷分散制御部161は、サービス名「サービス1」であった場合には時間帯「0:00−24:00」および負荷分散レベル「2」を取得し、サービス名「サービス2」であった場合には時間帯「8:00−20:00」および負荷分散レベル「2」と、時間帯「20:00−8:00」および負荷分散レベル「1」とを取得する。   "User 1", "User 2", "User 3", and "*" are registered in the user ID of the load distribution definition DB 13 shown in FIG. Here, “*” indicates all users. Here, when paying attention to the user ID “user 1”, the load distribution control unit 161, when the service name is “service 1”, the time zone “0: 00-24: 00” and the load distribution level “2”. If the service name is “service 2”, the time zone “8: 00-20: 00” and the load distribution level “2”, the time zone “20: 00-8: 00” and the load The distribution level “1” is acquired.

負荷分散制御部161は、取得した時間帯および負荷分散レベルと現在時刻とに基づいて負荷分散レベルを選択する。たとえば、ユーザID「ユーザ1」およびサービス名「サービス1」を検索キーとした場合には時間帯は「0:00−24:00」であるので、現在時刻に依存することなく負荷分散レベル「2」を選択する。また、ユーザID「ユーザ1」およびサービス名「サービス2」を検索キーとした場合には、現在時刻が「8:00」以降「20:00」以前であればこの時間帯に対応付けられている負荷分散レベル「2」を選択し、現在時刻が「20:00」以降「8:00」以前であればこの時間帯に対応付けられている負荷分散レベル「1」を選択する。なお、現在時刻については、アクセス制御装置1内の図示しない計時機能から取得するものとする。   The load distribution control unit 161 selects a load distribution level based on the acquired time zone, load distribution level, and current time. For example, when the user ID “user 1” and the service name “service 1” are used as search keys, the time zone is “0: 00-24: 00”, so the load distribution level “0” does not depend on the current time. 2 ”is selected. When the user ID “user 1” and the service name “service 2” are used as search keys, if the current time is “8:00” or later and “20:00” or earlier, it is associated with this time zone. Load distribution level “2” is selected, and if the current time is “20:00” or later and “8:00” or earlier, the load distribution level “1” associated with this time zone is selected. Note that the current time is acquired from a clocking function (not shown) in the access control device 1.

負荷分散制御部161は、サービス名および選択した負荷分散レベルに基づいてサービス配備情報DB14から実サーバ名を取得する(ステップS302)。具体的には、負荷分散制御部161は、サービス名および選択した負荷分散レベルの組を検索キーとしてサービス配備情報DB14のサービス名および負荷分散レベルを検索して、検索キーと一致するサービス名および負荷分散レベルに関連づけられてサービス配備情報DB14に登録されている実サーバ名を取得する。   The load distribution control unit 161 acquires the real server name from the service deployment information DB 14 based on the service name and the selected load distribution level (step S302). Specifically, the load distribution control unit 161 searches for the service name and the load distribution level in the service deployment information DB 14 using the combination of the service name and the selected load distribution level as a search key, and matches the service name and the search key. The real server name associated with the load distribution level and registered in the service deployment information DB 14 is acquired.

具体的には、サービス名「サービス1」および負荷分散レベル「1」を検索キーとした場合、負荷分散制御部161は、サービス名「サービス1」および負荷分散レベル「1」に関連づけられてサービス配備情報DB14の実サーバ名に登録されているサーバ7−1を示すサーバ名「サーバ#1」を取得する。また、サービス名「サービス1」および負荷分散レベル「2」を検索キーとした場合、負荷分散制御部161は、サービス名「サービス1」および負荷分散レベル「1」に関連づけられてサービス配備情報DB14の実サーバ名に登録されているサーバ7−1を示すサーバ名「サーバ#1」と、サービス名「サービス1」および負荷分散レベル「2」に関連づけられてサービス配備情報DB14の実サーバ名に登録されているサーバ7−2を示すサーバ名「サーバ#2」とを取得する。すなわち、負荷分散制御部161は、負荷分散定義DB13から選択した負荷分散レベルの値以下の負荷分散レベルとサービス名との組に関連付けられた実サーバ名すべてをサービス配備情報DB14から取得する。これにより、負荷分散レベルが高いほど(ここでは、負荷分散レベルの値が大きいほど)アクセスすべきサーバ7の候補となる台数が多くなり、優先度が高くなる。負荷分散制御部161は、サービス名、サービスURL、利用者ID、および取得した実サーバ名をサーバ負荷監視部163に通知する。   Specifically, when the service name “service 1” and the load distribution level “1” are used as search keys, the load distribution control unit 161 associates the service name “service 1” and the load distribution level “1” with the service. The server name “server # 1” indicating the server 7-1 registered in the real server name of the deployment information DB 14 is acquired. When the service name “service 1” and the load distribution level “2” are used as search keys, the load distribution control unit 161 associates the service name “service 1” and the load distribution level “1” with the service deployment information DB 14. The server name “server # 1” indicating the server 7-1 registered in the real server name, the service name “service 1”, and the load distribution level “2” are associated with the real server name in the service deployment information DB 14. The server name “server # 2” indicating the registered server 7-2 is acquired. That is, the load distribution control unit 161 acquires all the real server names associated with the combination of the load distribution level and the service name equal to or less than the value of the load distribution level selected from the load distribution definition DB 13 from the service deployment information DB 14. As a result, the higher the load distribution level (in this case, the greater the load distribution level value), the greater the number of servers 7 that can be accessed, and the higher the priority. The load distribution control unit 161 notifies the server load monitoring unit 163 of the service name, service URL, user ID, and acquired real server name.

サーバ負荷監視部163は、通知された実サーバ名が複数であるか否か、すなわち負荷分散制御部161によって取得された実サーバ名が複数であるか否かを判定する(ステップS303)。実サーバ名が複数である場合(ステップS303,Yes)、サーバ負荷監視部163は、実サーバ名が示す各サーバ7の負荷状況を確認する(ステップS304)。サーバ7の負荷状況は、たとえば、サーバ7へのアクセス数やCPU稼働率、アクセスキュー17の当該サーバ7に対応するキューの状態などによって確認する。   The server load monitoring unit 163 determines whether there are a plurality of notified real server names, that is, whether there are a plurality of real server names acquired by the load distribution control unit 161 (step S303). When there are a plurality of real server names (step S303, Yes), the server load monitoring unit 163 checks the load status of each server 7 indicated by the real server name (step S304). The load status of the server 7 is confirmed by, for example, the number of accesses to the server 7, the CPU operating rate, the status of the queue corresponding to the server 7 in the access queue 17, and the like.

サーバ負荷監視部163は、確認したサーバ7の負荷状況に基づいて、最も負荷の低いサーバ7を選択する(ステップS305)。すなわち、負荷分散制御部161によって選択された候補となるサーバ7の中から最も負荷の低いサーバ7をアクセスすべきサーバ7として選択する。サーバ負荷監視部163は、サービス名、サービスURL、利用者ID、および選択したサーバ7を示すサーバ名を優先度制御部162に通知する。   The server load monitoring unit 163 selects the server 7 with the lowest load based on the confirmed load status of the server 7 (step S305). That is, the server 7 with the lowest load is selected as the server 7 to be accessed from among the candidate servers 7 selected by the load distribution control unit 161. The server load monitoring unit 163 notifies the priority control unit 162 of the service name, service URL, user ID, and server name indicating the selected server 7.

一方、負荷分散制御部161から通知された実サーバ名が1つである場合、すなわち負荷分散制御部161によって1つのサーバ7しか選択されなかった場合(ステップS303,No)、サーバ負荷監視部163は、通知されたサーバ7の負荷に依存することなく通知されたサーバ7をアクセスすべきサーバ7として選択する。サーバ負荷監視部163は、サービス名、サービスURL、利用者ID、および選択したサーバ7を示すサーバ名を優先度制御部162に通知する。   On the other hand, when the number of real servers notified from the load distribution control unit 161 is one, that is, when only one server 7 is selected by the load distribution control unit 161 (No in step S303), the server load monitoring unit 163 Selects the notified server 7 as the server 7 to be accessed without depending on the notified load of the server 7. The server load monitoring unit 163 notifies the priority control unit 162 of the service name, service URL, user ID, and server name indicating the selected server 7.

優先度制御部162は、通知されたサービス名、利用者ID、および現在時刻に基づいて優先度定義DB15から優先度を取得する(ステップS306)。具体的には、通知されたサービス名および利用者IDの組を検索キーとして優先度定義DB15のサービス名および利用者IDを検索して、検索キーと一致するサービス名および利用者IDに関連付けて優先度定義DB15に登録されている時間帯および優先度を取得する。   The priority control unit 162 acquires the priority from the priority definition DB 15 based on the notified service name, user ID, and current time (step S306). Specifically, the service name and user ID in the priority definition DB 15 are searched using the notified service name and user ID set as a search key, and associated with the service name and user ID matching the search key. The time zone and priority registered in the priority definition DB 15 are acquired.

優先度制御部162は、取得した時間帯および優先度と現在時刻とに基づいて優先度を選択する。図5に示した優先度定義DB15では、サービス名「サービス1」であって利用者ID「ユーザ1」の場合、サービス名「サービス1」であって利用者ID「ユーザ2」の場合、およびサービス名「サービス1」であって利用者ID「ユーザ3」の場合は、それぞれ時間帯「0:00−24:00」となっている。よって、優先度制御部162は、現在時刻に依存することなくサービス名および利用者IDに関連付けられて優先度定義DB15に登録されている優先度を選択する。ここで、現在時刻が取得した時間帯以外であった場合や、サービス名および利用者IDに関連付けられた時間帯および優先度が存在しない場合、優先度制御部162は最も低い優先度の値(ここでは、優先度「1」)を選択する。   The priority control unit 162 selects a priority based on the acquired time zone, priority, and current time. In the priority definition DB 15 shown in FIG. 5, the service name “service 1” and the user ID “user 1”, the service name “service 1” and the user ID “user 2”, and In the case of the service name “service 1” and the user ID “user 3”, the time zone is “0: 00-24: 00”, respectively. Therefore, the priority control unit 162 selects the priority registered in the priority definition DB 15 in association with the service name and the user ID without depending on the current time. Here, when the current time is outside the acquired time zone, or when there is no time zone and priority associated with the service name and the user ID, the priority control unit 162 has the lowest priority value ( Here, the priority “1”) is selected.

優先度制御部162は、選択した優先度に応じたアクセスキュー17のキュー位置にジョブを挿入する(ステップS307)。具体的には、優先度制御部162は、たとえば、サーバ負荷監視部163から通知された実サーバ名がサーバ7−1を示す場合には、サーバ7−1に対応するアクセスキュー17のキューを選択する。優先度制御部162は、選択したキューが保持しているアクセスIDの中から最初に実行されるアクセスIDに関連付けられているアクセス情報の優先度、登録日時、および待ち時間を取得する。優先度制御部162は、取得した優先度と選択した優先度(キューに挿入するジョブの優先度)とを比較する。選択した優先度が取得した優先度よりも優先度が高い場合、優先度制御部162は、登録日時に待ち時間を加算した時刻と現在時刻とを比較する。登録日時に待ち時間を加算した時刻が現在時刻以前の場合、優先度制御部162は、最初に実行されるアクセスIDおよびこのアクセスIDに後続して対象となるキューの順番を1ずつ後ろにずらしてキューの先頭に新たなアクセスIDを登録するとともに、このアクセスIDに関連付けてサーバ負荷監視部163から通知された優先度、利用者ID、サービス名、およびサービスURLと、現在日時(アクセスキュー17への登録日時)と、予め定められた待ち時間の上限値、すなわちアクセス情報を登録する。   The priority control unit 162 inserts a job at the queue position of the access queue 17 corresponding to the selected priority (step S307). Specifically, for example, when the real server name notified from the server load monitoring unit 163 indicates the server 7-1, the priority control unit 162 sets the queue of the access queue 17 corresponding to the server 7-1. select. The priority control unit 162 acquires the priority, the registration date and time, and the waiting time of the access information associated with the access ID that is executed first from among the access IDs held in the selected queue. The priority control unit 162 compares the acquired priority with the selected priority (priority of the job to be inserted into the queue). When the selected priority is higher than the acquired priority, the priority control unit 162 compares the time obtained by adding the waiting time to the registration date and the current time. When the time obtained by adding the waiting time to the registration date and time is before the current time, the priority control unit 162 shifts the access ID to be executed first and the order of the target queue subsequent to this access ID one by one. A new access ID is registered at the head of the queue, and the priority, user ID, service name, and service URL notified from the server load monitoring unit 163 in association with the access ID and the current date and time (access queue 17 And the upper limit of a predetermined waiting time, that is, access information is registered.

一方、選択した優先度が取得した優先度以下の場合、または選択した優先度が取得した優先度より優先度が高くてかつ登録日時に待ち時間を加算した時刻が現在時刻を過ぎている場合、優先度制御部162は、比較した優先度のつぎにキューが保持しているアクセスIDに関連付けられているアクセス情報の優先度、登録日時、および待ち時間を取得し、取得した優先度と選択した優先度とを比較し、選択した優先度が取得した優先度よりも大きくてかつ登録日時に待ち時間を加算した時刻が現在時刻以前となるアクセスIDを検索する動作を繰り返して、選択した優先度よりも優先度が低くかつキューに登録されてから待ち時間を経過していないジョブの前に新たに登録すべきジョブをキューに挿入する。これにより、クライアント3からのサービス呼び出し要求に対するアクセスキュー17へのアクセス制御処理が完了する。   On the other hand, if the selected priority is less than or equal to the acquired priority, or if the selected priority is higher than the acquired priority and the time added to the registration date and time is past the current time, The priority control unit 162 acquires the priority, the registration date and time, and the waiting time of the access information associated with the access ID held in the queue next to the compared priority, and selects the acquired priority. The priority selected by comparing the priority and repeating the operation of searching for an access ID in which the selected priority is greater than the acquired priority and the time when the waiting time is added to the registration date and time is before the current time. A job to be newly registered is inserted into the queue before a job having a lower priority than the job and having not yet waited since being registered in the queue. Thereby, the access control process to the access queue 17 in response to the service call request from the client 3 is completed.

図7に戻って、アクセス制御装置1はサーバ7に実サービス呼び出し要求を送信する(ステップS107)。具体的には、アクセス制御装置1の実サービス呼び出し部18は、サーバ7に対応するアクセスキュー17のキューの先頭に登録されているアクセスIDを取得し、取得したアクセスIDに関連付けられているアクセス情報のサービスURLに基づいて当該サーバ7に対して実サービス呼び出し要求を送信する。   Returning to FIG. 7, the access control apparatus 1 transmits an actual service call request to the server 7 (step S107). Specifically, the real service calling unit 18 of the access control device 1 acquires the access ID registered at the head of the queue of the access queue 17 corresponding to the server 7 and accesses associated with the acquired access ID. Based on the service URL of the information, an actual service call request is transmitted to the server 7.

実サービス呼び出し要求を受信したサーバ7は、要求された実サービスのデータ(結果)を取得する(ステップS108)。サーバ7は、取得したデータ(結果)を含む実サービス呼び出し応答を生成し、生成した実サービス呼び出し応答をアクセス制御装置1に送信する(ステップS109)。   Receiving the actual service call request, the server 7 acquires data (result) of the requested actual service (step S108). The server 7 generates an actual service call response including the acquired data (result), and transmits the generated actual service call response to the access control apparatus 1 (step S109).

実サービス呼び出し部18は、サーバ7から受信した実サービス呼び出し応答とこの実サービス呼び出し応答に対するアクセスIDに関連付けられたアクセス情報の利用者IDとをアクセス制御部16を介してサービスインタフェース部12に通知する。また、実サービス呼び出し部18は、サーバ7から受信した実サービス呼び出し応答に対するアクセスIDに関連付けられたアクセス情報をアクセス制御部16を介してアクセス履歴管理部19に出力する。実サービス呼び出し応答を送信したサーバ7に対応付けられたアクセスキュー17のキューからつぎに実行すべきジョブのアクセスIDを取得して取得したアクセスIDに関連付けられているアクセス情報のサービスURLに基づいて当該サーバ7に対して実サービス呼び出し要求を送信する。   The real service call unit 18 notifies the service interface unit 12 of the real service call response received from the server 7 and the user ID of the access information associated with the access ID corresponding to the real service call response via the access control unit 16. To do. Further, the actual service calling unit 18 outputs access information associated with the access ID for the actual service call response received from the server 7 to the access history managing unit 19 via the access control unit 16. Based on the service URL of the access information associated with the acquired access ID, the access ID of the job to be executed next is acquired from the queue of the access queue 17 associated with the server 7 that has transmitted the actual service call response. An actual service call request is transmitted to the server 7.

一方、アクセス履歴管理部19は、アクセス制御部16を介して通知されたアクセス情報に基づいてアクセス履歴情報をアクセス履歴DB20に登録する履歴情報処理を実行する(ステップS110)。具体的には、アクセス履歴管理部19は、現在時刻を取得し、取得した現在時刻をアクセス履歴DB20のアクセス日時に登録する。アクセス履歴管理部19は、登録したアクセス日時に関連付けてアクセス履歴DB20のサービス名、利用者ID、実施優先度、および利用負荷分散レベルに、アクセス情報のサービス名、利用者ID、優先度、および負荷分散レベルを登録する。   On the other hand, the access history management unit 19 executes history information processing for registering access history information in the access history DB 20 based on the access information notified via the access control unit 16 (step S110). Specifically, the access history management unit 19 acquires the current time, and registers the acquired current time as the access date / time in the access history DB 20. The access history management unit 19 associates the service name of the access information, the user ID, the priority, and the service name, user ID, execution priority, and usage load distribution level of the access history DB 20 in association with the registered access date and time. Register the load distribution level.

サービスインタフェース部12は、アクセス制御部16を介して通知された利用者IDに基づいて実サービス呼び出し応答の結果を含むサービス呼び出し応答を生成し、生成したサービス呼び出し応答を利用者IDが示すクライアント3に送信する(ステップS111)。   The service interface unit 12 generates a service call response including the result of the actual service call response based on the user ID notified via the access control unit 16, and the client 3 indicates the generated service call response by the user ID. (Step S111).

なお、この実施の形態においては、優先度制御部162が、優先度に基づいてアクセスキュー17のキューにアクセスIDを登録するようにしたが、優先度定義DB15を用いることなく、負荷分散制御部161が選択したアクセス可能なサーバ7の候補の中からサーバ負荷監視部163が負荷状況によって選択したサーバ7に対応するアクセスキュー17のキューに選択した順番にアクセスIDを登録するようにしてもよい。   In this embodiment, the priority control unit 162 registers the access ID in the queue of the access queue 17 based on the priority. However, the load distribution control unit is not used without using the priority definition DB 15. The access IDs may be registered in the order selected by the server load monitoring unit 163 in the queue of the access queue 17 corresponding to the server 7 selected according to the load status from among the accessible server 7 candidates selected by 161. .

このように、この実施の形態においては、負荷分散制御部161が、クライアントから受信したサービス呼び出し要求に含まれるサービス名および利用者IDと、サーバが保持するサービス名およびサービスを利用する利用者を識別するための利用者IDに関連付けてサーバへの負荷分散の優先度を示す負荷分散レベルが登録される負荷分散定義DB13と、サービス名および負荷分散レベルに関連付けてアクセスすべきサーバ名が登録されるサービス配備情報DB14とに基づいてクライアントから要求されたサービス名および利用者IDの負荷分散レベルに応じてアクセス可能なサーバの候補を選択し、サーバ負荷監視部163が、負荷分散制御部161によって選択されたサーバの候補の負荷状況に基づいて、最も負荷状況の低いサーバを選択し、選択したサーバに対応するアクセスキュー17のキューにサービス呼び出し要求によるアクセス待ちを登録するようにしているため、利用者および利用するサービスに応じてサーバに対する負荷分散を行うことが可能となり、サーバの台数を必要以上に増やすことなく利用者への優先度およびサーバへの負荷分散を考慮してサーバ7へのアクセスの応答時間を短縮することができる。   As described above, in this embodiment, the load distribution control unit 161 determines the service name and user ID included in the service call request received from the client, and the user who uses the service name and service held by the server. The load distribution definition DB 13 in which the load distribution level indicating the priority of load distribution to the server is registered in association with the user ID for identification, and the server name to be accessed in association with the service name and the load distribution level are registered. The server load monitoring unit 163 selects a server candidate that can be accessed based on the service distribution information DB 14 and the load distribution level of the service name and user ID requested by the client. Based on the load status of the selected server candidates, the server with the lowest load status Since the access waiting due to the service call request is registered in the queue of the access queue 17 corresponding to the selected server, it becomes possible to distribute the load on the server according to the user and the service to be used. The response time of access to the server 7 can be shortened in consideration of the priority to the user and the load distribution to the server without increasing the number of servers more than necessary.

また、この実施の形態においては、負荷分散定義DB13に負荷分散レベルを有効にする時間帯の情報を有し、負荷分散制御部161は、現在時刻が負荷分散定義DB13に登録された時間帯内である場合に負荷分散レベルを有効にするようにしているため、利用者および利用するサービスだけでなく、時間帯によって優先度による負荷分散制御を行うことが可能となり、詳細なアクセス制御を行うことができる。   Further, in this embodiment, the load distribution definition DB 13 has time zone information for validating the load distribution level, and the load distribution control unit 161 includes the current time within the time zone registered in the load distribution definition DB 13. In this case, the load distribution level is made effective, so it is possible to perform load distribution control based on priority according to time zones as well as users and services to be used, and perform detailed access control. Can do.

さらに、この実施の形態においては、優先度制御部162が、サービス名および利用者IDに関連付けて優先度が登録される優先度定義DB15と、サービス呼び出し要求に含まれるサービス名および利用者IDとに基づいて、サービス呼び出し要求に含まれるサービス名および利用者IDの優先度を取得し、アクセスキュー17のキューに登録されたアクセス待ちの中で取得した優先度よりも低い優先度のアクセス待ちの前にサービス呼び出し要求によるアクセス待ちを挿入するようにしているため、アクセスすべきサーバ7毎の優先度制御を行うことが可能となり、サーバ7へのアクセスの応答時間を短縮することができる。   Furthermore, in this embodiment, the priority control unit 162 includes a priority definition DB 15 in which priorities are registered in association with service names and user IDs, and service names and user IDs included in service call requests. Based on the service call request, the priority of the service name and the user ID included in the service call request is acquired, and the access waiting of the priority lower than the priority acquired in the access waiting registered in the queue of the access queue 17 is Since the access waiting due to the service call request is inserted before, priority control for each server 7 to be accessed can be performed, and the response time for access to the server 7 can be shortened.

さらにまた、この実施の形態においては、優先度定義DB15に優先度を有効にする時間帯の情報を有し、優先度制御部162は、現在時間が優先度定義DB15に登録された時間帯内である場合に優先度を有効にするようにしているため、利用者および利用するサービスだけでなく、時間他によってアクセスすべきサーバ7毎の優先度制御を行うことが可能となり、詳細なアクセス制御を行うことができる。   Furthermore, in this embodiment, the priority definition DB 15 has information on the time zone in which the priority is valid, and the priority control unit 162 includes the current time within the time zone registered in the priority definition DB 15. In this case, since priority is made effective, it is possible to perform priority control for each server 7 to be accessed not only by the user and the service to be used, but also by time, etc., and detailed access control It can be performed.

また、この実施の形態においては、優先度制御部162は、アクセスキュー17のキューに登録されたアクセス待ちの中で取得した優先度よりも低い優先度のアクセス待ちが所定の待ち時間を過ぎている場合には取得した優先度よりも優先度が高いと判定するようにしているため、一定期間を過ぎた場合には優先度が低くても待ち状態を遅らせることがなくなり必要以上にサーバ7へのアクセスの応答時間を長くすることを防止することができる。   Further, in this embodiment, the priority control unit 162 determines that the access waiting with the priority lower than the priority acquired in the access waiting registered in the queue of the access queue 17 has passed the predetermined waiting time. Since the priority is determined to be higher than the acquired priority when there is, the waiting state is not delayed even if the priority is low after a certain period of time, and the server 7 is more than necessary. It is possible to prevent the response time of access from being increased.

さらに、この実施の形態においては、サービス名に関連付けてサービスを提供する際のインタフェースに関する情報が登録されるサービスインタフェース定義DB11を有し、サービスインタフェース部12が、クライアントからのサービスインタフェース情報取得要求に含まれるサービス名およびサービスインタフェース定義DB11に基づいて、要求されたサービスのインタフェースに関する情報をクライアントに通知し、実サービス呼び出し部18が、アクセスキュー17の各キューに登録されているアクセス待ちを順に読み出して当該サーバ7からサービスに必要なデータを取得してクライアント3に送信するようにしているため、クライアント3のアクセスするサーバ7と、実際にサービスを提供するサーバ7とを分離し、動作時に任意のサーバ7に振り分けることで負荷分散によるアクセス制御を可能とし、サーバ7へのアクセスの応答時間を短縮することができる。   Furthermore, in this embodiment, it has a service interface definition DB 11 in which information related to an interface for providing a service in association with a service name is registered, and the service interface unit 12 responds to a service interface information acquisition request from a client. Based on the service name and the service interface definition DB 11 included, the client is notified of information about the interface of the requested service, and the actual service calling unit 18 sequentially reads the access waits registered in each queue of the access queue 17. Since the data necessary for the service is acquired from the server 7 and transmitted to the client 3, the server 7 accessed by the client 3 and the server 7 that actually provides the service are separated and operated To enable access control by load distribution by distributing to any server 7, it is possible to shorten the response time for access to the server 7.

また、この実施の形態においては、優先度制御手段が、サービス名、利用者ID、実際に用いた負荷分散レベル、および実際に用いた優先度をアクセス情報としてアクセスIDに関連付けて登録しておき、アクセス履歴管理部19が、サーバ7にアクセスした日時に対応づけて当該アクセス情報をアクセス履歴DB20に登録するようにしているため、サービス呼び出し実施の情報と、その際に利用した負荷分散レベルおよび優先度の情報などの履歴を管理することが可能となり、課金管理などを容易にすることができる。   In this embodiment, the priority control means registers the service name, user ID, actually used load distribution level, and actually used priority in association with the access ID as access information. Since the access history management unit 19 registers the access information in the access history DB 20 in association with the date and time when the server 7 is accessed, the service call execution information, the load distribution level used at that time, and It is possible to manage the history of priority information and the like, facilitating billing management and the like.

以上のように、本発明にかかるアクセス制御装置は、Webサービスを提供するサーバへのアクセス制御に有用であり、特に、サービスを利用するユーザ数が多いシステムに適している。   As described above, the access control apparatus according to the present invention is useful for controlling access to a server that provides a Web service, and is particularly suitable for a system having a large number of users who use the service.

この発明におけるアクセス制御装置が適用されるネットワークシステムの構成の一例を示す図である。It is a figure which shows an example of a structure of the network system to which the access control apparatus in this invention is applied. 図1に示したサービスインタフェース定義DBに登録される登録項目を示す図である。It is a figure which shows the registration item registered into the service interface definition DB shown in FIG. 図1に示した負荷分散定義DBに登録される登録項目を示す図である。It is a figure which shows the registration item registered into load distribution definition DB shown in FIG. 図1に示したサービス配備情報DBに登録される登録項目を示す図である。It is a figure which shows the registration item registered into service deployment information DB shown in FIG. 図1に示した優先度定義DBに登録される登録項目を示す図である。It is a figure which shows the registration item registered into the priority definition DB shown in FIG. 図1に示したアクセス履歴DBに登録される登録項目を示す図である。It is a figure which shows the registration item registered into access history DB shown in FIG. この発明におけるアクセス制御装置が適用されるネットワークシステムの動作を説明するためのシーケンス図である。It is a sequence diagram for demonstrating operation | movement of the network system to which the access control apparatus in this invention is applied. アクセス制御装置が実行するサービスインタフェース情報取得処理の詳細な動作を説明するためのフローチャートである。It is a flowchart for demonstrating the detailed operation | movement of the service interface information acquisition process which an access control apparatus performs. アクセス制御装置が実行するアクセス制御処理の詳細な動作を説明するためのフローチャートである。It is a flowchart for demonstrating the detailed operation | movement of the access control process which an access control apparatus performs.

符号の説明Explanation of symbols

1 アクセス制御装置
3−1,3−2,3−3 クライアント
5 ネットワーク
7−1,7−2,7−3 サーバ
11 サービスインタフェース定義DB
12 サービスインタフェース部
13 負荷分散定義DB
14 サービス配備情報DB
15 優先度定義DB
16 アクセス制御部
17 アクセスキュー
18 実サービス呼び出し部
161 負荷分散制御部
162 優先度制御部
163 サーバ負荷監視部
DESCRIPTION OF SYMBOLS 1 Access control apparatus 3-1, 3-2, 3-3 Client 5 Network 7-1, 7-2, 7-3 Server 11 Service interface definition DB
12 Service Interface 13 Load Balancing Definition DB
14 Service deployment information DB
15 Priority definition DB
16 Access Control Unit 17 Access Queue 18 Real Service Calling Unit 161 Load Distribution Control Unit 162 Priority Control Unit 163 Server Load Monitoring Unit

Claims (4)

少なくとも1つのサービスに関するデータを保持する複数のサーバに接続されるとともに、該サーバにアクセスしてサービスを要求するクライアントとネットワークを介して接続され、前記クライアントから要求されたサービスを提供する複数のサーバの中から1つのサーバを選択し、選択したサーバから要求されたサービスに関するデータを取得して前記クライアントに送信するアクセス制御装置であって、
前記サーバ毎に対応付けられ当該サーバへのアクセス待ちを登録するキューを有するアクセスキューと、
前記サーバが保持するサービス名サービスを利用する利用者を識別するための利用者ID、および時間帯対応したサーバへの負荷分散の度を示す負荷分散レベルが登録される負荷分散定義データベース前記サービス名および前記負荷分散レベルに対応してアクセス可能なサーバ名が登録されるサービス配備情報データベース、前記サービス名、前記利用者ID、および前記時間帯に対応した前記優先度が登録される優先度定義データベースを記憶する記憶手段と、
クライアントから受信したサービス呼び出し要求に含まれるサービス名利用者ID、および現在時刻に基づいて、前負荷分散定義データベースから負荷分散レベルを決定し、前記サービス配備情報データベースから前記サービス呼び出し要求に含まれるサービス名に対応しかつ前記決定された負荷分散レベル以下の負荷分散レベルに対応するアクセス可能なサーバの候補を選択する負荷分散制御手段と、
前記負荷分散制御手段によって選択されたサーバの候補が複数である場合には、最も負荷状況の低いサーバを選択するサーバ負荷監視手段と、
前記サービス呼び出し要求に含まれるサービス名、利用者ID、及び前記現在時刻に基づいて、前記優先度定義データベースから優先度を選択し、前記サーバ負荷監視手段が選択したサーバに対応するキューに登録されたアクセス待ちの中で、当該選択された優先度よりも低い優先度でありかつアクセス待ちが所定の待ち時間の上限値以下のアクセス待ちの前に前記サービス呼び出し要求によるアクセス待ちを挿入する優先度制御手段と、
を備えることを特徴とするアクセス制御装置。
A plurality of servers that are connected to a plurality of servers that hold data related to at least one service, and that are connected to a client that accesses the server and requests a service via a network, and that provide the service requested by the client An access control device that selects one server from among the servers, acquires data related to the requested service from the selected server, and transmits the data to the client;
An access queue having a queue that is associated with each server and registers waiting for access to the server;
User ID, and load balancing definition database load distribution level is registered that indicates the extent of the load distribution to the server that corresponds to the time zone to identify the service name, the user to use the service by the server holds , service deployment information database in which the service name and correspondingly accessible server name to the load distribution level is registered, the service name, the user ID, and the priority corresponding to the time zone is registered Storage means for storing a priority definition database ;
Service name included in the service call request received from the client, based on the user ID, and the current time, before Symbol load distribution level determined from the load balancing application databases included from the service deployment information database to the service call request Load balancing control means for selecting an accessible server candidate corresponding to a service name and a load balancing level equal to or lower than the determined load balancing level ;
If the candidate server selected by the load balancing control means is plural, and the server load monitoring means you select the lowest load status server,
Based on the service name, user ID, and current time included in the service call request, the priority is selected from the priority definition database, and the server load monitoring unit registers the queue in the queue corresponding to the selected server. Priority of inserting an access wait due to the service call request before waiting for an access that is lower than the selected priority and the access wait is equal to or lower than the upper limit value of the predetermined wait time. Control means;
An access control device comprising:
前記記憶手段は、サービス名に対応して当該サービス名のサービスのデータが格納されているURLであるサービスURLおよびアクセスに必要な情報が記載されたファイルの名前であるインタフェース定義ファイル名が登録されるサービスインタフェース定義データベースを記憶し、
前記クライアントからのサービスインタフェース情報取得要求に含まれるサービス名および前記サービスインタフェース定義データベースに基づいて、要求されたサービスのサービスURLおよびインタフェース定義ファイル名をクライアントに通知するサービスインタフェース手段と、
前記アクセスキューの各キューに登録されているアクセス待ちを順に読み出して当該サーバからサービスに必要なデータを取得してクライアントに送信する実サービス呼び出し手段と、
を備えることを特徴とする請求項に記載のアクセス制御装置。
In the storage means , a service URL that is a URL storing service data of the service name corresponding to the service name and an interface definition file name that is a name of a file in which information necessary for access is described are registered. Store the service interface definition database
Service interface means for notifying the client of the service URL and interface definition file name of the requested service based on the service name included in the service interface information acquisition request from the client and the service interface definition database;
An actual service calling means for sequentially reading out the access waiting registered in each queue of the access queue, obtaining data necessary for the service from the server, and transmitting the data to the client;
The access control apparatus according to claim 1 , further comprising:
前記サーバ負荷監視手段、または前記優先度制御手段は、
前記アクセスキューのキューにアクセス待ちを登録する際に、当該アクセス待ちに関連付けてアクセス情報を登録し、
前記アクセス情報を前記記憶手段にアクセス履歴データベースとして記憶させるアクセス履歴管理手段、
をさらに備えることを特徴とする請求項1または2に記載のアクセス制御装置。
The server load monitoring means, or the priority control means,
When registering access waiting in the queue of the access queue, register access information in association with the access waiting,
Access history management means for storing the access information in the storage means as an access history database;
Access control device according to claim 1 or 2, further comprising a.
前記アクセス情報を、サービス呼び出し要求に含まれる前記サービス名および利用者ID、決定された前記負荷分散レベル、および選択された前記優先度とし、
前記アクセス履歴管理手段は、
前記サーバにアクセスした日時に対応付けて前記アクセス情報を前記アクセス履歴データベースに登録すること、
を特徴とする請求項に記載のアクセス制御装置。
The access information is the service name and user ID included in the service call request , the determined load distribution level, and the selected priority.
The access history management means includes
Registering the access information in the access history database in association with the date and time of accessing the server;
The access control apparatus according to claim 3 .
JP2007104035A 2007-04-11 2007-04-11 Access control device Expired - Fee Related JP4812680B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007104035A JP4812680B2 (en) 2007-04-11 2007-04-11 Access control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007104035A JP4812680B2 (en) 2007-04-11 2007-04-11 Access control device

Publications (2)

Publication Number Publication Date
JP2008262351A JP2008262351A (en) 2008-10-30
JP4812680B2 true JP4812680B2 (en) 2011-11-09

Family

ID=39984785

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007104035A Expired - Fee Related JP4812680B2 (en) 2007-04-11 2007-04-11 Access control device

Country Status (1)

Country Link
JP (1) JP4812680B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5669433B2 (en) * 2010-05-06 2015-02-12 キヤノン株式会社 Component coupling device and component coupling method
JP5662129B2 (en) * 2010-12-16 2015-01-28 株式会社日立システムズ Session management system and method
JP5870635B2 (en) * 2011-11-09 2016-03-01 富士ゼロックス株式会社 Processing request execution management apparatus and program
JP5955385B2 (en) * 2012-06-12 2016-07-20 三菱電機株式会社 Information processing system
JP5801269B2 (en) * 2012-09-14 2015-10-28 株式会社 日立産業制御ソリューションズ Medical device control system and medical device control server
JP5866554B1 (en) * 2014-10-21 2016-02-17 パナソニックIpマネジメント株式会社 GAME SYSTEM, MANAGEMENT DEVICE, AND READER / WRITER DEVICE
WO2023032103A1 (en) * 2021-09-01 2023-03-09 楽天モバイル株式会社 Job control system and job control method
CN114003175B (en) * 2021-11-02 2024-02-06 青岛海信日立空调系统有限公司 Air conditioner and control system thereof
CN114553806B (en) * 2022-02-21 2023-09-05 深圳平安智慧医健科技有限公司 Optimization method, device and equipment for instant messaging and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05197574A (en) * 1992-01-21 1993-08-06 Matsushita Electric Ind Co Ltd Task time waiting controller
JPH07271736A (en) * 1994-03-29 1995-10-20 Mitsubishi Heavy Ind Ltd Multiprocessor system
JP2002358135A (en) * 2001-06-04 2002-12-13 Mitsubishi Electric Corp Device and method for managing software use, program for allowing computer to perform its method and computer readable recording medium with its program recorded
JP2005182641A (en) * 2003-12-22 2005-07-07 Hitachi Information Systems Ltd Dynamic load distribution system and dynamic load distribution method
JP2006099162A (en) * 2004-09-28 2006-04-13 Hitachi Software Eng Co Ltd Operation and management system and program for business web system based on service-oriented architecture
JP4121132B2 (en) * 2005-01-04 2008-07-23 インターナショナル・ビジネス・マシーンズ・コーポレーション Service processing allocation apparatus, control method, and program

Also Published As

Publication number Publication date
JP2008262351A (en) 2008-10-30

Similar Documents

Publication Publication Date Title
JP4812680B2 (en) Access control device
CN100462957C (en) Information route method and system based on secret strategy
JP5582344B2 (en) Connection management system and connection management server linkage method in thin client system
US6415284B1 (en) Intelligent forms for improved automated workflow processing
JP4729172B2 (en) Method and apparatus for performing transactions in a stateless web environment that supports a declarative paradigm
US8286157B2 (en) Method, system and program product for managing applications in a shared computer infrastructure
EP1594035B1 (en) Apparatus and method for providing authentication information
CN100487689C (en) Holder selector used in global network service structure and its selection method
EP1753195A1 (en) Server computer, client device and web service implemented data processing method
JP2010026653A (en) Data access control method, data access control apparatus, and program
CN103038788A (en) Provisioning multiple network resources
CN102164169A (en) Cloud computing system and printing system control method
CN101686173A (en) Method, system and apparatus of service negotiation
JP2011034462A (en) Information processor and processing method thereof
JP2005078525A (en) Retrieval method and search engine
JPWO2009101755A1 (en) Personal information distribution control system and personal information distribution control method
JP5817728B2 (en) Condition matching system, condition matching link device, and condition matching processing method
CN115150391B (en) File transmission method and device, electronic equipment and readable storage medium
JP2009223593A (en) Translator selection method, translator selection program and translator selection server
JP2009199481A (en) Processing control system, server and processing control program
KR100947114B1 (en) Method for collecting quality data of web service using dummy message
JP2000047890A (en) Distributed object managing system, its object selecting method and storage medium recording its processing program
US20040006629A1 (en) User information managing method, application distributing method, user information managing server, application distributing server, user information managing program, and application distributing program
KR101146742B1 (en) METHOD OF DISTRIBUTED SESSION MANAGEMENT IN SaaS AND SESSION MANAGEMENT SYSTEM THEROF
JP2013254352A (en) Management device, management system and management program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101102

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101227

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140902

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

LAPS Cancellation because of no payment of annual fees