(57)【特許請求の範囲】
【請求項１】
テーブルが格納された記憶手段を備えたデータベースサーバと、このデータベースサーバにネットワークを介して接続された複数のアプリケーションサーバとを備え、
各アプリケーションサーバは、上記のテーブル対するデータ登録機能及び同テーブルの参照機能を有する共通の情報処理サービスをクライアント端末に提供するアプリケーションプログラムを備えており、
クライアント端末からのアクセスがあった場合に、ロードバランサによって何れかのアプリケーションサーバに振り分けられる仕組みのサービス提供システムにおいて、
上記データベースサーバに、サービスの機能拡張に必要な新たなテーブルを追加すると共に、
上記複数のアプリケーションサーバの中の一部のアプリケーションサーバを一時的に停止させ、上記の新たなテーブルにアクセスする機能を備えた新たなアプリケーションプログラムを追加した上で、クライアント端末に対し、従来のテーブルに対するデータ登録機能、従来のテーブル及び新たなテーブルの参照機能、及び新たなテーブルに対するデータ登録機能を備えた新サービスの提供を開始させる一方、
従来のアプリケーションプログラムを搭載したアプリケーションサーバに接続してきたクライアント端末に対しては、従来のテーブルに対するデータ登録機能及び同テーブルの参照機能からなる従来のサービスを継続して提供し、
順次、新たなアプリケーションプログラムを搭載したアプリケーションサーバの構成比率を高めていくことを特徴とするサービス提供システムの機能拡張方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はサービス提供システムの機能拡張方法に係り、特に、複数のアプリケーションサーバが同一のデータベースに基づく同一のサービスをクライアントに提供している場合に、当該サービスを停止することなく機能を拡張する技術に関する。
【背景技術】
【０００２】
大手通販サイトなどのように、多数のユーザに対して複数のデータベース（ユーザDB、商品DB、在庫DB、注文DB等）に基づく情報処理サービスを提供している大規模システムにおいては、データベースを管理するサーバ（以下「DBサーバ」）に対して複数のアプリケーションサーバ（以下「APサーバ」）が負荷分散のために接続されており、各ユーザに対し複数のAPサーバを介して共通のサービスが提供されている。
【非特許文献１】Wikipedia／アプリケーションサーバ  インターネットURL：http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%B5%E3%83%BC%E3%83%90  検索日：２０１０年１０月５日
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このようなDBサーバと複数のAPサーバとの連携を前提とする大規模なサービス提供システムにおいては、途中で機能の拡張を行う場合（例えば、認証チェック項目を追加して安全性を高める場合等）には、DBサーバ側のテーブル構成を変更すると同時に、各APサーバ側のアプリケーションプログラムも一斉に変更する必要があるため、サービスを一時的に休止せざるを得ないという問題があった。
【０００４】
この発明は、従来のこのような問題を解決するものであり、複数のAPサーバによって共通のサービスが提供されるシステムにおいて、サービスを休止することなく機能を拡張（追加）することを可能とする技術を提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記の目的を達成するため、請求項１に記載したサービス提供システムの機能拡張方法は、テーブルが格納された記憶手段を備えたデータベースサーバと、このデータベースサーバにネットワークを介して接続された複数のアプリケーションサーバとを備え、各アプリケーションサーバは、上記のテーブル対するデータ登録機能及び同テーブルの参照機能を有する共通の情報処理サービスをクライアント端末に提供するアプリケーションプログラムを備えており、クライアント端末からのアクセスがあった場合に、ロードバランサによって何れかのアプリケーションサーバに振り分けられる仕組みのサービス提供システムにおいて、上記データベースサーバに、サービスの機能拡張に必要な新たなテーブルを追加すると共に、上記複数のアプリケーションサーバの中の一部のアプリケーションサーバを一時的に停止させ、上記の新たなテーブルにアクセスする機能を備えた新たなアプリケーションプログラムを追加した上で、クライアント端末に対し、従来のテーブルに対するデータ登録機能、従来のテーブル及び新たなテーブルの参照機能、及び新たなテーブルに対するデータ登録機能を備えた新サービスの提供を開始させる一方、従来のアプリケーションプログラムを搭載したアプリケーションサーバに接続してきたクライアント端末に対しては、従来のテーブルに対するデータ登録機能及び同テーブルの参照機能からなる従来のサービスを継続して提供し、順次、新たなアプリケーションプログラムを搭載したアプリケーションサーバの構成比率を高めていくことを特徴としている。
【発明の効果】
【０００６】
この発明に係るサービス提供システムの機能拡張方法によれば、機能の拡張に伴いデータベースサーバが管理している従来のテーブルに変更を加えるのではなく、拡張機能の提供に必要な新たなテーブルが追加される方式であるため、全てのアプリケーションサーバ側のプログラムを同時にバージョンアップすることなく、部分的にバージョンアップを行うことが可能となる。
この結果、バージョンアップ後のアプリケーションサーバに接続したクライアント端末に対しては拡張された機能のサービスを提供することができると同時に、バージョンアップ前のアプリケーションサーバに接続したクライアント端末に対しても、少なくとも従来通りのサービスを提供することが可能となり、サービスの休止期間が生じることを有効に回避できる。
【発明を実施するための最良の形態】
【０００７】
図１は、この発明が適用されるサービス提供システム10を示すブロック図であり、複数のAPサーバ12と、ネットワークを介して各APサーバ12と接続されたDBサーバ14を備えている。
DBサーバ14は、DB管理システム16と、複数のテーブル18を備えている。
【０００８】
このサービス提供システム10には、インターネット等のネットワーク20を介して多数のクライアント端末22が接続されており、各クライアント22端末からのアクセスは、ロードバランサ24によって各APサーバ12に振り分けられる仕組みを備えている。
【０００９】
図２及び図３は、この発明に係るサービス提供システム10の機能拡張方法を、従来方式との対比に基づいて説明するものである。
まず、図２(a)に示すように、これまで「ユーザID」と「ユーザ名」のデータ項目を備えたユーザ管理テーブル50によってユーザ情報を管理していたところ、ブラックリストへの掲載の有無をも管理項目として追加する必要性が生じた場合に、ユーザ管理テーブル50に「ブラックリストフラグ」のデータ項目を増設して新ユーザ管理テーブル50'となし、当該データ項目に「１／０」等のフラグ値を格納するように変更するのが、従来の方式である。
【００１０】
これに対しこの発明の場合には、図２(b)に示すように、ユーザ管理テーブル50はそのままにしておき、新たにブラックリスト管理テーブル52を追加し、ブラックリストに掲載されたユーザのユーザIDのみを、このブラックリスト管理テーブル52の一レコードとして登録することによって対応する。
すなわち、特定ユーザのブラックリストへの掲載の有無が、ブラックリスト管理テーブル52におけるレコードの有無として表現されることになる。
【００１１】
図３はAPサーバ12側の機能構成を示す模式図であり、図３(a)に示すように、「ユーザID」及び「ユーザ名」のみを備えた機能拡張前のユーザ管理テーブル50に基づく場合には、ユーザ登録処理部54が新規ユーザのレコードの登録をDBサーバ14に依頼すると共に、ユーザ認証処理部56がユーザIDとユーザ名を指定した問合わせをDBサーバ14に行い、ユーザの正当性をチェックしていた。
【００１２】
これに対し図３(b)は、ユーザ管理テーブル50に「ブラックリストフラグ」のデータ項目を追加した新ユーザ管理テーブル50'に基づいて機能の拡張を図る従来の方式を示しており、ユーザ管理テーブルにデータ項目が増えたことから、ユーザ登録処理部及びユーザ認証処理部用のプログラムもバージョンアップされ、新ユーザ登録処理部58及び新ユーザ認証処理部60が用いられている。
【００１３】
図３(c)は、ユーザ管理テーブル50とは別にブラックリスト管理テーブル52を増設するこの発明の方式を示しており、APサーバ12側にはブラックリスト掲載ユーザをブラックリスト管理テーブル52に登録する機能を備えたブラックリスト登録処理部64が新設されると共に、ユーザ認証処理部用のプログラムについても、両テーブル50, 52を参照するように修正する必要が生じ、新ユーザ認証処理部66が形成されている。ただし、ユーザ管理テーブル50には一切の変更がないため、ユーザ登録処理部54については改変の必要がなく、従来のものをそのまま利用される。
【００１４】
図４は、この認証機能のバージョンアップを複数のAPサーバ12及びDBサーバ14に対して施す際の、この発明による手順を示す模式図である。
まず、予めユーザ管理テーブル50を備えていたDBサーバ14に対して、ブラックリスト管理テーブル52を増設する。
つぎに、第１のAPサーバ12aの動作を一時的に停止した後、バージョンアップ済みのユーザ認証処理部用のアプリケーションプログラムと、新たに開発したブラックリスト登録処理部用のアプリケーションプログラムをセットアップし、新ユーザ認証処理部66及びブラックリスト登録処理部64を実現する。
【００１５】
この間、第２のAPサーバ12b及び第３のAPサーバ12cは通常通り稼働中であり、DBサーバ14側も従来と同じユーザ管理テーブル50を備えているため、ロードバランサ24によって両サーバに振り分けられたクライアント端末22に対しては、従来通りのサービスが継続して提供される。
すなわち、第２のAPサーバ12bにユーザがアクセスし、ユーザIDとユーザ名を入力した場合に、ユーザ認証処理部56はユーザ管理テーブル50を参照して当該ユーザの正当性をチェックし、認証OKであればログインが認められる。
【００１６】
そして、第１のAPサーバ12aに対する機能拡張作業が完了した時点で、第１のAPサーバ12aを介した新サービスが開始される。すなわち、第１のAPサーバ12aにユーザがアクセスし、いつも通りにユーザIDとユーザ名を入力した場合に、新ユーザ認証処理部66はユーザ管理テーブル50を参照して当該ユーザの正当性をチェックすると同時に、ブラックリスト管理テーブル52をも参照し、当該ユーザがブラックリストに掲載されているか否かを確認する。そして、当該ユーザがユーザ管理テーブル50に記録されている正当なユーザであったとしても、ブラックリスト管理テーブル52に登録されていることを理由に、ログインが拒絶されることとなる。
【００１７】
上記のように、DBサーバ14側に従来と変わらないユーザ管理テーブル50が備えられているため、バージョンアップ前のAPサーバ12b, 12cにアクセスしたユーザに対しては従来通りの認証処理を実行すると同時に、バージョンアップが完了したAPサーバ12aにアクセスしたユーザに対しては、ブラックリスト管理テーブル52のチェック工程を追加した最新の認証処理を実行することが可能となる。
このようにして、順次バージョンアップ済みのAPサーバ12の構成比率を高めていくことにより、サービスの停止期間を一切生じさせることなく、システム全体のバージョンアップを段階的に実現することが可能となる。
【００１８】
これに対し、DBサーバ14のユーザ管理テーブル50に「ブラックリストフラグ」のデータ項目を追加する従来の手法を適用する場合には、すべてのAPサーバ12のユーザ認証処理部56を新ユーザ認証処理部58にバージョンアップさせる必要が生じ、一時的に全サービスの停止期間が発生することになる。
【図面の簡単な説明】
【００１９】
【図１】この発明が適用されるサービス提供システムを示す模式図である。
【図２】従来における既存テーブルに対するデータ項目の追加方式と、この発明におけるテーブルの追加方式との比較図である。
【図３】APサーバ側の機能拡張に関する、従来例とこの発明との比較図である。
【図４】この発明に係るサービス提供システムの機能拡張方法を示す模式図である。
【符号の説明】
【００２０】
10    サービス提供システム
12    APサーバ
14    DBサーバ
16    DB管理システム
18    テーブル
20    ネットワーク
22    クライアント端末
24    ロードバランサ
50    ユーザ管理テーブル
50'    新ユーザ管理テーブル
52    ブラックリスト管理テーブル
54    ユーザ登録処理部
56    ユーザ認証処理部
58    新ユーザ登録処理部
60    新ユーザ認証処理部
64    ブラックリスト登録処理部
66    新ユーザ認証処理部
【図１】
0005530893.tif 000002
【図２】
0005530893.tif 000003
【図３】
0005530893.tif 000004
【図４】
0005530893.tif 000005