[go: up one dir, main page]

JP4451339B2 - 負荷分散システム、および負荷分散方法 - Google Patents

負荷分散システム、および負荷分散方法 Download PDF

Info

Publication number
JP4451339B2
JP4451339B2 JP2005086882A JP2005086882A JP4451339B2 JP 4451339 B2 JP4451339 B2 JP 4451339B2 JP 2005086882 A JP2005086882 A JP 2005086882A JP 2005086882 A JP2005086882 A JP 2005086882A JP 4451339 B2 JP4451339 B2 JP 4451339B2
Authority
JP
Japan
Prior art keywords
user
business
information
request
client
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
JP2005086882A
Other languages
English (en)
Other versions
JP2006268559A (ja
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute Ltd
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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2005086882A priority Critical patent/JP4451339B2/ja
Publication of JP2006268559A publication Critical patent/JP2006268559A/ja
Application granted granted Critical
Publication of JP4451339B2 publication Critical patent/JP4451339B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、クライアントからの要求を、複数のシステムに振り分ける負荷分散技術に関する。
各クライアントからの要求を処理するために、複数のサーバを並列に運用し、サーバ間での負荷が均等になるように処理を分散する負荷分散技術がある。例えば、特許文献1には、サーバの負荷状況をクライアントに通知して、クライアントの表示装置にサーバの負荷状況を表示するサーバ負荷通知システムが記載されている。
特開平10−105497
ところで、クライアントからのアクセス件数の増加に伴い、サーバやデータベースなどの各リソースの増強を行い、負荷分散装置を用いてクライアントからのアクセス要求を複数のリソースに分散して振り分け、システム全体を効率よく稼動させる方法がある。
しかしながら、アクセス件数の大幅な増加が予想される場合には、各リソースの増強だけでは所定の性能を確保することが難しい場合がある。このような場合、現在、稼動している現行システムを、もう一式新たに併設するなどの大規模なシステムの増強を行う必要がある。このように現行システムとは別の新システムを併設した場合、各クライアントからのアクセスを所定の方法でどちらかのシステムに振り分ける必要がある。クライアント側で、現行システムにアクセスするのか、または、新システムにアクセスするのかを意識させることは困難であり、また、ユーザサービスの低下につながるおそれがある。
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、クライアント側に複数のシステムを意識させることなく、クライアントからの要求を複数のシステム間で振り分けることにある。
上記課題を解決するために、本発明は、例えば、複数の業務システムを有し、クライアントからの要求を前記複数の業務システムに振り分けて処理を行う負荷分散システムである。そして、前記業務システム各々は、ユーザIDと当該ユーザIDが属するグループとが記憶されたユーザDBと、前記各グループと、当該グループに割り当てられた前記業務システムを識別するためのシステム情報とが記憶された振分テーブルと、前記クライアントから、ユーザIDを含む要求を受け付ける要求受付手段と、前記ユーザDBおよび前記振分テーブルを参照し、前記要求受付手段が受け付けたユーザIDに対応するシステム情報を取得する取得手段と、前記取得手段が取得した前記システム情報が、自業務システムのシステム情報か否かを判別する判別手段と、自業務システムのシステム情報と判別した場合、前記要求に応じた処理を行う要求処理手段と、自業務システム以外の他業務システムのシステム情報と判別した場合、前記他業務システムに前記要求受付手段が受け付けた要求を転送するための画面情報を生成し、前記クライアントに送信する転送手段と、を有する。
本発明では、クライアント側に複数のシステムを意識させることなく、クライアントからの要求を複数のシステム間で振り分けることができる。また、本発明では、各クライアントからの要求を、当該クライアントに割り当てたシステムに転送することができる。
以下、本発明の実施の形態について説明する。
図1は、本発明の一実施形態が適用されたトレードシステムの全体構成図である。トレードシステムは、投資家がネットワークを介して株式など売買するシステムである。本実施形態のトレードシステムは、各クライアントからの大量の取引データを処理するために、2つのサイト(AサイトおよびBサイト)で分散して処理を行っている。
図示するトレードシステムは、少なくとも1つのクライアント1と、Aサイトのシステム(以下、Aシステム)2と、Bサイトのシステム(以下、「Bシステム」)3と、Aサイト用DNSサーバ4と、Bサイト用DNSサーバ5と、を有する。そして、これらの各装置は、インターネットなどのネットワーク9により接続されている。
また、Aサイト用DNSサーバ4はAシステム2に、また、Bサイト用DNSサーバ5はBシステム3にそれぞれ接続されている。そして、Aサイト用DNSサーバ4とBサイト用DNSサーバ5とは、Aシステム2およびBシステム3を介して、互いに接続されているものとする。
クライアント1は、Webブラウザ11を有し、ユーザの指示を受け付けてAシステム2またはBシステム3に各種の要求を送信する。
Aシステム2は、PL(presentation layer)サーバ21と、BL(business logic layer)サーバ22と、DB(database)サーバ23と、を備える3層構造のシステムである。PLサーバ21は、クライアント1からの各種要求を受け付ける入力受付部211と、要求元のクライアント1に応答情報(画面情報)を送信する出力部212と、を備える。
BLサーバ2は、PLサーバ2が受け付けた各種の要求を処理する業務処理サーバであって、判別部221と、業務処理部222と、転送部223と、を備える。判別部221は、PLサーバ21が受け付けた要求が、自システムに割り当てられたクライアント1からの要求か否かを判別する。業務処理部222は、判別部221が自システムのクライアント1からの要求であると判別した場合、ログイン処理および各種の処理を行う。転送部223は、判別部221が他システムのクライアントからの要求であると判別した場合、クライアントから受け付けた要求を他システムに転送する。
DBサーバ23は、各種のデータを管理するデータ管理部231と、ユーザDB232と、振分テーブル233と、を備える。ユーザDB232は、ユーザ各々の属性を管理するためのデータベースである。振分テーブル233は、各ユーザを所定のグループにグルーピングするための部店コードと、当該部店コードに対応するシステム情報とが記憶されたテーブルである。なお、ユーザDB232および振分テーブル233については後述する。
Bシステム3は、Aシステム2と同様に、PLサーバ31と、BLサーバ32と、DBサーバ33とを備える。なお、Bシステム3のPLサーバ31、BLサーバ32およびDBサーバ33は、それぞれ、Aシステム2のPLサーバ21、BLサーバ22およびDBサーバ23と同様である。
Aサイト用DNS(Domain Name System)サーバ4は、いわゆるネームサーバであって、クライアント1が指定する本トレードシステムを示す仮想URL(Uniform Resource Locator)を、Aシステム2またはBシステム3のURLに変換する。図示するAサイト用DNSサーバ4は、名前解決部41と、監視部42と、名前解決テーブル43と、を備える。名前解決部41は、仮想URLを、Aシステム2またはBシステム3のURLに変換する。監視部42は、当該Aサイト用DNSサーバ4が接続されたAシステム2、および、Bシステム3の稼動状態をそれぞれ監視する。なお、監視部42は、Aシステム2を介してBシステム3の稼動状態を監視するものとする。名前解決テーブル43は、仮想URLと、Aシステム2のURLおよびBシステム3のURLとを対応付けたテーブルである。なお、名前解決テーブル43については、後述する。また、Bサイト用DNSサーバ5は、Aサイト用DNSサーバ4と同様である。
上記説明した、クライアント1、Aシステム2およびBシステム3の各サーバ、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5は、いずれも、例えば図2に示すようなCPU901と、メモリ902と、HDD等の外部記憶装置903と、キーボードやマウスなどの入力装置904と、ディスプレイやプリンタなどの出力装置905と、ネットワークと接続するための通信制御装置906と、を備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
例えば、Aシステム2の各装置の各機能は、PLサーバ21用のプログラムの場合はPLサーバ21のCPU901が、BLサーバ22用のプログラムの場合はBLサーバ22のCPU901が、そして、DBサーバ23用のプログラムの場合はDBサーバ23のCPU901がそれぞれ実行することにより実現される。なお、DBサーバ23のユーザDB232および振分テーブル233には、DBサーバ23のメモリ902または外部記憶装置903が用いられるものとする。また、入力装置904および出力装置905については、各装置が必要に応じて備えるものとする。
次に、DBサーバ23、33のユーザDB232について説明する。なお、Aシステム2のユーザDB232とBシステム3のユーザDB232とは、同一のデータが登録された同一のDBである。そして、各ユーザDB232には、本トレードシステムにユーザ登録を行った(口座を開設した)ユーザの属性が記憶されている。なお、本実施形態では、ユーザ登録を行ったユーザを、カスタマー(顧客)という。
図3は、ユーザDB232の一例を示した図である。図示するユーザDB232は、ユーザID31と、当該ユーザID31に対応する部店コード32および口座番号33とを有する。ユーザID31、部店コード32および口座番号33は、口座開設時に各ユーザに割り当てられるものである。なお、本実施形態では、部店コード32を用いて、各クライアントからの要求を、Aシステム2またはBシステム3に振り分けるものとする。しかしながら、部店コード32を用いることなく、各ユーザIDを所定のグループにグルーピング可能な(グループ分けが可能な)、他のグループ情報を用いることとしてもよい。
次に、DBサーバ23、33の振分テーブル233について説明する。なお、Aシステム2の振分テーブル233と、Bシステム3の振分テーブル233とは、同一のデータが登録された同一のテーブルである。
図4は、振分テーブル233の一例を示した図である。図示する振分テーブル233は、部店コード41と、当該部店コード41に割り当てられたサイトを識別するためのサイト情報(または、システム情報)42とを有する。なお、サイト情報42としては、サイト名、サイト区分コード、などを用いることが考えられる。
次に、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5の名前解決テーブル43について説明する。なお、Aサイト用DNSサーバ4の名前解決テーブル43と、Bサイト用DNSサーバ5の名前解決テーブル43とは、基本的に同一のデータが登録された同一のテーブルである。
図5は、名前解決テーブル43の一例を示した図である。名前解決テーブル43は、本トレードシステムの仮想URLを、Aシステム2またはBシステム3の実URLに変換するためのテーブルである。図示する名前解決テーブル43は、1つの仮想URL51に対し、AシステムおよびBシステムの2つの実URL52を有する。仮想URL51は、クライアント1のWebブラウザ11に入力される、本トレードシステムの仮想的なURLである。この仮想URLを用いることにより、クライアント側では、本トレードシステムが備える2つのシステム(Aシステム2、Bシステム3)を意識することなく本トレードシステムにアクセスすることができる。
そして、名前解決テーブル43は、実URL52毎に、初回アクセスフラグ53と、障害フラグ54とをそれぞれ有する。初回アクセスフラグ53は、各クライアントが本トレードシステムにアクセスする際に、最初にアクセスするサイトのシステムを識別(特定)するためのフラグである。図示する例では、初回にアクセスするシステムは、初回アクセスフラグ53に「ON」が設定されているAシステム2である。
障害フラグ54は、Aシステム2およびBシステム3が障害か否かを識別するためのフラグである。図示する例では、「ON」は障害が発生していることを示し、「OFF」は正常に稼動していることを示している。監視部42は、所定のタイミングで、Aシステム2およびBシステム3の各装置の稼動状態をチェックし、障害を検知した場合は障害フラグを「OFF」から「ON」に変更する。なお、図示する例では、Aシステム2およびBシステム3には、ともに「OFF(正常)」が設定されているものとする。
次に、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5の名前解決処理について説明する。
まず、図示しないローカルDNSサーバは、クライアント1のWebブラウザ11から、本トレードシステムの仮想URLを受け付けると、当該仮想URLの名前解決要求(実URLの要求)を、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5に送信する。そして、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5は、それぞれ図6に示す名前解決処理を行い、所定の実URLをローカルDNSサーバに送信する。
そして、ローカルDNSサーバは、応答が速い方のDNSサーバ4、5から取得した実URLを採用する。そして、ローカルDNSサーバは、当該実URLに対応するIPアドレスを当該ローカルDNSサーバ(または上位のDNSサーバ(不図示))の対応テーブルから取得し、要求元のクライアント1にIPアドレスを送信する。なお、対応テーブルは、URLとIPアドレスとが対応付けられたテーブルである。これにより、Aサイト用DNSサーバ4またはBサイト用DNSサーバ5のいずれか一方に障害が発生した場合であっても、ローカルDNSサーバは、他方の正常なサーバ4、5から実URLを取得することができる。
図6は、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5が、それぞれ行う名前解決処理の処理フロー図である。
まず、各DNSサーバ4、5の名前解決部41は、ローカルDNSサーバから、名前解決要求を受け付ける(S21)。なお、名前解決要求には、本トレードシステムの仮想URLが指定されているものとする。そして、名前解決部41は、名前解決テーブル43(図5参照)を参照し、初回アクセスフラグが「ON」の実URLを特定する(S22)。
そして、名前解決部41は、特定した実URLに対応する障害フラグを参照し、当該実URLのシステムが正常に稼動しているか否かを判別する(S23)。特定した実URLの障害フラグが正常(OFF)な場合(S23:YES)、名前解決部41は、S22で特定した実URLをローカルDNSサーバに送信する(S24)。一方、特定した実URLの障害フラグが障害(ON)の場合(S23:NO)、名前解決部41は、他方の実URL(特定した実URL以外の実URL)の障害フラグを参照する。そして、他方の実URLの障害フラグが正常な場合、名前解決部41は、他方の実URLをローカルDNSサーバに送信する(S25)。
このように、名前解決部41が名前解決テーブル43の障害フラグを参照することにより、一方のシステムに障害が発生している場合は、他方の正常に稼動しているシステムの実URLをローカルDNSサーバに送信することができる。
次に、本トレードステムへのログイン時の処理について説明する。
なお、本実施形態のユーザには、カスタマーとビジターの2種類のユーザが存在するものとする。カスタマーは、前述の通り本トレードステムにユーザ登録(口座開設)を行ったユーザであって、ユーザIDおよびパスワード等をあらかじめ取得しているものとする。ビジターは、本システムにユーザ登録を行っていない不特定多数のユーザである。
そして、本実施形態では、ビジターが使用するクライアント1から送信された要求は、Aシステム2またはBシステム3のどちらのシステムにおいてもが処理が行えるものとする。一方、カスタマーが使用するクライアント1から送信された要求については、当該カスタマーが属する部店コード(グループ)ごとに割り振られたいずれか一方のシステムでしか処理できないものとする。
図7は、本トレードシステムにログインする際の処理フロー図である。なお、図示する処理フローは、ユーザがカスタマーの場合の処理フロー図である。
まず、クライアント1のWebブラウザ11は、ユーザの指示を受け付けて仮想URLが指定されたログイン要求をネットワーク9に送信する。そして、Webブラウザ11は、図5および図6で説明したように、ローカルDNSサーバ(不図示)から、Aサイト用DNSサーバ4またはBサイト用DNSサーバ5が送信した実URLのIPアドレスを取得する。なお、図示する処理では、Webブラウザ11は、Aシステム2(すなわちPLサーバ21)のIPアドレスを取得するものとする。
そして、Webブラウザ11は、取得したIPアドレスを用いて、最初にAシステム2にアクセスし、Aシステム2からトップページ(最初に表示される画面)の画面情報を取得してトップページの画面を出力装置に出力しているものとする(S41)。なお、トップページの画面には、カスタマーがログインするためのログイン部分を有するものとする。そして、ログイン部分には、ユーザIDの入力欄と、パスワードの入力欄と、ログインボタンとが表示されている。
カスタマーは、ユーザIDおよびパスワードを入力して、ログインボタンをクリック(押下)する。Webブラウザ11は、ログインボタンのクリック(イベント)を受け付けて、入力されたユーザIDおよびパスワードを含むログイン要求を、Aシステム2のPLサーバ21に送信する(S42)。
Aシステム2のPLサーバ21の入力受付部211は、クライアント1からのログイン要求を受け付け、BLサーバ22に当該ログイン要求を引き渡す。BLサーバ22の判別部221は、受け付けたログイン要求に含まれるユーザIDのサイト情報を取得する(S43)。すなわち、判別部221は、DBサーバ23にアクセスし、まず、当該ユーザIDの部店コードをユーザDB232から取得する。DBサーバ23のデータ管理部231は、ユーザDB232(図3参照)を検索して当該ユーザIDの部店コードを特定し、特定した部店コードをBLサーバ22に送出する。そして、判別部221は、取得した部店コードに対応するサイト名を、DBサーバ23の振分テーブル233から取得する。すなわち、DBサーバ23のデータ管理部231は、振分テーブル233(図4参照)を検索して当該部店コードに対応するサイト情報を特定し、特定したサイト情報をBLサーバ22に送出する。
そして、BLサーバ22の判別部221は、取得したサイト情報が自サイト(図示する場合は、「Aサイト」)のサイト情報か否かを判別する(S44)。なお、BLサーバ22のメモリまたは外部記憶装置には、BLサーバ22のサイト情報(「Aサイト」)が、記憶されているものとする。判別部221は、取得したサイト情報が「Aサイト」の場合は自サイトと判別し、取得したサイト情報が「Bサイト」の場合は他サイトと判別する。
判別部221が自サイトのサイト情報と判別した場合(S44:YES)、業務処理部222は、所定の認証処理(パスワードや口座番号のチェックなど)を行う。そして、業務処理部222は、認証に成功した場合、ログイン完了画面の画面情報を生成し、生成した画面情報をPLサーバ21に送出する(S45)。PLサーバ21の出力部212は、ログイン完了画面の画面情報を受け付け、ネットワーク9を介して、ログイン要求元のクライアント1に送信する。なお、画面情報は、HTML(HyperText Markup Language)、XML(eXtensible Markup Language)などのマークアップ言語により記述されているものとする。そして、クライアント1のWebブラウザ11は、ログイン完了画面の画面情報を受信し、ログイン完了画面を出力装置に出力する(S53)。
一方、判別部221が他サイトのサイト情報と判別した場合(S44:NO)、転送部223は、リダイレクト画面の画面情報を生成し、PLサーバ21に送出する(S46)。リダイレクト画面は、他サイト(Bサイト)のシステムにログイン要求を転送するため画面であって、何も表示されない白画面である。そして、転送部223は、HTMLなどを用いて記述されたリダイレクト画面の画面情報の中に、Webブラウザ11側で実行するスクリプト(プログラム)を埋め込むものとする。また、転送部223は、当該スクリプトのPOST変数(引数)も、リダイレクト画面の画面情報に埋め込むものとする。
なお、POST変数には、S42のログイン要求に含まれるユーザIDおよびパスワードと、他サイト(Bサイト)のURLとが含まれる。BLサーバ22のメモリまたは外部記憶装置には、他サイトのURLが、あらかじめ記憶されているものとする。また、転送部223は、このようなPOST変数を、隠しデータとして画面情報に埋め込む。すなわち、HTMLを用いて記述された画面情報の場合、転送部223は、「INPUT」タグの「TYPE=hidden」を用いて、クライアント1の出力装置には表示されない隠しデータ(POST変数)をクライアント1に送信する。なお、Webブラウザ11が実行するスクリプトについては後述する。
そして、PLサーバ21の出力部212は、BLサーバ22から受け付けたリダイレクト画面の画面情報を、ネットワーク9を介してクライアント1に送信する。
クライアント1のWebブラウザ11は、リダイレクト画面の画面情報を受信し、当該画面情報を解析して出力装置に表示するとともに(S47)、当該画面情報に含まれるスクリプトを実行する(S48)。リダイレクト画面の画面情報に含まれるスクリプトは、Webブラウザ11に、リダイレクト画面がクライアント1の出力装置に表示(ローディング)されたタイミング(イベント)を検知して、他サイトにログイン要求を転送する処理を行わせるものである。
したがって、Webブラウザ11は、画面情報に含まれるスクリプトを実行することにより、ポスト変数に含まれる他サイト(Bサイト)のURLに、ポスト変数に含まれるユーザIDおよびパスワードを含むログイン要求を送信する。なお、リダイレクト画面は、何も表示されない白画面である。このため、Webブラウザ11が、画面情報を解析してリダイレクト画面を出力装置に表示するために要する時間は、ごく短い時間(一瞬)である。したがって、クライアント1の出力装置に一瞬、表示されるリダイレクト画面を、ユーザは認識することなく、自動的に他サイトにログイン要求を転送することができる。
そして、他サイト(Bサイト)のPLサーバ31の入力受付部211は、クライアント1から転送されたログイン要求を受け付け、BLサーバ32に当該ログイン要求を引き渡す。そして、BLサーバ32の判別部221は、S43と同様に、受け付けたログイン要求に含まれるユーザIDのサイト情報を取得する。そして、判別部221は、S44と同様に、取得したサイト情報が自サイトのサイト情報か否かを判別する(S50)。なお、BLサーバ32のメモリまたは外部記憶装置には、BLサーバ32のサイト情報(Bサイト)が、記憶されているものとする。判別部221は、取得したサイト情報が「Bサイト」の場合は自サイトと判別する。また、判別部221は、取得したサイト情報が「Aサイト」の場合、このログイン要求はAサイトから転送されたログイン要求であるためエラーと判別する。
判別部221が自サイトと判別した場合(S50:YES)、業務処理部222は、S45と同様に、所定の認証処理を行い、ログイン完了画面の画面情報を生成する。そして、業務処理部222は、生成したログイン完了画面の画面情報をPLサーバ31に送出する。PLサーバ31の出力部212は、ログイン完了画面の画面情報を受け付け、ネットワーク9を介して、ログイン要求元のクライアント1に送信する(S51)。クライアント1のWebブラウザ11は、ログイン完了画面の画面情報を受信し、ログイン完了画面を出力装置に出力する(S53)。
一方、判別部221がエラーと判別した場合(S50:NO)、業務処理部222は、所定のエラー処理を行う(S52)。すなわち、業務処理部222は、例えば、エラーメッセージをクライアント1に送信する、エラーのログ情報をメモリまたは外部記憶装置に記憶する、または、エラー処理を行う障害用サーバ(不図示)にエラーメッセージを送信するなどのエラー処理を行う。
図示するログイン処理をおこなうことにより、クライアント側(ユーザ)は、自分に割り当てられたシステムを意識することなく、対象のシステムにログインすることができる。
なお、ユーザがビジターの場合、クライアント1のWebブラウザ11は、仮想URLが指定されたログイン要求をネットワーク9に送信し、ローカルDNSサーバから、Aサイト用DNSサーバ4またはBサイト用DNSサーバ5が送信した実URLのIPアドレスを取得する。なお、図5に示す名前解決テーブル43の場合、Webブラウザ11は、最初にAシステム2にアクセスし、Aシステム2からトップページの画面情報を受信し、トップページの画面を出力装置に表示する。また、ビジターの場合は、Aシステム2およびBシステム3のどちらであっても処理が可能である。したがって、Aシステムが障害時の場合は、Aサイト用DNSサーバ4またはBサイト用DNSサーバ5がBシステムのURLを送信することにより、Webブラウザ11はBシステムにアクセスし、Bシステムで処理を行うものとする。
以上、本発明の一実施形態を説明した。
本実施形態では、各システムのBLサーバ22、32は、自サイト以外のユーザ(カスタマー)からの要求を受け付けた場合、リダイレクト画面の画面情報を生成して要求元のクライアントに送信する。クライアントは、リダイレクト画面の画面情報に含まれるスクリプトを実行することにより、自動的に、他サイト(当該ユーザに割り振られたサイト)のシステムにログイン要求を転送する。これにより、クライアント側に複数のシステムを意識させることなく、クライアントからの要求を複数のシステム間で振り分けることができる。また、ユーザIDおよびパスワードを1回入力するだけで、必要に応じてログイン要求が転送されるため、ユーザの操作負荷が増えない。
また、本実施形態のリダイレクト画面の画面情報に含まれるスクリプトは、白画面のリダイレクト画面の表示を検知し、ログイン要求を転送させる。これにより、クライアント1を使用するユーザにリダイレクト画面の存在を気づかせることなく、一瞬のうちにログイン情報を転送することができる。
また、本実施形態のトレードシステムでは、Aサイト用DNSサーバ4およびBサイト用DNSサーバ5を有し、本トレードシステムの仮想URLを、Aシステム2またはBシステム3の実URLに変換する。これにより、クライアント1は、本トレードシステムが備える2つのシステムを意識することなく所定のシステムにアクセスすることができる。
また、本実施形態の名前解決テーブル(図5参照)は、障害フラグを有する。これにより、一方のシステムに障害が発生している場合は、他方の正常に稼動しているシステムのURLを送信することができる。この場合、Aシステム2およびBシステム3の両方で処理が可能なビジターの要求については、いずれかのシステムで処理を続行することができる。
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記実施形態の名前解決テーブル(図5参照)は、仮想URLを実URLに変換するためのテーブルである。しかしながら、本発明はこれに限定されず、名前解決テーブルは、実URLに対応するIPアドレスをさらに有することとしてもよい。この場合、各DNSサーバ4、5の名前解決部41は、仮想URLを、Aシステム2のIPアドレス、またはBシステム3のIPアドレスに変換する。
本発明の一実施形態が適用されたトレードシステムの全体構成を示す図である。 各装置のハードウェア構成例を示す図である。 ユーザDBの一例を示す図である。 振分テーブルの一例を示す図である。 名前解決テーブルの一例を示す図である。 DNSサーバの名前解決処理の処理フロー図である。 ログイン処理の処理フロー図である。
符号の説明
1:クライアント、11:Webブラウザ、2:Aサイトのシステム、21:PLサーバ、211:入力受付部、212:出力部、22:BLサーバ、221:判別部、222:業務処理部、223:転送部、23:DBサーバ、231:データ管理部、232:ユーザDB,233:振分テーブル、3:Bサイトのシステム、31:PLサーバ、32:BLサーバ、33:DBサーバ、4:Aサイト用DNSサーバ、41:名前解決部、42:監視部、43:名前解決テーブル、5:Bサイト用DNSサーバ、9:ネットワーク

Claims (4)

  1. 複数の業務システムを有し、クライアントからの要求を前記複数の業務システムに振り分けて処理を行う負荷分散システムであって、
    前記複数の業務システム各々は、
    ユーザIDと当該ユーザIDが属するグループとが記憶されたユーザDBと、
    前記各グループと、当該グループに割り当てられた前記業務システムを識別するためのシステム情報とが記憶された振分テーブルと、
    前記クライアントから、ユーザIDを含む要求を受け付ける要求受付手段と、
    前記ユーザDBおよび前記振分テーブルを参照し、前記要求受付手段が受け付けたユーザIDに対応するシステム情報を取得する取得手段と、
    前記取得手段が取得した前記システム情報が、自業務システムのシステム情報か否かを判別する判別手段と、
    自業務システムのシステム情報と判別した場合、前記要求に応じた処理を行う要求処理手段と、
    自業務システム以外の他業務システムのシステム情報と判別した場合、前記他業務システムに前記要求受付手段が受け付けた要求を転送するためのリダイレクト画面情報を生成し、前記クライアントに送信する転送手段と、を有し、
    各業務システムに接続されたネームサーバは、
    前記複数の業務システム各々のアドレス情報を記憶した名前解決テーブルと、
    前記複数の業務システムの稼動状態を監視する監視手段と、
    前記クライアントが送信した前記負荷分散システムの仮想アドレス情報を受け付け、前記名前解決テーブルに記憶された業務システムのアドレス情報の中から前記監視手段により正常に稼動していると判別されたアドレス情報を特定し、送信する名前解決手段と、を有すること
    を特徴とする負荷分散システム。
  2. 請求項1記載の負荷分散システムであって、
    前記名前解決テーブルは、前記業務システムのアドレス情報毎に、最初にアクセスするか否かを識別するための第1のフラグと、正常に稼動しているか否かを識別するための第2のフラグと、をさらに記憶し、
    前記監視手段は、前記複数の業務システムの稼動状態に応じて、前記名前解決テーブルの第2のフラグを更新し、
    前記名前解決手段は、前記仮想アドレス情報を受け付け、前記名前解決テーブルを参照して、前記第1のフラグがオンに設定されたアドレス情報の前記第2のフラグが正常の場合、当該アドレス情報を送信し、前記第1のフラグがオンに設定されたアドレス情報の前記第2のフラグが障害の場合、前記第2のフラグが正常な他のアドレス情報を送信すること
    を特徴とする負荷分散システム。
  3. 請求項1または請求項2記載の負荷分散システムであって、
    前記リダイレクト画面情報には、前記要求に含まれるユーザIDと、前記他業務システムのアドレス情報と、前記クライアントに実行させるプログラムと、が含まれ、
    前記プログラムは、前記クライアントに、前記リダイレクト画面情報のリダイレクト画面が前記クライアントの表示装置に表示されたことを検知して、前記他業務システムのアドレス情報を宛先として、前記要求を転送させること
    を特徴とする負荷分散システム。
  4. クライアントからの要求を複数の業務システムに振り分けて処理を行う負荷分散方法であって、
    前記複数の業務システム各々は、
    ユーザIDと当該ユーザIDが属するグループとが記憶されたユーザDBと、
    前記各グループと、当該グループに割り当てられた前記業務システムを識別するためのシステム情報とが記憶された振分テーブルと、処理部とを有し、
    前記処理部は、
    前記クライアントから、ユーザIDを含む要求を受け付ける要求受付ステップと、
    前記ユーザDBおよび前記振分テーブルを参照し、前記要求受付ステップで受け付けたユーザIDに対応するシステム情報を取得する取得ステップと、
    前記取得ステップで取得した前記システム情報が、自業務システムのシステム情報か否かを判別する判別ステップと、
    自業務システムのシステム情報と判別した場合、前記要求に応じた処理を行う要求処理ステップと、
    自業務システム以外の他業務システムのシステム情報と判別した場合、前記他業務システムに前記要求受付ステップで受け付けた要求を転送するためのリダイレクト画面情報を生成し、前記クライアントに送信する転送ステップと、を行い、
    各業務システムに接続されたネームサーバは、
    前記複数の業務システム各々のアドレス情報を記憶した名前解決テーブルを有し、
    前記複数の業務システムの稼動状態を監視する監視ステップと、
    前記クライアントが送信した仮想アドレス情報を受け付け、前記名前解決テーブルに記憶された業務システムのアドレス情報の中から前記監視ステップで正常に稼動していると判別されたアドレス情報を特定し、送信する名前解決ステップと、を行うこと
    を特徴とする負荷分散方法。
JP2005086882A 2005-03-24 2005-03-24 負荷分散システム、および負荷分散方法 Expired - Fee Related JP4451339B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005086882A JP4451339B2 (ja) 2005-03-24 2005-03-24 負荷分散システム、および負荷分散方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005086882A JP4451339B2 (ja) 2005-03-24 2005-03-24 負荷分散システム、および負荷分散方法

Publications (2)

Publication Number Publication Date
JP2006268559A JP2006268559A (ja) 2006-10-05
JP4451339B2 true JP4451339B2 (ja) 2010-04-14

Family

ID=37204440

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005086882A Expired - Fee Related JP4451339B2 (ja) 2005-03-24 2005-03-24 負荷分散システム、および負荷分散方法

Country Status (1)

Country Link
JP (1) JP4451339B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4960738B2 (ja) * 2007-03-28 2012-06-27 株式会社野村総合研究所 認証システム、認証方法および認証プログラム
JP7206070B2 (ja) * 2018-08-09 2023-01-17 株式会社エヌケービー 広告配信システム、コンピュータの動作方法、及びクラウドサーバ

Also Published As

Publication number Publication date
JP2006268559A (ja) 2006-10-05

Similar Documents

Publication Publication Date Title
CN101997903B (zh) 用于处理超文本传输协议请求的方法和系统
JP3980596B2 (ja) サーバを遠隔かつ動的に構成する方法およびシステム
US6598077B2 (en) System and method for dynamic content routing
CN101124565A (zh) 基于应用层消息的数据流量负载平衡
US20140149280A1 (en) Real-time multi master transaction
EP2140351B1 (en) Method and apparatus for cluster data processing
CN103973770A (zh) 信息处理系统
US7711518B2 (en) Methods, systems and computer program products for providing system operational status information
JP2008203939A (ja) ログ管理装置、ログ管理方法、プログラム、及び記録媒体
US10015086B2 (en) Multi GTM based routing to avoid latencies
US20060168079A1 (en) System and method for automatically connecting a client computer to a server
JP4451339B2 (ja) 負荷分散システム、および負荷分散方法
US7930404B2 (en) Cross-system log in a distributed system environment
US20080071916A1 (en) System and method for requesting a web service from a network server
US9606758B1 (en) System and method of connecting a computer to a printer
US9967308B2 (en) System and method for fault management in a service-oriented architecture
JP2005523520A (ja) 既存のシステム管理製品またはソフトウェア・ソリューションとのインターフェースを提供するシステムおよび方法
JP4728026B2 (ja) 負荷分散システム、および負荷分散方法
US20030131092A1 (en) System for sending messages to all users in a web hosting environment
CN102918811A (zh) 双向通信系统和用于该系统的服务器装置
JP2001282737A (ja) 業務負荷分散システム
JP5738506B2 (ja) 画面情報提供サーバ、プログラム
JP2008203942A (ja) ログ管理装置、ログ管理方法、プログラム、及び記録媒体
KR100597349B1 (ko) 지시 기술 변경 장치 및 방법, 지시 기술 변경 프로그램을기억한 기억 매체
US20020087879A1 (en) Method, system and program product for synchronous communication between a public electronic environment and a private electronic environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091013

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091211

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees