JP3736680B2 - Access control apparatus and computer program - Google Patents

Access control apparatus and computer program Download PDF

Info

Publication number
JP3736680B2
JP3736680B2 JP2002044102A JP2002044102A JP3736680B2 JP 3736680 B2 JP3736680 B2 JP 3736680B2 JP 2002044102 A JP2002044102 A JP 2002044102A JP 2002044102 A JP2002044102 A JP 2002044102A JP 3736680 B2 JP3736680 B2 JP 3736680B2
Authority
JP
Japan
Prior art keywords
access
user
web server
priority
order
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
JP2002044102A
Other languages
Japanese (ja)
Other versions
JP2003242110A (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.)
NTT Data Group Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2002044102A priority Critical patent/JP3736680B2/en
Publication of JP2003242110A publication Critical patent/JP2003242110A/en
Application granted granted Critical
Publication of JP3736680B2 publication Critical patent/JP3736680B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、Webサーバに対するユーザのアクセスを制御する技術に関する。
【0002】
【従来の技術】
インターネットが発達した今日では、Webサーバ上で様々なコンテンツなどの提供が行われている。
このようなWebサーバが提供するコンテンツなどによっては、特定のWebサーバに対してユーザのアクセスが集中してしまうため、負荷分散装置を設けることが行われている。そして、この負荷分散装置によりWebサーバへのアクセス数を監視し、このWebサーバへのアクセス許容量を超えた場合には、アクセスしたユーザに対して混雑しているためしばらく待ってからアクセスをするよう通知し、アクセスの集中によるWebサーバのダウン等を防止している。
【0003】
【発明が解決しようとする課題】
しかし、Webサーバに対してアクセスするユーザは、サーバの負荷状態や故障状態が、どの程度のもので、それがいつ解消されるのか全く分からなかったため、いつになったらWebサーバにアクセスできるか分からず、ユーザに無用な苛立ちを与えてしまっていた。
また、多くのユーザは、例えば、「ただいま混雑中」というメッセージが返された場合、再読み込み(リロード)を行うが、これが何回も繰り返されると、いわゆるDoS攻撃のようなアクセス状態を生み、結果としてさらなる高負荷状態が引き起こされ、場合によってはシステムダウンを引き起こしてしまうといった問題があった。
【0004】
また、従来のWebサーバは、優良顧客か否かにかかわらず、全て同じ条件でユーザを扱っていたため、たとえ優良顧客であっても他のユーザ同様、長時間Webサーバにアクセスできない状態が続いてしまうことがあった。そのため、例えば、EC(Electronic Commerce)サイトなどでは、当該Webサイトにアクセスできない状態が続くと、ユーザが他のECサイトに移ってしまい、優良顧客を失ってしまう原因になるという問題があった。
【0005】
また、例えば、人気ゲームやコンサートのチケット予約、災害や緊急事態における安否確認等のWebサーバなどでは、一時期に集中したアクセスがなされる場合があり、このようアクセス集中によるシステムダウンを未然に防止する必要性が高まっている。
【0006】
本発明は、上述の問題点を解決するためになされたものであって、効率的にユーザがWebサーバにアクセスできるようにすることを課題とする。
【0007】
上記課題を解決するため、本発明にかかるアクセス制御装置は、所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、上記アクセス割当手段は、上記Webサーバに対してアクセスできる空き時間を予め所定の間隔で設定しておき、所定の優先度を有するユーザからアクセス要求があった場合には、当該ユーザを上記空き時間に割り当てることを特徴とする。
これにより優先度の高いユーザが、優先してWebサーバにアクセスすることができ、ユーザの優先度に応じた適切なサービス提供を行うことができる。
【0009】
所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、上記アクセス割当手段は、同じユーザから複数回のアクセス要求があった場合には、上記ユーザから先になされたアクセス要求に基づいて割り当てたアクセス順序を無効とすることを特徴とする。
これにより、ユーザはリロードする度にアクセスできる順番が遅くなるという不利を受けるため、ユーザのリロードの繰り返しによるWebサーバへの高負荷状態の発生、継続を防止できるようにしてもよい。
【0010】
所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、上記アクセス割当手段は、同じユーザから複数回のアクセス要求があった場合には、上記ユーザ情報記憶手段のユーザの優先度を参照して、予め決められた所定の優先度よりも高い優先度を有するユーザである場合には、当該ユーザに前回割り当てたアクセス順序よりも早いアクセス順序を割り当てることを特徴とする。
これにより、所定の優先度よりも優先度が高いユーザは、優先的にWebサーバに対してアクセスすることができるようになり、例えば、優良顧客等に対する優遇サービスを提供することができる。
【0011】
また、上記アクセス割当手段は、上記Webサーバへのアクセスが可能となる時間を推計し、当該推計した時間情報を上記ユーザに対して通知するように、所定の通知手段に対して指示してもよい。
これにより、ユーザはWebサーバにアクセスできる時間を予測することができ、いつWebサーバにアクセスできるか分からないというユーザの不満、不安などを和らげることができる。
【0012】
上記Webサーバに対してアクセスできなかった原因を表す障害原因情報と、障害原因ごとのアクセスできなかったアクセス不可時間情報とを含むアクセス履歴情報を記憶するアクセス履歴情報記憶手段とアクセス履歴情報記憶手段を参照して、Webサーバへアクセスができなかった原因を表す障害原因情報と、障害原因情報ごとのアクセスできなかったアクセス不可時間情報とを含むアクセス統計情報を作成するアクセス統計算出手段を更に有し、上記アクセス割当手段は、上記アクセス統計算出手段が算出した障害原因情報に基づいて、上記Webサーバへアクセスが可能となる時間を推計するようにしてもよい。
これにより、統計的データに基づいてアクセス可能となる時間を推計することができる。
【0013】
上記アクセス統計算出手段は、所定時間内に同じ障害原因に基づいてアクセスができなかった状態が発生していたアクセス履歴情報がある場合には、これらアクセスできなかった時間を合算した時間を、上記Webサーバへアクセスできなかった時間とするようにしてもよい。
これにより、断続的に障害原因が発生した場合であっても、これを継続した一つの障害発生として取り扱うことができる。
【0014】
上記アクセス割当手段は、上記Webサーバに対する、曜日ごとのアクセス障害原因の継続時間、又は所定の時間帯ごとのアクセス障害原因の継続時間のいずれかに基づいて、上記Webサーバへアクセスが可能となる時間を推計するようにしてもよい。
これにより、より的確にWebサーバへアクセスが可能となる日時を予測することができる。
【0016】
本発明にかかるコンピュータプログラムは、コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、上記コンピュータに対して、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、上記Webサーバへのアクセス順序を割り当てたユーザのうち、所定の優先度を有するユーザからのアクセス要求を、予め設定された上記Webサーバに対してアクセスできる空き時間に割り当てる処理とを実行させることを特徴とする。
また、本発明の別の観点にかかるコンピュータプログラムは、コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、上記コンピュータに対して、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、上記割り当てたユーザのうち、同じユーザから複数回のアクセス要求があった場合には、上記ユーザから先になされたアクセス要求に基づいて割り当てたアクセス順序を無効とする処理とを実行させることを特徴とする。
また、本発明の更に別の観点にかかるコンピュータプログラムは、コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、上記コンピュータに対して、上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、上記割り当てたユーザのうち、同じユーザから複数回のアクセス要求があった場合には、上記ユーザ情報記憶手段のユーザの優先度を参照して、所定の優先度よりも高い優先度を有するユーザである場合には、当該ユーザに前回割り当てたアクセス順序よりも早いアクセス順序を割り当てる処理とを実行させることを特徴とする。
【0017】
【発明の実施の形態】
以下、図面を参照して、本発明にかかる実施形態について説明する。
図1に本発明にかかるアクセス制御装置を利用したシステムの一実施形態を示す。
図1において、本実施形態では、インターネットにより、ユーザ端末4が、負荷分散装置2及びソーリーサーバ1を介して、Webサーバ3に接続できるようになっている。
【0018】
ユーザ端末4は、Webサーバ3等へアクセスするユーザが使用する端末である。このユーザ端末4は、コンピュータにより構成され、所定のブラウザによりインターネットに接続可能となっており、これによりWebサーバ3が提供するWebサイトにアクセスできるようになっている。
Webサーバ3は、コンピュータにより構成さており、所定のコンテンツ等をユーザに発信するWebサイトを提供するサーバである。このWebサーバ3は、例えば、ショッピングサイトや、またチケットなどの予約を受付るサイト、緊急災害時の安否情報を受付るサイトをインターネット上で提供してもよく、提供するコンテンツについては任意である。
負荷分散装置2は、Webサーバ3に対するユーザからのアクセス数から負荷状態を監視し、所定のアクセス数を超えたときに、ソーリーサーバ1に対して高負荷発生日時、その原因情報等を含む高負荷発生情報を通知することができる。また、負荷分散装置2は、Webサーバ3への時間帯又は曜日に応じたアクセス数を表すアクセスログデータを作成することができる。
【0019】
ソーリーサーバ1は、ユーザが直ちにWebサーバ3にアクセスできないときに、ユーザ端末4に対して所定のメッセージを送信等するサーバである。
このソーリーサーバ1は、コンピュータにより構成され、CPU(Central Processing Unit)、CPUが実行するコンピュータプログラム、RAM、ROMなどの内部メモリ、ハードディスク装置などの外部記憶装置により、図1に示した機能ブロックを構成する。
図1に示した機能ブロックは、ユーザ情報データベース11、アクセス許可順情報データベース12、アクセス統計データベース13、通信制御部14、アクセス統計算出部15、アクセス順登録部16、メッセージ作成部17、アクセス許可判定部18から構成されている。
【0020】
ユーザ情報データベース11は、ユーザに関する情報をデータベース化した記憶部である。
このユーザ情報データベース11には、例えば、図2に示すように、ユーザ名、ユーザの認証情報としてのパスワード、優先度、ユーザのメールアドレスの各情報が記憶できるようになっている。
優先度は、ユーザが各Webサーバ3に対してアクセスする際のユーザの優先順位を表す情報であって、例えば、所定のWebサイトを運営する運営者にとって、当該ユーザがどの程度優良な顧客であるかなどにより決定される。
【0021】
アクセス許可順情報データベース12は、ユーザに対して割り当てられたアクセス順序に基づくアクセス許可時間等の情報をデータベース化した記憶部である。
このアクセス許可順情報データベース12には、例えば、図3に示すように、ユーザ名、当該ユーザの優先度、ユーザがWebサーバ3にアクセスを要求した日時を表すアクセス日時、ユーザに割り当てられたアクセス可能な日時を表すアクセス許可日時の情報を記憶できるようになっている。
【0022】
アクセス統計データベース13は、Webサーバ3に発生した障害情報をデータベース化した記憶部である。
このアクセス統計データベース13には、例えば、図4に示すように、Webサーバ3ごとに、高負荷発生日時、高負荷解除日時、継続時間、種別コードが記憶できるようになっている。
高負荷発生日時は、Webサーバ3に対して高負荷が発生した日時を表し、また、高負荷解除日時は当該高負荷が解消された日時を表し、継続時間は高負荷状態の継続時間を表している。
また、種別コードは、発生した高負荷の障害原因を特定するためのコードである。本実施形態では、例えば、正常な処理がされた場合には「0」、負荷発生時には「1xx」、エラー発生時には「2xx」となっており、下2桁でその原因が特定できるようになっている(例えば、「115」であればデータベースサーバのCPU使用率が100%になったことを表すなど)。
【0023】
通信制御部14は、通信インターフェースを制御して、負荷分散装置2、ユーザ端末4との間で所定のデータの送受信処理を行う。
アクセス統計算出部15は、アクセス統計データベース13を参照し、Webサーバ3に対するアクセス履歴情報から、Webサーバ3へアクセスができなかった障害原因を表す種別コードと、各種別コード(障害原因)ごとのアクセスできなかった時間(アクセス不可時間)とを含むアクセス統計情報を作成する処理を行う。
なお、アクセス統計情報を作成する際、アクセス統計算出部15は、所定時間内に同じ種別コードによるアクセスができなかった状態が発生した時間がある場合には、これらアクセスできなかった時間を合算した時間を、Webサーバ3に対するアクセス不可時間としてもよい。
【0024】
アクセス順登録部16は、Webサーバ3に対して複数のユーザからアクセスがあったときに、ユーザ情報記憶データベース11の各ユーザの優先度情報を参照して、この優先度が高い順に、Webサーバ3へのアクセス許可日時を割り当てる処理を行うことができる。
この場合、例えば、アクセス順登録部16は、予め、Webサーバ3に対するアクセス空時間を所定の間隔で設定しておき、所定の優先度を有するユーザからアクセス要求があった場合には、上述の空時間を当該ユーザのアクセス許可時間とするようにしてもよい。
また、アクセス順登録部16は、同じユーザから繰り返し複数回のアクセス要求があった場合には、ユーザから先になされたアクセス要求に基づいて割り当てたアクセス許可日時を無効として取り扱うようにすることができる。
【0025】
また、アクセス順登録部16は、ユーザがWebサーバ3に対して直ちにアクセスできないときに、Webサーバ3にアクセスできるアクセス許可日時を推計する処理を行う。
この推計処理は、例えば、アクセス順登録部16が、Webサーバ3へアクセスできないアクセス障害原因の種別コードを特定すると共に、当該種別コードに対応する障害の過去における継続時間の平均値などに基づいて推計してもよい。また、例えば、アクセス順登録部16が、Webサーバ3に対する、曜日ごとのアクセス障害原因の継続時間、又は時間帯ごとのアクセス障害原因の継続時間のいずれかに基づいて推計してもよい。
【0026】
メッセージ作成部17は、アクセス順登録部16が決定したユーザのアクセス許可日時等の情報に基づいて、ユーザに対するメッセージ情報を作成する。
このメッセージとしては、例えば、HTML(Hyper Text Markup Language)でユーザの所定の日時になったら再度Webサーバ3にアクセスするように促すメッセージを作成するようにしてもよい。
【0027】
アクセス許可判定部18は、高負荷状態が解消され、Webサーバ3へのアクセスが可能となったときに、ユーザ端末4に対してアクセスができるようになった旨を通知する。この通知は、例えば、アクセス許可判定部18が、ユーザ情報データベース11に記憶されているユーザのメールアドレスに基づいて、電子メールによりWebサーバ3に対するアクセスが可能となった旨を通知してもよい。
また、アクセス許可判定部18は、Webサーバ3へのアクセスが可能となったときに、ユーザ端末4のブラウザ等に指示を行い自動的に所定のWebサーバ3へ接続させるようにしてもよい。
【0028】
次に、本実施形態にかかるアクセス制御方法について、図面を参照して説明する。
まず、Webサーバ3へのアクセスログデータから、アクセス統計情報を作成する際の処理について、図5を参照して説明する。
図5において、アクセス統計算出部15は、通信制御部14を介して、負荷分散装置2からWebサーバ3に対するアクセスログデータを取得する(S11)。
このとき負荷分散装置2から取得するアクセスログデータとしては、例えば、アクセス日時、振り分け先IPアドレス、種別コード、状態の発生・解除を表す状態フラグなどのデータが含まれる。
【0029】
アクセスログデータを取得すると、アクセス統計算出部15は、アクセスログデータのうち、種別コードが「正常」(本実施形態では、種別コード「0」)のレコード以外のレコードを抽出する(S12)。
これにより、Webサーバ3にアクセスする際に、何らかの障害(例えば、負荷発生、エラーなど)が発生し、直ちにWebサーバ3にアクセスできなかった種別コードを含むログデータを抽出する。
【0030】
アクセス統計算出部15は、抽出したログデータのうち、種別コードが同一で、かつ、状態フラグが「発生」と「解除」の一対になっているログデータを未登録ケースデータとして抽出する(S13)。
抽出した未登録ケースデータについて、後述するケース登録処理を行い、未登録ケースデータをアクセス統計データベース13に登録する(S14)。
ケース登録処理が完了すると、アクセス統計算出部15は、ケース登録処理を行っていない未登録ケースデータが存在しないか否か判別する(S15)。
判別の結果、未登録ケースデータが存在する場合には、上述のS13の処理に戻って、上述の処理を繰り返す。
また、判別の結果、未登録ケースデータが存在しない場合には、処理を終了する。
【0031】
次に、上述のケース登録処理について、図6及び図7を参照して説明する。
本実施形態では、図7に模式的に示すように、ケースA、ケースCが既にアクセス統計データベース13に登録されている状態で、それぞれ新たにケースB、ケースDの未登録ケースを登録する場合を例として説明する。なお、図7の「0」が高負荷状態の発生、「1」が高負荷状態の解除を表している。
まず、アクセス統計算出部15は、上述のS13の処理で、未登録ケースデータから1レコード(図7の例では、ケースB又はケースD)を抽出する(S21)。
アクセス統計算出部15は、アクセス統計データベース13内に、抽出した未登録ケースデータと種別コードが同一で、かつ、高負荷発生日時とその解消日時との差が所定時間内のものがあるか判別する(S22)。
【0032】
判別の結果、アクセス統計データベース13内に、該当するレコードが存在すると判別された場合には、アクセス統計算出部15は、アクセス統計データベース13上の該当レコードの高負荷解消日時を未登録ケースの高負荷解消日時に更新する(S23)。
図7の例では、ケースBに対してケースAの高負荷開始日時が所定時間(例えば、5分間)内であるため、ケースAが該当するレコードと判別され、ケースAの高負荷解消日時がケースBの高負荷解消日時に更新される。
【0033】
また、アクセス統計算出部15は、該当レコードの高負荷発生日時と高負荷解消日時(図7の例では、ケースAの高負荷発生日時とケースBの高負荷解除日時)の差を計算し、継続時間を算出する(S24)。
そして、アクセス統計算出部15は、算出した継続時間に基づいて、アクセス統計データベース13の継続時間を更新し(S25)、処理を終了する。
【0034】
また、上述のS22の処理で、該当するレコードが存在していないと判別された場合には、この未登録ケース(図7の例では、所定時間の5分を超過しているケースD)をアクセス統計データベース13に追加記憶して(S26)、処理を終了する。
【0035】
次に、Webサーバ3に対して直ちにアクセスできない場合の処理について、図8を参照して説明する。
図8において、Webサーバ3が高負荷状態となり負荷分散装置2から高負荷発生情報が通知されると、アクセス順登録部16は、負荷分散装置2から通知された高負荷発生日時と高負荷発生の種別コードを取得する(S31)。
アクセス順登録部16は、ユーザからのアクセス要求を受信すると、当該アクセス要求に含まれる当該ユーザのユーザ名と、アクセス日時を特定する(S32)。
【0036】
アクセス順登録部16は、ユーザ情報データベース11を参照して、当該ユーザの優先度を抽出する(S33)。
また、アクセス順登録部16は、アクセス統計データベース13を参照して、高負荷状態が解除される日時を推計する(S34)。
この推計処理としては、例えば、アクセス順登録部16が、アクセス統計データベース13に記憶されている今回発生したと同じ種別コードの継続時間の平均値に基づいて高負荷状態が解除される時間を推計してもよい。また、アクセス順登録部16が、アクセス統計データベース13に記憶されている同じ時間帯或いは曜日に発生した同じ障害の種別コードの継続時間の平均値などから高負荷が解除される時間を推計してもよい。
【0037】
また、アクセス順登録部16は、アクセス許可順情報データベース12に、当該ユーザのレコードが既にあるか否かを判別する(S35)。
判別の結果、アクセス許可順情報データベース12に既に同じユーザのレコードがある場合には、当該ユーザがリロードしてアクセスを繰り返しているものとして、アクセス許可順情報データベース12に先に記憶されている当該ユーザのアクセス許可日時を削除して、無効とする(S36)。
【0038】
上述のS36の処理でレコードを削除した後、あるいは上述のS35の処理で当該ユーザのレコードがないと判別された場合には、アクセス順登録部16は、アクセス日時と当該ユーザの優先度に応じて、当該ユーザに対するWebサーバ3のアクセス許可日時を算出する(S37)。
この処理としては、例えば、図10に模式的に示すように、あらかじめ所定間隔で空き時間を確保しておき、所定の優先度以上のユーザがアクセスしていた場合に、当該空き時間に割り当てるようにしてもよい。また、既にアクセス許可日時が設定されているユーザ(例えば、ユーザB、ユーザC)が存在する場合には、例えば、既に設定されたユーザよりも優先度が高いユーザ(例えば、ユーザA)を、それより前の空き時間に割り当てるようにしてもよく、この割当についてはユーザの優先度やアクセス日時に応じて適切な方法を用いてもよい。
【0039】
割当が完了すると、アクセス順登録部16は、アクセス許可順情報データベース12に、当該ユーザ名及び優先度、アクセス日時、割り当てられたアクセス許可日時の各情報を追加して記憶する(S38)。
【0040】
引き続き、図9において、メッセージ作成部17は、アクセス順登録部16から、アクセス許可日時が割り当てたユーザ名、アクセス日時、アクセス許可日時を取得し(S39)、該当ユーザ名、アクセス日時、アクセス許可日時から、ユーザに対する待機依頼情報を作成する(S40)。
この待機依頼情報の一例を図11に示す。図11に示すように、ユーザに対する待機依頼情報としては、例えば、何分くらい待てばよいのか、そしてWebサイトによっては、アクセス許可判定部18がユーザの順番になったらメールを発信する仮受付を行い、図12に示すように仮受付番号を通知するようにしてもよい。
そして、メッセージ作成部17が通信制御部14を介して、生成した待機依頼情報をユーザ端末4に対して通知して(S41)、処理を終了する。
【0041】
次に、高負荷状態が解消した際の処理について、図13を参照して説明する。
図13において、アクセス許可判定部18は、負荷分散装置2から高負荷状態が解除された旨の通知があったか否かの判別処理を、この通知があるまで繰り返す(S51)。
この状態で、負荷分散装置2から高負荷状態が解除された旨の通知を受信すると(S52)、アクセス許可判定部18は、アクセス許可データベース13を参照して、アクセス許可日時が既に経過しているレコードがあるか否か判別する(S53)。
【0042】
判別の結果、アクセス許可日時を経過しているレコードがない場合には、アクセス許可判定部18はアクセスを許可すべきレコードがないものとして、処理を終了する。
また、アクセス許可日時を過ぎているレコードがある場合には、アクセス許可判定部18は、アクセス許可順情報データベース12に記憶されているアクセス許可日時に従い、例えば、図14に示すような、所定のWebサイトへアクセスするためのURL等を含むアクセス許可通知を、電子メールによりユーザへ通知して(S54)、処理を終了する。
【0043】
このように、上述の実施形態によれば、アクセス順登録部16が優先順位が高いユーザに対しては、優先的にアクセス順序を割り当てるようにしたことから、優先度が高いユーザを優遇することができる。これにより、例えば、優良顧客などを優先してWebサーバ3に接続させてサービスを提供できるようになり、優良顧客を長時間にわたって待たせることなく、迅速に所望のWebサーバ3へアクセスさせ、サービスを提供することができるようになる。
【0044】
また、アクセス順登録部16は、同じユーザから複数回のアクセス要求があった場合には、ユーザから先になされたアクセス要求をすべて無効として削除するようにしたことから、リロードする度にユーザのアクセス順序が遅れ、ユーザに不利な条件となることから、ユーザがリロードを繰り返すことにより、Webサーバ3に負荷をかけることを防止できる。
【0045】
また、ユーザがWebサーバ3に対して直ちにアクセスできないときに、アクセス順登録部16が、Webサーバ3へのアクセスが可能となる日時を推計してユーザに通知するようにしたことから、ユーザとしては、いつWebサーバ3にアクセスできるのか、いつまで待てばよいのかを把握することができる。これにより、いつWebサーバ3にアクセスできるか分からないというユーザの不満、不安感、不信感などを払拭することができる。
【0046】
また、アクセス順登録部16が、アクセス可能日時をする際、アクセス統計データベース13に記憶されている過去の実績情報に基づいてアクセス可能日時を推計するようにしたことから、アクセス可能日時を過去の実績に基づいて適切に推計することができる。
【0047】
また、アクセス順登録部16が、曜日ごとの高負荷状態の継続時間、又は時間帯ごとの高負荷状態の継続時間のいずれかに基づいて、Webサーバ3へアクセス可能となる時間を推計するようにすれば、各曜日や時間帯毎にWebサーバ3へアクセス可能となる時間を適切に推計することができる。
【0048】
また、アクセス許可判定部18が、Webサーバ3へのアクセスが可能となったときに、ユーザに対してアクセスができるようになった旨を通知するようにしたことから、ユーザはWebサーバ3に対してアクセスができるようになったことをタイムリーに知ることができる。
なお、アクセス許可判定部18が、Webサーバ3へのアクセスが可能となったときに、ユーザを上記Webサーバ3へアクセスさせるようにしてもよい。これにより、ユーザは特別な処理をしなくとも、自動的に所望のWebサーバ3にアクセスすることができる。
【0049】
アクセス統計算出部15が、Webサーバ3に対するアクセス履歴情報から、Webサーバ3へアクセスできなかった原因を表す種別コードと、各種別コードごとのアクセスできなかった継続時間情報とを含むアクセス統計情報を作成し、アクセス順登録部16が、アクセス統計情報の種別コードに基づいて、Webサーバ3へアクセスが可能となる時間を推計するようにしたことから、各種別コード毎に適切な時間を推計することができる。
【0050】
アクセス統計算出部15は、所定時間内に同じ原因に基づいてアクセスができなかった状態が発生していたアクセス履歴情報がある場合には、これらアクセス不可時間を合算した時間を、アクセスできなかった時間情報としたことから、ある障害が断続的に発生している場合にも、Webサーバ3にアクセスできない状態とみなして取り扱うことができる。
【0051】
なお、上述の実施形態では、同じユーザから複数回アクセス要求があった場合には、先に割り当てたアクセス順序を無効にする例について説明したが、これに代えて、例えば、アクセス順登録部16が、同じユーザから複数回のアクセス要求があった場合に、ユーザ情報データベース11に記憶されているユーザの優先度を参照して、所定の優先度よりも高い優先度を有するユーザである場合には、当該ユーザに前回割り当てたアクセス順序よりも早いアクセス順序を割り当てるようにしてもよい。これにより、所定の優先度よりも優先度が高いユーザは、優先的にWebサーバ3に対してアクセスすることができるようになり、例えば、優良顧客等に対する優遇サービスを提供することができる。
【0052】
本実施形態にかかるソーリーサーバ1は、専用装置であってもよいし、また、汎用のコンピュータとコンピュータプログラムを用いて実現してもよい。汎用のコンピュータを利用して実現する場合には、例えば、汎用のコンピュータに対して上述の動作を実行するためのコンピュータプログラムやこれを格納したコンピュータ読み取り可能な媒体(FD、CD−ROM等)からコンピュータプログラムをインストールすることにより上述の処理を実行する各装置を構成するようにしてもよい。なお、上述の機能をOS(Operating System)が分担又はOSとアプリケーションプログラムの共同により実現する場合等には、OS以外の部分のみをコンピュータプログラムとして、またこのコンピュータプログラムをコンピュータ読み取り可能な媒体に格納してもよい。
【0053】
また、ソーリーサーバ1用の各コンピュータプログラムを搬送波に重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワークの掲示板(BBS)に当該プログラムを掲示し、これをネットワークを介して配信するようにしてもよい。そして、このコンピュータプログラムを起動し、OS制御下で他のアプリケーションプログラムと同様に実行させることにより上述の処理を実行させるようにしてもよい。
【0054】
【発明の効果】
本発明によれば、効率的にユーザがWebサーバにアクセスすることができる。
【図面の簡単な説明】
【図1】 本発明にかかる一実施形態の全体構成を示した概念図。
【図2】 本実施形態にかかるユーザ情報データベースに記憶されるデータの例を示した図。
【図3】 本実施形態にかかるアクセス許可順情報データベースに記憶されるデータの例を示した図。
【図4】 本実施形態にかかるアクセス統計データベースに記憶されるデータの例を示した図。
【図5】 本実施形態にかかるアクセス統計情報を作成する際の処理の流れを示した処理フロー。
【図6】 本実施形態にかかるケース登録処理の流れを示した処理フロー。
【図7】 本実施形態にかかるケース登録処理の一例を示した模式図。
【図8】 本実施形態にかかるWebサーバに対するアクセス数が所定量を超えた場合の処理の流れを示した処理フロー。
【図9】 本実施形態にかかるWebサーバに対するアクセス数が所定量を超えた場合の処理の流れを示した別の処理フロー。
【図10】 本実施形態にかかるアクセス許可日時を決定する際の一例を示した模式図。
【図11】 本実施形態にかかるユーザに対する待機依頼メッセージの一例を示した図。
【図12】 本実施形態にかかるユーザに対する待機依頼メッセージの別の例を示した図。
【図13】 本実施形態にかかるWebサーバに対する高負荷状態が解除された際の処理を示した処理フロー。
【図14】 本実施形態にかかるユーザに対してWebページへのアクセスが可能となったことを通知する際の一例を示した図。
【符号の説明】
1 ソーリーサーバ
2 負荷分散装置
3 Webサーバ
4 ユーザ端末
11 ユーザ情報データベース
12 アクセス許可順情報データベース
13 アクセス統計データベース
14 通信制御部
15 アクセス統計算出部
16 アクセス順登録部
17 メッセージ作成部
18 アクセス許可判定部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for controlling user access to a Web server.
[0002]
[Prior art]
Today, with the development of the Internet, various contents are provided on a Web server.
Depending on the content provided by such a Web server, the user's access concentrates on a specific Web server, so that a load distribution device is provided. The load balancer monitors the number of accesses to the Web server, and if it exceeds the allowable amount of access to the Web server, the user who has accessed the network is congested and waits for a while before accessing. To prevent the Web server from going down due to concentration of access.
[0003]
[Problems to be solved by the invention]
However, since the user who accesses the Web server has no idea what the load state or failure state of the server is and when it will be resolved, it is not possible to know when the Web server can be accessed. It was causing unnecessary irritation to users.
In addition, many users, for example, when a message “currently busy” is returned, reload (reload), but if this is repeated many times, an access state like a so-called DoS attack occurs, As a result, there is a problem that a further high load state is caused, and in some cases, the system is down.
[0004]
In addition, since the conventional web server handles users under the same conditions regardless of whether or not it is a good customer, even if it is a good customer, it continues to be inaccessible to the web server for a long time like other users. There was a case. For this reason, for example, in an EC (Electronic Commerce) site or the like, if the state in which the Web site cannot be accessed continues, there is a problem that the user moves to another EC site and causes a loss of good customers.
[0005]
In addition, for example, in the case of a popular game or concert ticket reservation, a Web server for confirming safety in a disaster or emergency, etc., there is a case where access is concentrated at one time, and thus system down due to access concentration is prevented in advance. There is a growing need.
[0006]
The present invention has been made to solve the above-described problems, and an object of the present invention is to enable a user to efficiently access a Web server.
[0007]
In order to solve the above problems, an access control apparatus according to the present invention is an apparatus that controls access to the Web server when a plurality of users access the predetermined Web server. User information storage means for storing priority information indicating the priority order of each user when accessing the server, and when the user cannot immediately access the Web server ,Up Access allocation means for allocating the access order to the Web server in descending order of priority set for the user with reference to the priority information of the user information storage means. A free time for accessing the server is set in advance at predetermined intervals, and when there is an access request from a user having a predetermined priority, the user is assigned to the free time.
Thereby, a user with high priority can access the Web server with priority, and can provide an appropriate service according to the priority of the user.
[0009]
A device that controls access to the Web server when a predetermined Web server is accessed by a plurality of users, and represents the priority of each user when accessing the Web server User information storage means for storing information and when the user cannot immediately access the Web server ,Up Access allocation means for allocating the access order to the Web server in descending order of priority set for the user with reference to the priority information in the user information storage means. When there are multiple access requests, the access order assigned based on the access request previously made by the user is invalidated.
Accordingly, since the user is disadvantageous in that the order of access is delayed each time reloading may be performed, it may be possible to prevent occurrence or continuation of a high load state on the Web server due to repeated reloading by the user.
[0010]
A device that controls access to the Web server when a predetermined Web server is accessed by a plurality of users, and represents the priority of each user when accessing the Web server User information storage means for storing information and when the user cannot immediately access the Web server ,Up Access allocation means for allocating the access order to the Web server in descending order of priority set for the user with reference to the priority information in the user information storage means. When there are multiple access requests from the user information, referring to the user priority of the user information storage means, if the user has a higher priority than a predetermined priority, An access order that is earlier than the access order assigned to the user is assigned.
As a result, a user having a higher priority than a predetermined priority can access the Web server preferentially, and for example, a preferential service for a good customer or the like can be provided.
[0011]
Further, the access allocating unit may instruct a predetermined notification unit to estimate a time during which access to the Web server is possible and to notify the user of the estimated time information. Good.
Thereby, the user can predict the time when the user can access the Web server, and the user's dissatisfaction and anxiety that the user cannot know when the user can access the Web server can be eased.
[0012]
For the above web server Access history information including failure cause information indicating the cause of failure to access and access impossible time information for each failure cause Access history information Storage means , Refer to the access history information storage means, And further comprising access statistics calculation means for creating access statistical information including failure cause information indicating a cause of failure to access the Web server, and inaccessible time information for each failure cause information. The means may estimate a time during which access to the Web server is possible based on the failure cause information calculated by the access statistics calculation means.
Thereby, it is possible to estimate the time for which access is possible based on the statistical data.
[0013]
When there is access history information in which a state in which access was not possible based on the same cause of failure occurred within a predetermined time, the access statistic calculation means calculates the sum of the times when these access failed. You may make it the time when access to the Web server was not possible.
As a result, even if the cause of the failure occurs intermittently, it can be handled as a single failure occurrence.
[0014]
The access allocation means can access the Web server based on either the duration of the cause of access failure for each day of the week or the duration of the cause of access failure for each predetermined time period. You may make it estimate time.
This makes it possible to predict the date and time when the Web server can be accessed more accurately.
[0016]
A computer program according to the present invention is a computer program for causing a computer to function as a device that controls access from a user to a predetermined Web server, and when the computer is accessed to the Web server. When the priority information indicating the priority order of each user is stored in the user information storage means and when the Web server cannot be accessed immediately ,Up The process of assigning the access order to the Web server in descending order of the priority set for the user with reference to the priority information of the user information storage means, and among the users assigned the access order to the Web server And a process of allocating an access request from a user having a predetermined priority to a free time during which the Web server set in advance can be accessed.
A computer program according to another aspect of the present invention is a computer program for causing a computer to function as an apparatus that controls access from a user to a predetermined Web server, and the computer Processing for storing priority information indicating the priority order of each user when accessing to the user information storage means, and when the Web server cannot be accessed immediately ,Up The process of assigning the access order to the Web server in descending order of priority set for the user with reference to the priority information of the user information storage means, and the same user among the assigned users When there is an access request, a process of invalidating the access order assigned based on the access request made by the user first is executed.
A computer program according to still another aspect of the present invention is a computer program for causing a computer to function as an apparatus that controls access from a user to a predetermined Web server, and When the priority information indicating the priority order of each user when accessing the server is stored in the user information storage means, and when the Web server cannot be accessed immediately ,Up The process of assigning the access order to the Web server in descending order of priority set for the user with reference to the priority information of the user information storage means, and the same user among the assigned users When there is an access request, referring to the priority of the user in the user information storage means, if the user has a priority higher than a predetermined priority, the access order assigned to the user last time And a process of assigning an earlier access order.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments according to the present invention will be described below with reference to the drawings.
FIG. 1 shows an embodiment of a system using an access control apparatus according to the present invention.
In FIG. 1, in the present embodiment, the user terminal 4 can be connected to the Web server 3 via the load balancer 2 and the sorry server 1 via the Internet.
[0018]
The user terminal 4 is a terminal used by a user who accesses the Web server 3 or the like. The user terminal 4 is configured by a computer and can be connected to the Internet by a predetermined browser, thereby accessing a Web site provided by the Web server 3.
The Web server 3 is configured by a computer, and is a server that provides a Web site that transmits predetermined contents and the like to users. The Web server 3 may provide, for example, a shopping site, a site that accepts reservations such as tickets, and a site that accepts safety information in the event of an emergency disaster on the Internet, and the content to be provided is arbitrary. .
The load balancer 2 monitors the load state from the number of accesses from the user to the Web server 3, and when the number of accesses exceeds a predetermined number of accesses, the load distribution device 2 includes a high load occurrence date / time, cause information, etc. The load generation information can be notified. Further, the load balancer 2 can create access log data representing the number of accesses to the Web server 3 according to the time zone or day of the week.
[0019]
The sorry server 1 is a server that transmits a predetermined message to the user terminal 4 when the user cannot immediately access the Web server 3.
The sorry server 1 is constituted by a computer, and includes the functional blocks shown in FIG. 1 by a CPU (Central Processing Unit), a computer program executed by the CPU, an internal memory such as a RAM and a ROM, and an external storage device such as a hard disk device. Constitute.
1 includes a user information database 11, an access permission order information database 12, an access statistics database 13, a communication control unit 14, an access statistics calculation unit 15, an access order registration unit 16, a message creation unit 17, and an access permission. The determination unit 18 is configured.
[0020]
The user information database 11 is a storage unit that stores information on users in a database.
For example, as shown in FIG. 2, the user information database 11 can store information on a user name, a password as user authentication information, a priority, and a user mail address.
The priority is information indicating the priority order of the user when the user accesses each Web server 3. For example, for the operator who operates a predetermined Web site, how good the user is the customer. It is determined by whether there is.
[0021]
The access permission order information database 12 is a storage unit in which information such as access permission time based on the access order assigned to the user is databased.
In this access permission order information database 12, for example, as shown in FIG. 3, the user name, the priority of the user, the access date and time indicating the date and time when the user requested access to the Web server 3, and the access assigned to the user Information on the access permission date and time indicating the possible date and time can be stored.
[0022]
The access statistics database 13 is a storage unit in which failure information generated in the Web server 3 is databased.
For example, as shown in FIG. 4, the access statistics database 13 can store a high load occurrence date / time, a high load release date / time, a duration, and a type code for each Web server 3.
The high load occurrence date / time represents the date / time when the high load occurred on the Web server 3, the high load release date / time represents the date / time when the high load was canceled, and the duration represents the duration of the high load state. ing.
The type code is a code for identifying the cause of the high load failure that has occurred. In the present embodiment, for example, “0” is displayed when normal processing is performed, “1xx” is generated when a load is generated, and “2xx” is generated when an error is generated. The cause can be specified by the last two digits. (For example, “115” indicates that the CPU usage rate of the database server has reached 100%).
[0023]
The communication control unit 14 controls the communication interface to perform predetermined data transmission / reception processing between the load distribution device 2 and the user terminal 4.
The access statistics calculation unit 15 refers to the access statistics database 13, and from the access history information for the Web server 3, the type code indicating the failure cause that could not access the Web server 3, and each type of code (failure cause). A process of creating access statistical information including the time when access was not possible (access impossible time) is performed.
When creating the access statistics information, the access statistics calculation unit 15 sums up the times when the access could not be made when there was a time when the same type code could not be accessed within a predetermined time. The time may be an inaccessible time for the Web server 3.
[0024]
The access order registration unit 16 refers to the priority information of each user in the user information storage database 11 when the web server 3 is accessed by a plurality of users. 3 can be executed.
In this case, for example, the access order registration unit 16 sets the access idle time for the Web server 3 at a predetermined interval in advance, and when there is an access request from a user having a predetermined priority, The idle time may be set as the access permission time of the user.
Further, when there are repeated access requests from the same user a plurality of times, the access order registration unit 16 may treat the access permission date and time assigned based on the access request made earlier by the user as invalid. it can.
[0025]
Further, the access order registration unit 16 performs a process of estimating an access permission date and time when the user can access the Web server 3 when the user cannot immediately access the Web server 3.
This estimation process is performed based on, for example, an access failure cause type code in which the access order registration unit 16 cannot access the Web server 3 and an average value of the past durations of failures corresponding to the type code. You may estimate. Further, for example, the access order registration unit 16 may estimate based on either the duration of the access failure cause for each day of the week or the duration of the access failure cause for each time zone for the Web server 3.
[0026]
The message creation unit 17 creates message information for the user based on information such as the user access permission date and time determined by the access order registration unit 16.
As this message, for example, a message that prompts the user to access the Web server 3 again when the user's predetermined date / time comes in HTML (Hyper Text Markup Language) may be created.
[0027]
The access permission determination unit 18 notifies the user terminal 4 that the user terminal 4 can be accessed when the high load state is resolved and access to the Web server 3 becomes possible. In this notification, for example, the access permission determination unit 18 may notify that the access to the Web server 3 is possible by e-mail based on the user's mail address stored in the user information database 11. .
Further, the access permission determination unit 18 may instruct a browser or the like of the user terminal 4 to automatically connect to the predetermined Web server 3 when access to the Web server 3 becomes possible.
[0028]
Next, an access control method according to the present embodiment will be described with reference to the drawings.
First, processing when creating access statistical information from access log data to the Web server 3 will be described with reference to FIG.
In FIG. 5, the access statistics calculation unit 15 acquires access log data for the Web server 3 from the load balancer 2 via the communication control unit 14 (S11).
The access log data acquired from the load balancer 2 at this time includes, for example, data such as an access date / time, a distribution destination IP address, a type code, and a status flag indicating occurrence / release of a status.
[0029]
When the access log data is acquired, the access statistics calculation unit 15 extracts records other than the record having the type code “normal” (in this embodiment, the type code “0”) from the access log data (S12).
As a result, when accessing the Web server 3, log data including a type code that cannot be accessed immediately is generated by some kind of failure (for example, occurrence of load, error, etc.).
[0030]
The access statistics calculation unit 15 extracts, as unregistered case data, log data having the same type code and a pair of status flag “occurrence” and “release” among the extracted log data (S13). ).
The extracted unregistered case data is subjected to a case registration process described later, and the unregistered case data is registered in the access statistics database 13 (S14).
When the case registration process is completed, the access statistics calculation unit 15 determines whether or not there is unregistered case data that has not been subjected to the case registration process (S15).
As a result of the determination, if unregistered case data exists, the process returns to the above-described process of S13 and the above-described process is repeated.
If there is no unregistered case data as a result of the determination, the process is terminated.
[0031]
Next, the case registration process described above will be described with reference to FIGS.
In this embodiment, as schematically shown in FIG. 7, in the case where cases A and C are already registered in the access statistics database 13, new cases of unregistered cases B and D are respectively registered. Will be described as an example. In FIG. 7, “0” represents the occurrence of a high load state, and “1” represents the release of the high load state.
First, the access statistics calculation unit 15 extracts one record (case B or case D in the example of FIG. 7) from unregistered case data in the process of S13 described above (S21).
The access statistics calculation unit 15 determines whether or not the extracted unregistered case data and the type code are in the access statistics database 13 and the difference between the high load occurrence date and time and the resolution date and time is within a predetermined time. (S22).
[0032]
As a result of the determination, when it is determined that the corresponding record exists in the access statistics database 13, the access statistics calculation unit 15 sets the high load cancellation date / time of the corresponding record on the access statistics database 13 to the high value of the unregistered case. Update to the load cancellation date and time (S23).
In the example of FIG. 7, since the high load start date and time of case A is within a predetermined time (for example, 5 minutes) with respect to case B, it is determined that case A is a corresponding record, and the high load cancellation date and time of case A is Updated to date and time of high load cancellation for case B.
[0033]
Further, the access statistics calculation unit 15 calculates the difference between the high load occurrence date and time and the high load cancellation date and time (in the example of FIG. 7, the high load occurrence date and time of case A and the high load release date and time of case B) of the corresponding record, The duration time is calculated (S24).
And the access statistics calculation part 15 updates the continuation time of the access statistics database 13 based on the calculated continuation time (S25), and complete | finishes a process.
[0034]
If it is determined in S22 that the corresponding record does not exist, this unregistered case (case D exceeding 5 minutes of the predetermined time in the example of FIG. 7) is determined. It is additionally stored in the access statistics database 13 (S26), and the process is terminated.
[0035]
Next, processing when the Web server 3 cannot be accessed immediately will be described with reference to FIG.
In FIG. 8, when the Web server 3 becomes in a high load state and the high load occurrence information is notified from the load distribution device 2, the access order registration unit 16 reports the high load occurrence date and time and the high load occurrence notified from the load distribution device 2. The type code is acquired (S31).
When receiving the access request from the user, the access order registration unit 16 specifies the user name of the user and the access date / time included in the access request (S32).
[0036]
The access order registration unit 16 refers to the user information database 11 and extracts the priority of the user (S33).
Further, the access order registration unit 16 refers to the access statistics database 13 and estimates the date and time when the high load state is canceled (S34).
As this estimation processing, for example, the access order registration unit 16 estimates the time when the high load state is canceled based on the average value of the duration of the same type code that is stored in the access statistics database 13 this time. May be. Further, the access order registration unit 16 estimates the time when the high load is released from the average value of the duration of the same failure type code that occurred in the same time zone or day of the week stored in the access statistics database 13. Also good.
[0037]
Further, the access order registration unit 16 determines whether or not the user's record already exists in the access permission order information database 12 (S35).
As a result of the determination, if there is already a record of the same user in the access permission order information database 12, it is assumed that the user has reloaded and repeated access, and the access permission order information database 12 previously stored in the access permission order information database 12 The access permission date and time of the user is deleted and invalidated (S36).
[0038]
After deleting the record in the process of S36 described above or when it is determined that the record of the user does not exist in the process of S35 described above, the access order registration unit 16 responds to the access date and time and the priority of the user. Then, the access permission date and time of the Web server 3 for the user is calculated (S37).
As this processing, for example, as schematically shown in FIG. 10, an empty time is secured in advance at a predetermined interval, and when a user with a predetermined priority or higher is accessing, it is assigned to the empty time. It may be. In addition, when there are users (for example, user B and user C) whose access permission date and time has already been set, for example, a user (for example, user A) with a higher priority than the already set user is selected. It may be possible to allocate to a free time before that, and for this allocation, an appropriate method may be used according to the priority of the user and the access date and time.
[0039]
When the assignment is completed, the access order registration unit 16 adds and stores each information of the user name and priority, the access date and time, and the assigned access permission date and time in the access permission order information database 12 (S38).
[0040]
9, the message creation unit 17 acquires the user name, access date / time, and access permission date / time assigned by the access permission date / time from the access order registration unit 16 (S39), and the corresponding user name, access date / time, access permission. The standby request information for the user is created from the date and time (S40).
An example of this waiting request information is shown in FIG. As shown in FIG. 11, as waiting request information for the user, for example, how many minutes should be waited, and depending on the website, provisional reception that sends an e-mail when the access permission determination unit 18 is in the user's order is performed. And a temporary receipt number may be notified as shown in FIG.
Then, the message creation unit 17 notifies the user terminal 4 of the generated standby request information via the communication control unit 14 (S41), and the process ends.
[0041]
Next, processing when the high load state is resolved will be described with reference to FIG.
In FIG. 13, the access permission determination unit 18 repeats the determination process of whether or not there is a notification from the load balancer 2 that the high load state has been released until this notification is received (S51).
In this state, upon receiving a notification that the high load state has been released from the load distribution apparatus 2 (S52), the access permission determination unit 18 refers to the access permission database 13 and the access permission date and time has already passed. It is determined whether there is a record that exists (S53).
[0042]
As a result of the determination, if there is no record that has passed the access permission date and time, the access permission determination unit 18 determines that there is no record that should be permitted to access and ends the process.
If there is a record that has passed the access permission date and time, the access permission determination unit 18 follows the access permission date and time stored in the access permission order information database 12, for example, as shown in FIG. An access permission notification including a URL for accessing the Web site is notified to the user by e-mail (S54), and the process ends.
[0043]
As described above, according to the above-described embodiment, the access order registration unit 16 preferentially assigns an access order to a user with a high priority, so that a user with a high priority is preferentially treated. Can do. As a result, for example, a good customer can be connected to the Web server 3 with priority, and the service can be provided, and the desired Web server 3 can be accessed quickly without causing the good customer to wait for a long time. Will be able to provide.
[0044]
In addition, when there are multiple access requests from the same user, the access order registration unit 16 deletes all the access requests previously made by the user as invalid, so each time the user reloads, Since the access order is delayed, which is a disadvantageous condition for the user, it is possible to prevent the Web server 3 from being overloaded by the user repeatedly reloading.
[0045]
In addition, when the user cannot immediately access the Web server 3, the access order registration unit 16 estimates the date and time when the Web server 3 can be accessed and notifies the user. Can grasp when the user can access the Web server 3 and how long it should wait. As a result, it is possible to dispel users' dissatisfaction, anxiety, distrust, and the like that they do not know when to access the Web server 3.
[0046]
In addition, since the access order registration unit 16 estimates the accessible date / time based on the past performance information stored in the access statistics database 13 when the accessible date / time is determined, It is possible to estimate appropriately based on the results.
[0047]
Further, the access order registration unit 16 estimates the time during which the web server 3 can be accessed based on either the duration of the high load state for each day of the week or the duration of the high load state for each time zone. By doing so, it is possible to appropriately estimate the time during which the Web server 3 can be accessed for each day of the week or time period.
[0048]
In addition, since the access permission determination unit 18 notifies the user that access has become possible when access to the Web server 3 becomes possible, the user notifies the Web server 3 It is possible to know in a timely manner that access is now possible.
The access permission determination unit 18 may allow the user to access the Web server 3 when access to the Web server 3 becomes possible. Accordingly, the user can automatically access the desired Web server 3 without performing special processing.
[0049]
From the access history information for the web server 3, the access statistics calculation unit 15 obtains access statistical information including a type code indicating the reason why the web server 3 could not be accessed and duration information for each type of code that could not be accessed. Since the access order registration unit 16 creates and estimates the time during which access to the Web server 3 is possible based on the type code of the access statistical information, the appropriate time is estimated for each type of code. be able to.
[0050]
When there is access history information in which a state where access could not be made based on the same cause occurred within a predetermined time, the access statistic calculation unit 15 could not access the total time of these inaccessible times. Since the time information is used, even when a certain failure occurs intermittently, it can be handled as a state where the Web server 3 cannot be accessed.
[0051]
In the above-described embodiment, an example has been described in which, when there are multiple access requests from the same user, the previously assigned access order is invalidated, but instead, for example, the access order registration unit 16 However, when there are multiple access requests from the same user, with reference to the user priority stored in the user information database 11, the user has a higher priority than the predetermined priority. May assign an access order earlier than the previously assigned access order to the user. Thereby, a user having a higher priority than the predetermined priority can access the Web server 3 preferentially, and for example, a preferential service for a good customer or the like can be provided.
[0052]
The sorry server 1 according to the present embodiment may be a dedicated device, or may be realized using a general-purpose computer and a computer program. When implemented using a general-purpose computer, for example, from a computer program for executing the above-described operations on the general-purpose computer or a computer-readable medium (FD, CD-ROM, etc.) storing the computer program. You may make it comprise each apparatus which performs the above-mentioned process by installing a computer program. When the above functions are realized by the OS (Operating System) sharing or jointly between the OS and the application program, only the part other than the OS is stored as a computer program, and the computer program is stored in a computer-readable medium. May be.
[0053]
It is also possible to superimpose each computer program for the sorry server 1 on a carrier wave and distribute it via a communication network. For example, the program may be posted on a bulletin board (BBS) of a communication network and distributed via the network. Then, the above-described processing may be executed by starting this computer program and executing it in the same manner as other application programs under OS control.
[0054]
【The invention's effect】
According to the present invention, a user can efficiently access a Web server.
[Brief description of the drawings]
FIG. 1 is a conceptual diagram showing the overall configuration of an embodiment according to the present invention.
FIG. 2 is a view showing an example of data stored in a user information database according to the present embodiment.
FIG. 3 is a view showing an example of data stored in an access permission order information database according to the embodiment.
FIG. 4 is a diagram showing an example of data stored in an access statistics database according to the present embodiment.
FIG. 5 is a processing flow showing a processing flow when creating access statistical information according to the embodiment.
FIG. 6 is a processing flow showing a flow of case registration processing according to the embodiment.
FIG. 7 is a schematic diagram showing an example of case registration processing according to the present embodiment.
FIG. 8 is a processing flow showing a processing flow when the number of accesses to the Web server according to the present embodiment exceeds a predetermined amount.
FIG. 9 is another processing flow showing a processing flow when the number of accesses to the Web server according to the embodiment exceeds a predetermined amount.
FIG. 10 is a schematic diagram showing an example when determining the access permission date and time according to the embodiment.
FIG. 11 is a diagram showing an example of a standby request message for a user according to the present embodiment.
FIG. 12 is a view showing another example of a standby request message for a user according to the present embodiment.
FIG. 13 is a processing flow showing processing when a high-load state for the Web server according to the present embodiment is canceled.
FIG. 14 is a diagram showing an example when notifying the user according to the present embodiment that access to a Web page is possible.
[Explanation of symbols]
1 sorry server
2 Load balancer
3 Web server
4 User terminals
11 User information database
12 Access permission order information database
13 Access statistics database
14 Communication control unit
15 Access statistics calculator
16 Access Order Registration Department
17 Message creation part
18 Access permission judgment part

Claims (10)

所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、
上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、
上記アクセス割当手段は、上記Webサーバに対してアクセスできる空き時間を予め所定の間隔で設定しておき、所定の優先度を有するユーザからアクセス要求があった場合には、当該ユーザを上記空き時間に割り当てることを特徴とするアクセス制御装置。
An apparatus for controlling access to the Web server when a predetermined Web server is accessed by a plurality of users,
User information storage means for storing priority information representing the priority order of each user when accessing the Web server;
When the user is not immediately accessible to said Web server, on SL in order of higher priority that is set to the user by referring to the priority information in the user information storage means, access to assign access order to the Web server And assigning means,
The access allocating unit previously sets a free time for accessing the Web server at a predetermined interval, and when there is an access request from a user having a predetermined priority, An access control device characterized by being assigned to
所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、
上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、上記アクセス割当手段は、同じユーザから複数回のアクセス要求があった場合には、上記ユーザから先になされたアクセス要求に基づいて割り当てたアクセス順序を無効とすることを特徴とするアクセス制御装置。
An apparatus for controlling access to the Web server when a predetermined Web server is accessed by a plurality of users,
User information storage means for storing priority information representing the priority order of each user when accessing the Web server;
When the user is not immediately accessible to said Web server, on SL in order of higher priority that is set to the user by referring to the priority information in the user information storage means, access to assign access order to the Web server The access assigning means, when there are multiple access requests from the same user, invalidate the access order assigned based on the access request previously made by the user. A characteristic access control device.
所定のWebサーバに対して複数のユーザからアクセスがあった場合に、上記Webサーバへのアクセスを制御する装置であって、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報を記憶するユーザ情報記憶手段と、
上記Webサーバに対してユーザが直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てるアクセス割当手段とを有し、
上記アクセス割当手段は、同じユーザから複数回のアクセス要求があった場合には、上記ユーザ情報記憶手段のユーザの優先度を参照して、予め決められた所定の優先度よりも高い優先度を有するユーザである場合には、当該ユーザに前回割り当てたアクセス順序よりも早いアクセス順序を割り当てることを特徴とするアクセス制御装置。
An apparatus for controlling access to the Web server when a predetermined Web server is accessed by a plurality of users,
User information storage means for storing priority information representing the priority order of each user when accessing the Web server;
When the user is not immediately accessible to said Web server, on SL in order of higher priority that is set to the user by referring to the priority information in the user information storage means, access to assign access order to the Web server And assigning means,
When there are multiple access requests from the same user, the access allocation means refers to the priority of the user in the user information storage means and sets a priority higher than a predetermined priority. An access control apparatus characterized by assigning an access order that is earlier than an access order assigned to a previous user to the user.
上記アクセス割当手段は、上記Webサーバへのアクセスが可能となる時間を推計し、当該推計した時間情報を上記ユーザに対して通知するように、所定の通知手段に対して指示する、
請求項1〜3のいずれかの項に記載のアクセス制御装置。
The access allocating unit estimates a time during which access to the Web server is possible, and instructs a predetermined notification unit to notify the user of the estimated time information;
The access control apparatus according to claim 1.
上記Webサーバに対してアクセスができなかった原因を表す障害原因情報と、障害原因ごとのアクセスできなかったアクセス不可時間情報とを含むアクセス履歴情報を記憶するアクセス履歴情報記憶手段と、上記アクセス履歴情報記憶手段を参照して、上記障害原因情報と、上記アクセス不可時間情報とを含むアクセス統計情報を作成するアクセス統計算出手段を更に有し、
上記アクセス割当手段は、上記アクセス統計算出手段が算出した障害原因情報に基づいて、上記Webサーバへアクセスが可能となる時間を推計する、
請求項4記載のアクセス制御装置。
Access history information storage means for storing access history information including failure cause information indicating a cause of failure to access the Web server, and inaccessible time information for each failure cause, and the access history With reference to the information storage means, further comprising access statistics calculation means for creating access statistical information including the failure cause information and the inaccessible time information,
The access allocation unit estimates a time during which access to the Web server is possible based on the failure cause information calculated by the access statistics calculation unit.
The access control apparatus according to claim 4.
上記アクセス統計算出手段は、所定時間内に同じ障害原因に基づいてアクセスができなかった状態が発生していたアクセス履歴情報がある場合には、これらアクセスできなかった時間を合算した時間を、上記Webサーバへアクセスできなった時間とする、
請求項5記載のアクセス制御装置。
When there is access history information in which a state in which access was not possible based on the same cause of failure occurred within a predetermined time, the access statistic calculation means calculates the sum of the times when these access failed. The time when the web server could not be accessed
The access control apparatus according to claim 5.
上記アクセス割当手段は、上記Webサーバに対する、曜日ごとのアクセス障害原因の継続時間、又は所定の時間帯ごとのアクセス障害原因の継続時間のいずれかに基づいて、上記Webサーバへアクセスが可能となる時間を推計する、
請求項4〜6のいずれかの項に記載のアクセス制御装置。
The access allocation means can access the Web server based on either the duration of the cause of access failure for each day of the week or the duration of the cause of access failure for each predetermined time period. Estimate time,
The access control apparatus according to any one of claims 4 to 6.
コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、
上記コンピュータに対して、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、
Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、
上記Webサーバへのアクセス順序を割り当てたユーザのうち、所定の優先度を有するユーザからのアクセス要求を、予め設定された上記Webサーバに対してアクセスできる空き時間に割り当てる処理と、
を実行させるコンピュータプログラム。
A computer program for causing a computer to function as a device that controls access from a user to a predetermined Web server,
For the above computer
A process of storing priority information representing priority of each user when accessing the Web server in the user information storage means;
When not immediately accessible to the Web server, the priority set to the user by referring to the priority information of the upper SL user information storage means in descending order, the process of assigning access order to the Web server,
A process of allocating an access request from a user having a predetermined priority among users who have been assigned an access order to the Web server to a free time during which the Web server can be accessed in advance;
A computer program that executes
コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、
上記コンピュータに対して、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、
Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、
上記割り当てたユーザのうち、同じユーザから複数回のアクセス要求があった場合には、上記ユーザから先になされたアクセス要求に基づいて割り当てたアクセス順序を無効とする処理と、
を実行させるコンピュータプログラム。
A computer program for causing a computer to function as a device that controls access from a user to a predetermined Web server,
For the above computer
A process of storing priority information representing priority of each user when accessing the Web server in the user information storage means;
When not immediately accessible to the Web server, the priority set to the user by referring to the priority information of the upper SL user information storage means in descending order, the process of assigning access order to the Web server,
When there are multiple access requests from the same user among the assigned users, a process of invalidating the access order assigned based on the access request made earlier by the user;
A computer program that executes
コンピュータを、所定のWebサーバに対するユーザからのアクセスを制御する装置として機能させるためのコンピュータプログラムであって、
上記コンピュータに対して、
上記Webサーバに対してアクセスする際の各ユーザの優先順位を表す優先度情報をユーザ情報記憶手段に記憶する処理と、
Webサーバに対して直ちにアクセスできないときに、上記ユーザ情報記憶手段の優先度情報を参照してユーザに設定されている優先度が高い順に、上記Webサーバへのアクセス順序を割り当てる処理と、
上記割り当てたユーザのうち、同じユーザから複数回のアクセス要求があった場合には、上記ユーザ情報記憶手段のユーザの優先度を参照して、所定の優先度よりも高い優先度を有するユーザである場合には、当該ユーザに前回割り当てたアクセス順序よりも早いアクセス順序を割り当てる処理と、
を実行させるコンピュータプログラム。
A computer program for causing a computer to function as a device that controls access from a user to a predetermined Web server,
For the above computer
A process of storing priority information representing priority of each user when accessing the Web server in the user information storage means;
When not immediately accessible to the Web server, the priority set to the user by referring to the priority information of the upper SL user information storage means in descending order, the process of assigning access order to the Web server,
Among the allocated users, when there are multiple access requests from the same user, the user with the priority higher than the predetermined priority is referred to by referring to the priority of the user in the user information storage means. If there is, a process of assigning an access order earlier than the access order assigned to the user last time,
A computer program that executes
JP2002044102A 2002-02-21 2002-02-21 Access control apparatus and computer program Expired - Fee Related JP3736680B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002044102A JP3736680B2 (en) 2002-02-21 2002-02-21 Access control apparatus and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002044102A JP3736680B2 (en) 2002-02-21 2002-02-21 Access control apparatus and computer program

Publications (2)

Publication Number Publication Date
JP2003242110A JP2003242110A (en) 2003-08-29
JP3736680B2 true JP3736680B2 (en) 2006-01-18

Family

ID=27783615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002044102A Expired - Fee Related JP3736680B2 (en) 2002-02-21 2002-02-21 Access control apparatus and computer program

Country Status (1)

Country Link
JP (1) JP3736680B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100573483C (en) * 2005-04-14 2009-12-23 松下电器产业株式会社 Server device, information notification method, and information notification system
JP4535129B2 (en) * 2005-04-14 2010-09-01 パナソニック株式会社 Server apparatus, information notification method, and information notification system
JP2008097314A (en) * 2006-10-12 2008-04-24 Kddi Corp Temporary connection method, server, and program for distributing access requests from terminals spatially and / or temporally
JP2012073715A (en) * 2010-09-28 2012-04-12 Nec System Technologies Ltd Information processing apparatus, electronic commerce method and electronic commerce program
CN114900477B (en) * 2022-04-13 2024-01-30 中国电信股份有限公司 Message processing method, server, electronic equipment and storage medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520270A (en) * 1991-07-15 1993-01-29 Toshiba Corp Command execution device
JP3569010B2 (en) * 1994-11-17 2004-09-22 株式会社日立製作所 Server client system
JP3319341B2 (en) * 1997-06-20 2002-08-26 日本電気株式会社 Data sharing system
JP3594219B2 (en) * 1998-11-13 2004-11-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Communication method, communication system, recording medium storing software product for controlling communication
JP2001022714A (en) * 1999-07-12 2001-01-26 Hitachi Ltd Server computer, load distribution system, telephone switching system, and load distribution method
JP2001265693A (en) * 2000-03-17 2001-09-28 Ntt Comware Corp Load control system in Web
JP2003058499A (en) * 2001-08-10 2003-02-28 Fujitsu Ltd Server, program, and medium for managing load
JP4469535B2 (en) * 2002-01-10 2010-05-26 富士通株式会社 Information processing system, information processing apparatus, and access distribution method

Also Published As

Publication number Publication date
JP2003242110A (en) 2003-08-29

Similar Documents

Publication Publication Date Title
JP2002141936A (en) Network access control method, network system using the same, and device constituting the same
JP5686815B2 (en) Data update for website users based on preset conditions
US7734734B2 (en) Document shadowing intranet server, memory medium and method
US20020078214A1 (en) Method and system for controlling a load on a computer
CN102123179A (en) Load balancing method and system applied to distributed application system
CN101371238A (en) On-demand Distributed Computing System
CN110471749A (en) Task processing method, device, computer readable storage medium and computer equipment
CN115412609B (en) Service processing method, device, server and storage medium
CN114048033A (en) Load balancing method, device and computer equipment for running batch tasks
JP5203919B2 (en) Server system
JP2005501335A (en) Method and system for distributing the load of computer resources among computers
JP3736680B2 (en) Access control apparatus and computer program
US20060294239A1 (en) Method and system for controlling computer in system
CN112671945A (en) Method, device, computer equipment and storage medium for managing IP proxy pool
CN110138808A (en) Anti-hijacking method for down loading and system based on CDN
CN107819754B (en) Anti-hijacking method, monitoring server, terminal and system
JP5268785B2 (en) Login restriction method for Web server system
US20120054751A1 (en) Disposition determination technique
JP3178380B2 (en) Connection management method and computer-readable recording medium
JP2001265693A (en) Load control system in Web
KR20190015817A (en) Method, Apparatus and System for Monitoring Using Middleware
JP3856291B2 (en) Client monitoring method, server device, program, and recording medium
JPH09231148A (en) Distributed system
CN115409547B (en) Advertisement information management method, device, equipment and storage medium of multi-advertisement platform
JP4003295B2 (en) Software resource distribution method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050517

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050810

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050908

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051019

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091104

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101104

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111104

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121104

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121104

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131104

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees