JP4756001B2 - 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム - Google Patents

情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム Download PDF

Info

Publication number
JP4756001B2
JP4756001B2 JP2007035715A JP2007035715A JP4756001B2 JP 4756001 B2 JP4756001 B2 JP 4756001B2 JP 2007035715 A JP2007035715 A JP 2007035715A JP 2007035715 A JP2007035715 A JP 2007035715A JP 4756001 B2 JP4756001 B2 JP 4756001B2
Authority
JP
Japan
Prior art keywords
information
registration information
registration
program interface
screen
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.)
Active
Application number
JP2007035715A
Other languages
English (en)
Other versions
JP2008198158A (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.)
Rakuten Group Inc
Original Assignee
Rakuten Inc
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 Rakuten Inc filed Critical Rakuten Inc
Priority to JP2007035715A priority Critical patent/JP4756001B2/ja
Priority to US12/068,906 priority patent/US7925934B2/en
Publication of JP2008198158A publication Critical patent/JP2008198158A/ja
Application granted granted Critical
Publication of JP4756001B2 publication Critical patent/JP4756001B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ネットワークを介して端末装置からの要求に応じて、ユーザに対して提示される情報の画面を構成する画面情報を、データベースに登録された情報に基づいて生成し、当該画面情報を端末装置に提供する情報提供システム、情報提供装置、当該情報提供装置における適正判定情報生成方法及び適正判定情報生成処理プログラムの技術分野に関する。
従来から、インターネットに接続されたパーソナルコンピュータ等の端末装置からのリクエストに応じて、データベースに登録されているデータに基づきWebページを生成し、このWebページを端末装置に提供する情報提供システムが知られている。
こうしたシステムは、例えば、特許文献1に記載の発明のように、Webサーバと、RDBMS(Relational DataBase Management System)等のデータベース管理システム(以下、単に「DBMS」という)が組み込まれたデータベースサーバとにより構成されている。Webサーバは、端末装置からのリクエストを受信すると、Webサーバプログラムから、ODBC(Open Database Connectivity)やJDBCといったAPI(Application Program Interface)を通じてSQL(Structured Query Language)を発行することにより、DBMS(データベースサーバ)からデータを取得する。そして、Webサーバは、取得されたデータに基づいてWebページを生成し、当該Webページを端末装置に送信する。このようにして、Webサーバにより提供されるWebページの集合は、Webサイトと呼ばれている。
ところで、インターネットの入り口ともいうべきWebサイトとして、例えば、Infoseek(登録商標)等のように、検索エンジンやWebディレクトリ、その他各種情報を提供するポータルサイトが知られている。このポータルサイトのトップページは、インターネットショッピング、オークション、宿泊施設の予約、ブログ、ニュース、株価情報等の各種サービスへの窓口として重要な位置を占めている。そのため、このトップページは、各サービス毎に、その一部の情報を表示している(例えば、お勧めの商品やブログの紹介、ニュースの見出し、ユーザが予め登録しておいた企業の株価情報等)。これらの情報は夫々データベースに登録され、且つ随時更新される。従って、Webサーバは、端末装置からのリクエストを受信する毎に、データベースからデータを取得してトップページを生成する。
しかしながら、ポータルサイトのトップページに対するアクセス数は、1日に何百万、何千万という膨大な数に上るため、リクエスト毎にデータベースにアクセスしていたのでは、Webサーバやデータベースサーバの負荷が過大となり、端末装置への応答が遅延するおそれがある。
そこで、こうしたポータルサイトでは、キャッシュ(cache)を用いて遅延を防止することが一般的に行われている。
具体的には、例えば、データベースから取得されたデータはキャッシュに格納され(以下、キャッシュに格納されているデータを「キャッシュデータ」とも称する)、有効期限(例えば、キャッシュに格納されてから3分間)が設定されている。Webサーバは、端末装置からリクエストを受信すると、先ず、キャッシュの有効期限が経過しているか否かを判別する。Webサーバは、有効期限が経過していない場合には、キャッシュデータを読み出す一方、有効期限が経過している場合には、APIに対してデータの取得を指令する。そして、APIを通じてデータを取得することができた場合には、キャッシュデータを更新するとともに、改めて有効期限を設定する。ポータルサイトのトップページに表示されるような情報は、データベースにおけるデータの更新を即時に反映させなければならないものは一般的には少ないため、有効期限内であれば、キャッシュに格納されたデータを用いてWebページを生成することで、データベースへのアクセス数を減らして、負荷をかけることなく迅速に端末装置に対して応答することができる。
ただし、APIにおける処理遅延やDBMSにおける処理遅延等が発生したためにタイムアウト等のエラーを検出し、データベースからデータを取得することができなかった場合には、キャッシュの有効期限を延長し、このキャッシュに現在格納されているキャッシュデータを用いてWebページを生成する。このようにして、Webサーバは、一部のトラブルが発生しても、情報を欠落させることなく、確実にトップページを端末装置に送信する。
特開2002−342086号公報
しかしながら、エラーが検出された場合には、更新される前の古いデータに基づいた一部の情報がトップページに表示されてしまうため、適正に(あるいは、正常に)トップページが生成されたとはいえない。従って、このような事態が多発する場合には、トラブルの原因を調査して、システムを増強する必要がある。
ところが、ポータルサイトのトップページは、上述したようにインターネットの入り口となって重要な位置を占めることから、一部のデータがトラブルによって取得できなかったことにより、トップページが適正に生成できなかったとしても、端末装置に対して異常応答(例えば、HTTP(Hyper Text Transfer Protocol)ステータスコード404を送信)をすることは許容されるべきではないから、トップページは適正に生成されたと扱い、端末装置に対して正常応答しなければならない(例えば、HTTPステータスコード200を送信する)。こうしたことから、ポータルサイトの管理者等は、真に適正なトップページが生成されているか否かを知る手段がなかった。
本発明は、以上の点に鑑みてなされたものであり、データベースに登録された登録情報を、キャッシュ等が設定された記憶手段に記憶し、端末装置からの要求に応じて、記憶手段に記憶された登録情報の有効期限に基づいて当該登録情報を更新しながら、登録情報に基づきWebページ等の画面情報を生成して端末装置に送信する情報提供システムにおいて、当該画面情報が適正に生成されているか否かを知ることを可能とす情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラムを提供することを目的とする。
上記課題を解決するために、請求項に記載の発明は、データベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段と、ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報を受信する要求情報受信手段と、前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別手段と、前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新手段と、前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成手段と、前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信手段と、前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出手段と、前記取得エラー検出手段による前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成手段と、を備えることを特徴とする。
この発明によれば、情報提供装置は、端末装置から要求情報を受信すると、登録情報記憶手段に記憶されている登録情報の有効期限が経過しているか否かを判別する。このとき、情報提供装置は、有効期限が経過していない場合には、登録情報記憶手段に記憶されている登録情報を用いて画面情報を生成する。一方、情報提供装置は、有効期限が経過している場合には、プログラムインタフェースを通じて、データベースに登録されている登録情報をデータベース管理システムから取得し、当該取得された登録情報で、登録情報記憶手段に記憶されている登録情報を更新するとともに、当該取得された登録情報を用いて画面情報を生成する。ただし、情報提供装置は、取得エラーを検出して、プログラムインタフェースを通じて登録情報を取得できなかった場合には、登録情報記憶手段に記憶されている登録情報を用いて画面情報を生成する。そして、情報提供装置は、生成された画面情報を端末装置に送信する。また、情報提供装置は、登録情報の取得の指令に対し、プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、データベース管理システムから応答がなかった場合のタイムアウトエラーとを、取得エラーとして検出する。そして、情報提供装置は、画面情報に対する端末装置からの総アクセス数と取得エラーの検出数とに基づいて、取得エラーが検出されることなくして画面情報が生成された場合を当該画面情報が適正に生成されたものとして、画面情報が適正に生成された率を示す適正判定情報を生成する。
従って、たとえ、プログラムインタフェースを通じて登録情報を取得できなかったことにより、登録情報記憶手段に記憶されている有効期限の経過した登録情報を用いて画面情報を生成し、当該画面情報を端末装置に送信することで、端末装置の画面には適正な情報が表示されるように見えるような場合であっても、当該画面情報が真に適正に生成されているか否かを知ることができる。
請求項に記載の発明は、請求項に記載の情報提供装置において、前記適正判定情報生成手段は、前記データベース管理システムから応答がなかった場合のタイムアウトエラーの検出数を示す第1エラー数情報と、前記プログラムインタフェースから応答がなかった場合のタイムアウトエラーの検出数を示す第2エラー数情報と、を含む前記適正判定情報を生成することを特徴とする。
この発明によれば、取得エラー数として、データベース管理システムから応答がなかった場合のタイムアウトエラーの検出数と、プログラムインタフェースから応答がなかった場合のタイムアウトエラーの検出数とを得ることができるので、システム増強等の対応を、データベース及びデータベース管理システムが組み込まれたシステムに対して施せば良いのか、あるいは、プログラムインタフェースが組み込まれたシステムに対して施せば良いのか、を判断することができる。
請求項に記載の発明は、データベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段を備える情報提供装置における適正判定情報生成方法であって、ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報を受信する要求情報受信工程と、前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別工程と、前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新工程と、前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成工程と、前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信工程と、前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出工程と、前記取得エラー検出工程における前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成工程と、を備えることを特徴とする。
請求項に記載の発明は、データベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段を備える情報提供装置に含まれるコンピュータを、ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報を受信する要求情報受信手段、前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別手段、前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新手段、前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成手段、前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信手段、前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出手段、及び、前記取得エラー検出手段による前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成手段、として機能させることを特徴とする。
本発明によれば、たとえ、プログラムインタフェースを通じて登録情報を取得できなかったことにより、登録情報記憶手段に記憶されている有効期限の経過した登録情報を用いて画面情報を生成し、当該画面情報を端末装置に送信することで、端末装置の画面には適正な情報が表示されているように見えるような場合であっても、当該画面情報が真に適正に生成されているか否かを知ることができる。
以下、図面を参照して本発明の最良の実施形態について詳細に説明する。なお、以下に説明する実施の形態は、ポータルサイトシステムに対して本発明を適用した場合の実施形態である。
[1.ポータルサイトシステムの構成及び機能概要]
先ず、本実施形態に係るポータルサイトシステムSの構成及び機能概要について、図1乃至図4を用いて説明する。
図1は、本実施形態に係るポータルサイトシステムSの概要構成の一例を示す図である。
図1に示すように、ポータルサイトシステムSは、情報提供装置の一例としてのWebサーバ1と、データベース2−j(j=1,2・・・m)を夫々備える複数のデータベースサーバ3―jと、端末装置の一例としてのユーザ端末4−k(k=1,2・・・n)と、を含んで構成されている。
Webサーバ1とユーザ端末4−kとは、ネットワークNWを介して、例えば、通信プロトコルにTCP/IP(Transmission Control Protocol/Internet Protocol)等を用いて相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築されている。また、Webサーバ1と各データベースサーバ3−jとは、例えば、LAN(Local Area Network)を介して相互にデータの送受信が可能になっている。
このような構成のポータルサイトシステムSにおいて、Webサーバ1は、ネットワークNWを通じて各種のサービスを提供するサービス提供事業者によりポータルサイトを開設するために設置されたサーバ装置である。
このポータルサイトは、例えば、Webページ等の検索、インターネットショッピング、オークション、宿泊施設の予約、ニュース、天気予報、テレビ番組表、Webメール、株価情報、SNS(Social Networking Service)、Webディレクトリ、ブログ等の各種サービスを、ユーザ端末4−kのユーザに提供している。具体的には、ネットワークNWを介してユーザ端末4−kからのリクエストに応じて、Webサーバ1がWebページ(以下、単に「ページ」ともいう)を当該ユーザ端末4−kに送信することにより、このWebページにより提示される情報等を通じて各種サービスが提供される。なお、サービスによっては(例えば、インターネットショッピング、オークション、宿泊施設の予約、SNS、ブログ等)、Webサーバ1ではなく、他のWebサーバにユーザ端末4−kがアクセスすることにより提供されるが、図1においては、これらのサーバ装置についての図示を省略している。
Webサーバ1は、上述した各種サービスを提供するために、画面情報の一例としての後述するトップページ200(図2参照)を生成し、当該ページをユーザ端末4−kに提供(送信)している。
次に、データベースサーバ3−jは、夫々データベース2−jを管理するサーバ装置である。具体的に、データベースサーバ3−jは、Webサーバ1や図示せぬサーバ装置等からのリクエストに応じて、データベース2−jに対して、データ(登録情報の一例)の新規登録、更新、取得等の処理を行うようになっている。
データベース2−1〜2−mには、夫々所定のサービスを提供するためのデータが登録されている。例えば、検索用データベースにはWebページ等を検索するためのWebページに関するデータが登録され、オークションデータベースには、出品されている商品や取引状況等に関するデータが登録され、ニュース情報データベースにはニュースに関するデータが登録されている。なお、ポータルサイトにおいて、一部のサービス(例えば、インターネットショッピング、オークション、宿泊施設の予約、SNS等)を利用するために、ユーザは、ポータルサイトシステムSの会員登録手続きを行わなければならいが、会員として登録されたユーザに関する情報(以下、「会員情報」という)もデータベース2−jに登録されている。
次に、ユーザ端末4−kは、Webサーバ1にアクセスし、Webページを取得して画面に表示し、当該Webページを通じて各種情報の閲覧や各種サービスを利用するためにユーザが用いる端末装置であり、例えば、Webブラウザアプリケーションや電子メールアプリケーション等がインストールされたパーソナルコンピュータ、PDA(Personal Digital Assistant)、STB(Set Top Box)、携帯電話機等を適用することができる。
図2は、本実施形態に係るWebサーバ1により提供されるポータルサイトのトップページ200の表示例を示す図である。
図2に示すように、トップページ200には、Web検索エリア201、リンク集表示エリア202、ニュース見出しエリア203、天気予報表示エリア204、Webディレクトリ表示エリア205、訪問回数表示エリア206、ニュースクリッピング表示エリア207、テレビ番組クリッピング表示エリア208、ブログ紹介エリア209等が設けられている。
Web検索エリア201には、Webページ等の検索を行うためのキーワードを入力するためのフォームやボタン等が設けられている。また、リンク集表示エリア202には、各サービスのページへのリンクが設けられている。また、ニュース見出しエリア203には、最新のニュースの一部の見出しを表示するとともに、見出しのニュースを表示するページへのリンクが設けられている。また、天気予報表示エリア204には、会員情報として登録されている住所から求められるユーザが住んでいる地域の明日の天気予報等が表示される。また、Webディレクトリ表示エリア205には、Webディレクトリに登録されているWebサイトを検索するために、当該Webサイトを分類したカテゴリ毎のページへのリンクが設けられている。
また、訪問回数表示エリア206には、会員情報として登録されているユーザのニックネームと、訪問回数として当該ユーザが当該月においてトップページを閲覧した回数とが表示される。また、ニュースクリッピング表示エリア207には、所定のキーワードと、このキーワードに関連するニュースの件数を表示するとともに、当該関連するニュースの一覧を表示するページへのリンクが設けられている。また、テレビ番組クリッピング表示エリア208には、所定のキーワードと、このキーワードに関連するテレビ番組の件数を表示するとともに、当該関連する番組の一覧を表示するページへのリンクが設けられている。また、ブログ紹介エリア209には、最新のブログや注目のブログの紹介説明を表示するとともに、当該ブログのページへのリンクが設けられている。
各エリアに表示される情報は、例えば、エリア毎に個別にデータベース2−jから取得される情報である。例えば、ニュース見出しエリア203に表示される見出しや、ニュースクリッピング表示エリア207に表示されるニュースの件数に関するデータは、ニュース情報データベースから取得される。また、天気予報表示エリア204に表示される天気予報に関するデータは、天気予報情報データベースから取得される。また、訪問回数表示エリア206に表示されるニックネームや訪問回数は会員情報データベースから取得される。また、テレビ番組クリッピング208に表示されるテレビ番組の件数に関するデータは、テレビ番組表情報データベースに登録されている。また、ブログ紹介エリア209に表示されるブログの紹介に関するデータは、ブログ情報データベースに登録されている。
ここで、Webサーバ1は、ユーザ端末4−kからのリクエストに応じてトップページ200を生成するために、データベース2−jに登録されている各データを、データベースサーバ3−jから取得するようにしているが、各サーバの負荷を軽減させるため、Webサーバ1において、データベース毎に対応してキャッシュを設けている。Webサーバ1は、キャッシュにデータベースサーバ3―jから取得されたデータを格納しておき、当該格納されたデータを用いてトップページ200を生成するようにしている。
ただし、ニックネームや訪問回数等のように、ユーザ毎に内容が異なるデータについては、全ユーザに対してキャッシュを用意しなければならず、記憶容量等の面から非効率となるため、こうしたデータについては、キャッシュは設けられていない。従って、Webサーバ1は、こうしたデータについては、ユーザ端末4−kからのリクエストを受信する度にデータベースサーバ3−jから取得するようになっている。
図3は、本実施形態に係るポータルサイトシステムSの機能構成の概要例を示すブロック図である。
図3に示すように、データベースサーバ3−1〜3−mには、夫々データベース2−1〜2―mを管理するためのソフトウエアであるデータベース管理システムの一例としてのDBMS―1〜mが組み込まれている。
一方、Webサーバ1には、適正判定情報生成処理プログラムの一例としてのWebサーバプログラムが組み込まれている。Webサーバプログラムは、ユーザ端末4−kからのリクエストを受信して、当該リクエストに応じてWebページを生成等し、当該ページをユーザ端末4−kに送信するためのプログラムであり、例えば、HTTPd(HyperText Transfer Protocol Daemon)等を適用することができる。また、Webサーバ1には、データベース2−1〜2―mに夫々対応して、キャッシュ1〜mが設けられているとともに、プログラムインタフェースの一例としてのデータ取得API1〜mが組み込まれている。
なお、図示はしていないが、前述したように、ユーザ毎に内容が異なるデータについてはキャッシュが設けられていないため、これらのデータに対してはデータ取得APIのみが組み込まれている。
データ取得API―jは、Webサーバプログラムからの指令に基づいて問い合わせ情報の一例としてのSQLコマンドを出力し、対応するDBMS―j(データベースサーバ3−j)に送信するとともに、当該SQLコマンドの出力に対応してDBMS―jから送信されてきたデータを取得して、当該データをWebサーバプログラムへ引き渡すためのミドルウエアである。また、データ取得API―jは、このミドルウエアとWebサーバプログラムとの間のインタフェースでもあり、例えば、ODBCやJDBC等を適用することができる。
Webサーバプログラムは、上述したようにキャッシュjに格納されているキャッシュデータ(登録情報記憶手段に記憶されている登録情報の一例)を用いてトップページ200を生成するが、有効期限が経過している(切れている)キャッシュデータが存在する場合には、当該キャッシュデータに対応するデータ取得API−jにデータの取得を指令し、データ取得API−jによりデータベース2−jから取得されたデータを用いてトップページ200を生成するとともに、当該取得されたデータでキャッシュデータを更新するようにプログラムされている。
ここで、Webサーバプログラムは、データ取得API−jまたはDBMS―jにおいてエラーが発生し、データ取得API−jを通じてデータを取得することができなかった場合には、キャッシュjに格納されているキャッシュデータを用いてトップページ200を生成するとともに、キャッシュデータの期限を延長するようにプログラムされている。このときに生成されるトップページ200は、一部古いデータに基づいて生成されているため、当該ページが適正に生成されているとはいいがたい。そこで、本実施形態においては、Webサーバ1において、トップページ200が適正に生成されているか否かを判定し、システムを増強する判断材料とするための情報としてAPI稼働集計情報を収集している。
図4は、本実施形態に係るWebサーバ1において収集されるAPI稼働集計情報の一例を示す図である。
図4に示すように、API稼働集計情報として、総アクセス数、総APIコール数、キャッシュリクエスト数、エラー数(取得エラー数情報の一例)、最大レスポンスタイム、最小レスポンスタイム、平均レスポンスタイムを、データ取得API―j毎に収集する。
総アクセス数は、ページビュー数、すなわち、ユーザ端末4−kからのトップページ200のリクエスト数である。また、総APIコール数は、Webサーバプログラムからデータ取得API―jを呼び出した回数、すなわち、データ取得API―jに対して、データベース2−jに登録されたデータの取得を指令した回数である。また、キャッシュリクエスト数は、キャッシュjに格納されているキャッシュデータをWebサーバプログラムから読み出した回数である。このキャッシュリクエスト数には、キャッシュjの有効期限が経過していないときにキャッシュデータを読み出した回数と、データ取得API−jを通じてデータベース2−jに登録されているデータを取得することができなかったために、有効期限が経過したキャッシュjからキャッシュデータを読み出した回数とが含まれている。
エラー数は、データ取得API―jの呼び出し対して、当該データ取得API―jからデータを引き渡すことができなかった回数、すなわち、データベース2−jに登録されているデータを取得できなかった回数である。このエラー数は、データベースエラー数とAPIエラー数との合計値となっている。APIエラー数は、Webサーバプログラムからのデータ取得API―jに対するデータ取得の指令に対して、所定時間内にデータ取得API―jからの応答がなかった場合のタイムアウトエラーを、APIエラーとして扱った回数である。また、データベースエラー数は、データ取得API―jからのDBMS―jに対する問い合わせ(SQLコマンドの出力)に対して、所定時間内にDBMS―jからの応答がなかった場合のタイムアウトエラーをデータベースエラーとして扱った回数である。
レスポンスタイムは、Webサーバプログラムがデータ取得API―jに対してデータの取得を指令してから、当該データ取得API―jがWebサーバプログラムに対してデータを引き渡すまでの時間であり、最大レスポンスタイム、最小レスポンスタイム及び平均レスポンスタイムは、夫々これまでに収集されたレスポンスタイムの最大値、最小値、平均値である。なお、本実施形態においては、APIエラー及びデータベースエラーが検出された場合のレスポンスタイム(この場合は、Webサーバプログラムがデータ取得API―jに対してデータの取得を指令してから、エラーが検出されるまでの時間)を取得しないが、このときのレスポンスタイムを取得し、最大、最小及び平均の各レスポンスタイムに反映させても良い。
[2.Webサーバの構成及び機能]
次に、Webサーバ1の構成及び機能について、図5を用いて説明する。
図5は、本実施形態に係るWebサーバ1の概要構成の一例を示すブロック図である。
図5に示すように、Webサーバ1は、操作部11と、表示部12(例えば、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ等)と、通信部13と、ドライブ部14と、記憶部15と、入出力インタフェース部16と、システム制御部20と、を備えている。システム制御部20と入出力インタフェース部16とは、システムバス21を介して接続されている。
操作部11は、例えば、キーボード、マウス等であり、オペレータ等からの操作指示を受け付け、その指示内容を指示信号としてシステム制御部20に出力する。表示部12は、例えば、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ等であり、文字や画像等の情報を表示する。通信部13は、ネットワークNW等に接続して、データベースサーバ3−j、ユーザ端末4−k等との通信状態を制御する。ドライブ部14は、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)等のディスクDKからデータ等を読み出す一方、当該ディスクDKに対してデータ等を記録する。また、記憶部15は、例えば、ハードディスクドライブ等であり、各種プログラム及びデータ等を記憶する。入出力インタフェース部16は、操作部11〜記憶部15とシステム制御部20との間のインタフェース処理を行う。システム制御部20は、CPU(Central Processing Unit)17、ROM(Read Only Memory)18、RAM(Random Access Memory)19等を備える。
記憶部15には、データ取得API―1〜m夫々に対応するAPI稼働集計情報が、例えば、1時間毎、1日毎、1週間毎、1ヶ月毎というように、期間毎に分けて記憶される。
また、記憶部15には、その記憶領域上に、キャッシュ1〜mが設定(各キャッシュデータを格納するための領域が確保)されている。また、記憶部15には、キャッシュ1〜mに夫々対応してキャッシュjの有効期限(キャッシュjに格納されているデータの有効期限)が記憶されるようになっている。この有効期限は、キャッシュjに格納されているキャッシュデータを用いてトップページ200を生成することができる期限(日時等)を示している。データの性質(データベース3−jにおける更新をキャッシュjに反映させる時間間隔を短くした方が良いデータであるのか、長くしても良いデータであるのか等)に応じて、キャッシュjにデータがキャッシュデータとして格納されてから、当該キャッシュデータが無効となるまでの期間が予め定められており(つまり、キャッシュj毎に有効期限が切れるまでの期間を変えることができる)、当該期間に基づいて有効期限が設定される。
更に、記憶部15には、所定のオペレーティングシステム、上述したWebサーバプログラム、データ取得API―j等が記憶されている。なお、記憶部15は、本実施形態において、登録情報記憶手段の一例を構成する。
なお、各種プログラム等は、例えば、他のサーバ装置等からネットワークNWを介して取得されるようにしても良いし、CD−ROM等のディスクDKに記録されてドライブ部14を介して読み込まれるようにしても良い。
システム制御部20は、本実施形態において、要求情報受信手段、期限経過判別手段、登録情報取得・更新手段、取得エラー検出手段、画面情報生成手段、画面情報送信手段及び適正判定情報生成手段の一例を構成している。
そして、システム制御部20は、CPU17が、ROM18や記憶部15に記憶された各種プログラムを読み出し実行することによりWebサーバ1の各部を制御するとともに、上述した各手段等として機能するようになっている。
この各手段等としての機能について説明すると、要求情報受信手段及び期限経過判別手段としてのシステム制御部20は、ユーザ端末4−kから送信されたトップページリクエスト(要求情報の一例)を受信すると、キャッシュjに対して設定されている有効期限が経過しているか否かを判別するようになっている。
登録情報取得・更新手段としてのシステム制御部20は、キャッシュjの有効期限が経過していると判別した場合には、当該キャッシュjに対応するデータ取得API―jに対してデータの取得を指令することにより当該データ取得API―jを起動させ、当該データ取得API―jを通じて、対応するデータベース2−jに登録されているデータをデータベース管理システム3−jから取得し、当該取得されたデータで、対応するキャッシュjを更新するようになっている。
取得エラー検出手段としてのシステム制御部20は、データ取得API―jを通じたデータ取得のエラーを検出するようになっている。具体的に、システム制御部20は、データ取得API―jの起動の際にタイマをセットし、当該起動後、所定時間(例えば、3秒)経過してもデータ取得API―jから応答がなかった場合に、APIエラーとして検出する。また、システム制御部20は、データ取得API―jからのSQLコマンドの出力後、所定時間(例えば、2秒)経過してもDBMS―jからの応答がなかった場合には、データ取得API―jからの応答としてデータベースエラーを取得するようになっている。なお、APIエラーを検出するまでの時間及びデータベースエラーを検出するまでの時間は、データ取得API―1〜m夫々個別に設定することができる。
画面情報生成手段としてのシステム制御部20は、キャッシュ1〜mに格納されているキャッシュデータを用いてトップページ200を生成するようになっている。このとき、システム制御部20は、キャッシュ1〜mのうち、有効期限が経過し且つデータ取得API―jを通じてデータを取得することができた場合には、当該取得されたデータをトップページ200の生成に用いる。つまり、キャッシュjの有効期限が経過していない場合には、当該キャッシュjに格納されているキャッシュデータがトップページ200の生成に用いられ、有効期限が経過し且つデータ取得API―jを通じてデータを取得することができた場合には、取得された最新のデータがトップページ200の生成に用いられ、有効期限が経過し且つデータ取得API―jを通じたデータ取得のエラーが検出された場合には、古いキャッシュデータがトップページ200の生成に用いられる。
画面情報送信手段としてのシステム制御部20は、生成されたトップページ200を、トップページリクエストを送信してきたユーザ端末4−kに対して送信するようになっている。
適正判定情報生成手段としてのシステム制御部20は、データ取得API―jを通じたデータ取得のエラーの検出結果に基づいて、エラー数を生成し、当該エラー数を記憶部15に記憶するようになっている。具体的に、システム制御部20は、APIエラーを検出する毎に、記憶部15に記憶されているAPIエラー数に対して1を加算した値を新たなAPIエラー数として、記憶部15に更新記憶するようになっている。また、システム制御部20は、データベースエラーを検出する毎に、記憶部15に記憶されているデータベースエラー数に対して1を加算した値を新たなデータベースエラー数として、記憶部15に更新記憶するようになっている。
なお、有効期限の判別、データ取得API―jを通じたデータの取得、エラーの検出、エラー数の更新は、各キャッシュj毎に行われる。
[3.データベースサーバの構成及び機能]
次に、データベースサーバ3−jの構成及び機能について、図6を用いて説明する。
図6は、本実施形態に係るデータベースサーバ3−jの概要構成の一例を示すブロック図である。
図6に示すように、データベースサーバ3−jは、通信部31と、記憶部32と、入出力インタフェース部33と、システム制御部37と、を備えている。システム制御部20と入出力インタフェース部33とは、システムバス38を介して接続されている。
通信部31は、LANに接続してWebサーバ1との通信状態を制御する。また、記憶部32は、例えば、ハードディスクドライブ等であり、各種プログラム及びデータ等を記憶する。入出力インタフェース部33は、通信部31及び記憶部32とシステム制御部37との間のインタフェース処理を行う。システム制御部37は、CPU34、ROM35、RAM36等を備える。
記憶部32には、データベース2−jが構築されている。また、記憶部32には、所定のオペレーティングシステム、DBMS―j等が記憶されている。
システム制御部37は、CPU34が、ROM35や記憶部32に記憶された各種プログラムを読み出し実行することによりデータベースサーバ3−jの各部を制御するようになっている。
[4.ポータルサイトシステムの動作]
次に、ポータルサイトシステムSの動作について、図7乃至図10を用いて説明する。
図7は、本実施形態に係るポータルサイトシステムSにおいて、ユーザ端末4−kからトップページリクエストが送信されてから、当該トップページがユーザ端末4−kにより表示されるまでの処理例を示すフローチャートである。なお、図7において、ステップS11〜S21に示す処理は、Webサーバプログラムを実行することにより行われる処理である。
先ず、ユーザが、ユーザ端末4−kの、例えば、マウスやキーボード等を操作して、トップページ200のURL(Uniform Resource Locator)を指定して、当該トップページの要求を指示すると、図7に示すように、ユーザ端末4−kはトップページリクエストをWebサーバ1に送信する(ステップS1)。
トップページリクエストを受信したWebサーバ1のシステム制御部20は(ステップS11)、記憶部15に記憶されている総アクセス数に1を加算して、当該総アクセス数を更新する(ステップS12)。
次いで、システム制御部20は、キャッシュ1〜mのうち一のキャッシュjを特定する(ステップS13)。
次いで、システム制御部20は、特定されたキャッシュjに設定されている有効期限が経過している否かを判定し(ステップS14)、有効期限が経過していない場合には(ステップS14:NO)、当該キャッシュjから、トップページ200を生成するためのデータとしてキャッシュデータを取得し(ステップS15)、当該キャッシュjに対応して記憶部15に記憶されているキャッシュリクエスト数に1を加算して、当該キャッシュリクエスト数を更新すると(ステップS16)、ステップS18に移行する。
一方、システム制御部20は、有効期限が経過している場合には(ステップS14:YES)、データ取得・キャッシュ更新処理を実行して(ステップS17)、ステップS18に移行する。なお、データ取得・キャッシュ更新処理の処理内容については後述する。
ステップS18において、システム制御部20は、トップページ200を生成するための全てのデータを取得したか否かを判定し(ステップS18)、未だ取得していないデータがある場合には(ステップS18:NO)、この未だ取得していないデータに対応するキャッシュのうち一のキャッシュjを特定して(ステップS19)、ステップS14に移行する。つまり、システム制御部20は、全てのデータを取得するまでは、ステップS14〜S19の処理を繰り返す。
そして、システム制御部20は、全てのデータを取得した場合には(ステップS18:YES)、取得されたデータを用いてトップページ200を生成し(ステップS20)、当該生成されたトップページ200をユーザ端末4−kに送信すると(ステップS21)、処理を終了させる。
トップページ200を受信したユーザ端末4−kは(ステップS2)、当該ページを図2に示すように画面に表示する(ステップS3)。
次に、上述したデータ取得・キャッシュ更新処理(図7ステップS17)について説明する。
図8は、本実施形態に係るWebサーバ1のシステム制御部20におけるデータ取得・キャッシュ更新処理の処理例を示すフローチャートである。なお、図7に示す処理は、Webサーバプログラムを実行することにより行われる処理である。
先ず、システム制御部20は、特定されたキャッシュjに対応して記憶部15に記憶されている総APIコール数に1を加算して、当該総APIコール数を更新し(ステップS31)、タイマをセットして、計時を開始する(ステップS32)。
次いで、システム制御部20は、キャッシュjに対応するデータ取得API―jに対してデータの取得を指令する(ステップS33)。
次いで、システム制御部20は、計時された時間に基づいてデータ取得API―jのタイムアウトであるか否かを判定し(ステップS34)、タイムアウトである場合には(ステップS34:YES)、ステップS42に移行する。
一方、システム制御部20は、タイムアウトではない場合には(ステップS34:NO)、データ取得API―jからの応答があったか否かを判定し(ステップS35)、データ取得API―jからの応答がない場合には(ステップS35:NO)、ステップS34に移行する。つまり、システム制御部20は、タイムアウトを検出するかまたはデータ取得API―jからの応答があるまではステップS34〜S35の処理を繰り返す。
そして、システム制御部20は、データ取得API―jからの応答があった場合には(ステップS35:YES)、当該応答がデータベースエラーであるか否かを判定し(ステップS36)、データベースエラーである場合には(ステップS36:YES)、ステップS47に移行する。
一方、システム制御部20は、データ取得API―jからの応答がデータベースエラーではない、すなわち、正常応答である場合には(ステップS36:NO)、計時を終了し(ステップS37)、特定されたキャッシュjに対応して記憶部15に記憶されている最大、最小、平均の各レスポンスタイムを、計時された時間、すなわち、今回のレスポンスタイムに応じて更新する(ステップS38)。
次いで、システム制御部20は、トップページ200を生成するためのデータとして、データ取得API―jからデータを取得し(ステップS39)、当該データで、キャッシュjに格納されているキャッシュデータを更新すると(ステップS40)、キャッシュjの有効期限を改めて設定して(ステップS41)、データ取得・更新処理を終了させる。
他方、システム制御部20は、ステップS34において、タイムアウトである場合には(ステップS34:YES)、計時を終了し(ステップS42)、特定されたキャッシュjに対応して記憶部15に記憶されているAPIエラー数に1を加算する(ステップS43)。
次いで、システム制御部20は、特定されたキャッシュjから、トップページ200を生成するためのデータとしてキャッシュデータを取得し(ステップS44)、当該キャッシュjに対応して記憶部15に記憶されているキャッシュリクエスト数に1を加算して、当該キャッシュリクエスト数を更新する(ステップS45)。
次いで、システム制御部20は、キャッシュjの有効期限を延長設定して(ステップS46)、データ取得・更新処理を終了させる。
他方、システム制御部20は、ステップS36において、データベースエラーである場合には(ステップS36:YES)、計時を終了し(ステップS47)、特定されたキャッシュデータに対応して記憶部15に記憶されているデータベースエラー数に1を加算する(ステップS48)。
次いで、システム制御部20は、特定されたキャッシュjから、トップページ200を生成するためのデータとしてキャッシュデータを取得し(ステップS49)、当該キャッシュjに対応して記憶部15に記憶されているキャッシュリクエスト数に1を加算して、当該キャッシュリクエスト数を更新する(ステップS50)。
次いで、システム制御部20は、キャッシュjの有効期限を延長設定して(ステップS51)、データ取得・更新処理を終了させる。
次に、図8に示すデータ取得・キャッシュ更新処理におけるステップS33の処理により起動されたデータ取得API―jにおける処理について説明する。
図9は、本実施形態に係るWebサーバ1のシステム制御部20のデータ取得API―jにおける処理例を示すフローチャートである。
先ず、システム制御部20は、データ取得API―jに対応するDBMS―jに対するSQLコマンドを生成し、当該SQLコマンドをデータベースサーバ3−jに送信することにより、DBMS―jに対してデータの問い合わせを行う(ステップS61)。
次いで、システム制御部20は、問い合わせを行ってから所定の時間が経過することによりタイムアウトとなったか否かを判定し(ステップS62)、タイムアウトである場合には(ステップS62:YES)、Webサーバプログラムに対して異常応答(データベースエラー)を返却して(ステップS67)、処理を終了させる。
一方、システム制御部20は、タイムアウトではない場合には(ステップS62:NO)、DBMS―j(データベースサーバ3−j)からの応答があったか否かを判定し(ステップS63)、応答がない場合には(ステップS63:NO)、ステップS62に移行する。つまり、システム制御部20は、タイムアウトを検出するかまたはDBMS―jからの応答があるまではステップS62〜S63の処理を繰り返す。
そして、システム制御部20は、DBMS―jからの応答があった場合には(ステップS63:YES)、DBMS―jから送信されたデータを取得して(ステップS64)、当該データの形式をWebサーバプログラムにおいて処理しやすい形式に変換する。
次いで、システム制御部20は、Webサーバプログラムに対して正常応答を返却して(ステップS66)、処理を終了させる。
図10は、図7及び図8に示す処理におけるAPI稼働集計情報の集計結果の一例を示す図である。なお、図10においては、トップページ200のうち、ニュース見出しエリア203の生成に用いられるデータ、天気予報表示エリア204の生成に用いられるデータ、ニュースクリッピング表示エリア207の生成に用いられるデータ、テレビ番組クリッピング表示エリア208の生成に用いられるデータ及びブログ紹介エリア209の生成に用いられるデータについて示している。
記憶部15に記憶されたAPI稼働集計情報は、システム制御部20の制御により、例えば、表示部12に表示されたり、ドライブ部14を介してディスクDKに記録されたり、LANを介して他のサーバ装置や管理用の端末装置等に送信等される。

図10に示すように、総アクセス数は、各データともに同一の値が設定されている。また、総APIコール数とキャッシュリクエスト数の合計値が総アクセス数となる。ここで、これまでのキャッシュリクエスト数より大幅にキャッシュリクエスト数が多く、エラー数も多いコンテンツがある場合には、何らかのエラーにより、読み出されるべき新しいデータを用いずにページが作成されることがわかる。また、これからトラブルに発展する可能性があるコンテンツを事前に検知することも可能となる。
エラー数は、APIエラー数とデータベースエラー数とに区分されている。データベースエラー数が、全体的にAPIエラー数が多い場合には、Webサーバ1においてトラブルが発生している確率が高いため、Webサーバ1を増強する必要があると考えられる。また、他のデータの場合と比較してデータベースエラー数が多いデータがある場合には、当該データに対応するデータベースサーバ3−jにおいてトラブルが発生している確率が高いため、データベースサーバ3−jを増強する必要があると考えられる。
また、(総アクセス数−エラー数)÷総アクセス数により、総アクセスに対してトップページ200における対応エリアが適正に生成される率を求めることができる。また、(総APIコール数−エラー数(または、APIエラー数、データベースエラー数))÷総APIコール数により、データ取得API―jの呼び出しに対してデータを取得することができる率を求めることができる。これらの率が相対的に低いほど、Webサーバ1またはデータベースサーバ3−jを増強する必要があるものと考えられる。
また、図示はしていないが、ユーザ毎に内容が異なるデータについてはキャッシュが設けられていないため、これらのデータについては、総アクセス数、総APIコール数、エラー数(APIエラー数及びデータベースエラー数)、各レスポンスタイムは収集されるが、キャッシュリクエスト数は収集されない。また、この場合には、総アクセス数=総APIコール数となる。そして、この場合においても、APIエラー数とデータベースエラー数は収集することができるので、これらの情報を、Webサーバ1やデータベースサーバ3−jを増強するか否かを判断する材料とすることができる。
なお、システム制御部20により、これらの率(適正判定情報の一例)を計算し、API稼働集計情報の一部として記憶部15に記憶させても良い。
また、最大、最小、平均の各レスポンスタイムの値が大きいほど、Webサーバ1またはデータベースサーバ3−jにおける負荷が増加している傾向がある。なお、図10に示す例では、各データに対するAPIのタイムアウトまでの時間は、夫々3秒(3000ミリ秒)に設定されている場合の例であるため、最大レスポンスタイムが3000ミリ秒を超えることは基本的にはない。
以上説明したように、本実施形態によれば、Webサーバ1のシステム制御部20は、ユーザ端末4−kからトップページリクエストを受信すると、キャッシュjに格納されているキャッシュデータの有効期限が経過しているか否かを判別する。このとき、システム制御部20は、有効期限が経過していない場合には、キャッシュjに格納されているキャッシュデータを用いてトップページ200を生成する。一方、システム制御部20は、有効期限が経過している場合には、データ取得API―jを通じて、データベース2−jに登録されているデータをDBMS−jから取得し、当該取得したキャッシュデータで、キャッシュjに格納されているキャッシュデータを更新するとともに、当該取得したキャッシュデータを用いてトップページ200を生成する。ただし、システム制御部20は、APIエラーやデータベースエラーを検出して、データ取得API―jを通じてデータを取得できなかった場合には、キャッシュjに格納されているキャッシュデータを用いてトップページ200を生成する。そして、システム制御部20は、生成されたトップページ200をユーザ端末4−kに送信し、エラーの検出結果に基づいて、トップページ200が適正に生成されているか否かの判定に用いられるAPIエラー数及びデータベースエラー数を生成する。
従って、たとえ、データ取得API―jを通じてキャッシュデータを取得できなかったことにより、キャッシュjに格納されている有効期限の経過したキャッシュデータを用いてトップページ200を生成し、当該トップページ200をユーザ端末4−kに送信することで、ユーザ端末4−kの画面には適正な情報が表示されるように見えるような場合であっても、当該トップページ200が真に適正に生成されているか否かを知ることができる。
また、エラー数として、DBMS−jにおけるエラー数と、データ取得API―jにおけるエラー数とを得ることができるので、システム増強等の対応を、データベース2−j及びDBMS−jが組み込まれたデータベースサーバ3−jに対して施せば良いのか、あるいは、データ取得API―jが組み込まれたWebサーバ1に対して施せば良いのか、等を判断することができる。
なお、上記実施形態においては、トップページ200の生成に用いられる各データを、一つずつ順番に取得するようにしていたが、各データを並列的に取得するようにしても良い。具体的には、例えば、Webサーバ1のシステム制御部20が、一斉にデータ取得API―1〜mを起動させ、タイムアウトになる前に取得API―1〜mを通じて取得することができたデータをトップページ200の生成に用いる。一方、タイムアウトになっても取得することができなかったデータについては、キャッシュjに格納されているキャッシュデータをトップページ200の生成に用いれば良い。
また、上記実施形態においては、トップページ200の生成に用いられる各データを、データベース2−1〜2−mに夫々分けて登録し、夫々データベースサーバ3−1〜3−mにおいて管理するようにしていたが、例えば、一つのデータベース2−j及び一つデータベースサーバ3−jで管理するようにしても良い。また、Webサーバ1とデータベースサーバ3−jとを一つのサーバ装置で構成しても良い。
また、上記実施形態においては、記憶部15の記憶領域上にキャッシュjを設定していたが、例えば、RAM19の記憶領域上にキャッシュjを設定しても良い。
また、上記実施形態においては、画面情報にポータルサイトのトップページを適用していたが、例えば、トップページ以外のWebページ、ポータルサイト以外のWebサイトのWebページ、その他の表示画面を構成する画面情報を適用しても良い。
本実施形態に係るポータルサイトシステムSの概要構成の一例を示す図である。 本実施形態に係るWebサーバ1により提供されるポータルサイトのトップページ200の表示例を示す図である。 本実施形態に係るポータルサイトシステムSの機能構成の概要例を示すブロック図である。 本実施形態に係るWebサーバ1において収集されるAPI稼働集計情報の一例を示す図である。 本実施形態に係るWebサーバ1の概要構成の一例を示すブロック図である。 本実施形態に係るデータベースサーバ3−jの概要構成の一例を示すブロック図である。 本実施形態に係るポータルサイトシステムSにおいて、ユーザ端末4−kからトップページリクエストが送信されてから、当該トップページがユーザ端末4−kにより表示されるまでの処理例を示すフローチャートである。 本実施形態に係るWebサーバ1のシステム制御部20におけるデータ取得・キャッシュ更新処理の処理例を示すフローチャートである。 本実施形態に係るWebサーバ1のシステム制御部20のデータ取得API―jにおける処理例を示すフローチャートである。 図7及び図8に示す処理におけるAPI稼働集計情報の集計結果の一例を示す図である。
符号の説明
1 Webサーバ
2―j データベース
3−j データベースサーバ
4−k ユーザ端末
11 操作部
12 表示部
13、31 通信部
14 ドライブ部
15、32 記憶部
16、33 入出力インタフェース
17、34 CPU
18、35 ROM
19、36 RAM
20、37 システム制御部
21、38 システムバス
NW ネットワーク
S ポータルサイトシステム

Claims (4)

  1. ータベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段と、
    ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報受信する要求情報受信手段と、
    前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別手段と、
    前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新手段と、
    前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成手段と、
    前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信手段と、
    前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出手段と、
    前記取得エラー検出手段による前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成手段と、
    を備えることを特徴とする情報提供装置
  2. 請求項1に記載の情報提供装置において、
    前記適正判定情報生成手段は、前記データベース管理システムから応答がなかった場合のタイムアウトエラーの検出数を示す第1エラー数情報と、前記プログラムインタフェースから応答がなかった場合のタイムアウトエラーの検出数を示す第2エラー数情報と、を含む前記適正判定情報を生成することを特徴とする情報提供装置。
  3. データベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段を備える情報提供装置における適正判定情報生成方法であって、
    ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報を受信する要求情報受信工程と、
    前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別工程と、
    前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新工程と、
    前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成工程と、
    前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信工程と、
    前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出工程と、
    前記取得エラー検出工程における前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成工程と、
    を備えることを特徴とする適正判定情報生成方法。
  4. データベースに登録されていた登録情報であって、当該データベースを管理するデータベース管理システムに対して問い合わせを示す問い合わせ情報を出力するプログラムインタフェースを通じて当該データベース管理システムから取得された登録情報を記憶しておく登録情報記憶手段を備える情報提供装置に含まれるコンピュータを、
    ユーザの指令に基づいて端末装置からネットワークを介して送信された要求情報であって、ユーザに対して提示される提示情報の表示画面を構成する画面情報の要求を示す要求情報を受信する要求情報受信手段、
    前記要求情報を受信した場合に、前記登録情報記憶手段に記憶されている前記登録情報に対して設定された有効期限が経過しているか否かを判別する期限経過判別手段、
    前記有効期限が経過している場合には、前記プログラムインタフェースに対して指令することにより当該プログラムインタフェースを通じて前記登録情報を取得し、当該取得された登録情報で、前記登録情報記憶手段に記憶されている前記登録情報を更新する登録情報取得・更新手段、
    前記有効期限が経過していない場合と、前記プログラムインタフェースを通じた前記登録情報の取得エラーが検出された場合と、の何れか一方の場合には、前記登録情報記憶手段に記憶されている前記登録情報を用いて前記画面情報を生成し、前記プログラムインタフェースを通じて前記登録情報が取得された場合には、当該取得された登録情報を用いて前記画面情報を生成する画面情報生成手段、
    前記生成された画面情報を、前記要求情報を送信した前記端末装置に前記ネットワークを介して送信する画面情報送信手段、
    前記プログラムインタフェースに対する前記登録情報の取得の指令に対して、所定時間内に当該プログラムインタフェースから応答がなかった場合のタイムアウトエラーと、前記プログラムインタフェースからのデータベース管理システムに対する問い合わせに対して、所定時間内にデータベース管理システムから応答がなかった場合のタイムアウトエラーとを、前記取得エラーとして検出する取得エラー検出手段、及び、
    前記取得エラー検出手段による前記取得エラーの検出数を算出し、前記画面情報に対する端末装置からの総アクセス数と前記取得エラーの検出数とに基づいて、前記取得エラーが検出されることなくして前記画面情報が生成された場合を当該画面情報が適正に生成されたものとして、前記画面情報が適正に生成された率を示す適正判定情報を生成する適正判定情報生成手段、
    として機能させることを特徴とする適正判定情報生成処理プログラム。
JP2007035715A 2007-02-16 2007-02-16 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム Active JP4756001B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007035715A JP4756001B2 (ja) 2007-02-16 2007-02-16 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム
US12/068,906 US7925934B2 (en) 2007-02-16 2008-02-13 Information providing system, information providing device, appropriateness judgment information generation method and appropriateness judgment information generation process program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007035715A JP4756001B2 (ja) 2007-02-16 2007-02-16 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009035540A Division JP4903824B2 (ja) 2009-02-18 2009-02-18 情報提供装置、適正情報生成方法及び適正情報生成処理プログラム

Publications (2)

Publication Number Publication Date
JP2008198158A JP2008198158A (ja) 2008-08-28
JP4756001B2 true JP4756001B2 (ja) 2011-08-24

Family

ID=39757005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007035715A Active JP4756001B2 (ja) 2007-02-16 2007-02-16 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム

Country Status (2)

Country Link
US (1) US7925934B2 (ja)
JP (1) JP4756001B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8539098B2 (en) * 2007-10-17 2013-09-17 Dispersive Networks, Inc. Multiplexed client server (MCS) communications and systems
US8209491B2 (en) * 2010-04-27 2012-06-26 Symantec Corporation Techniques for directory server integration
JP5567444B2 (ja) * 2010-10-07 2014-08-06 株式会社富士通アドバンストエンジニアリング プログラム、アプリケーションサーバ装置の制御方法、アプリケーションサーバ装置
CN102611922B (zh) * 2012-02-23 2015-09-23 深圳市同洲电子股份有限公司 统一发布数字电视门户的方法及其系统
WO2014102973A1 (ja) * 2012-12-27 2014-07-03 パイオニア株式会社 情報処理装置
JP5984148B2 (ja) 2014-05-13 2016-09-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 遠隔手続き呼び出しを制御する装置及び方法
CN111787088B (zh) 2020-06-28 2023-04-28 百度在线网络技术(北京)有限公司 小程序数据处理的方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1183632A2 (en) * 1999-04-22 2002-03-06 Network Solutions, Inc. Business rule engine
US6854074B2 (en) * 2000-12-01 2005-02-08 Internetseer.Com Corp. Method of remotely monitoring an internet web site
JP2002215582A (ja) * 2000-12-28 2002-08-02 Morgan Stanley Dean Witter Japan Ltd 認証方法及び装置
JP2002342086A (ja) 2001-05-17 2002-11-29 Honda Motor Co Ltd サーバクライアントアプリケーションプログラムおよびウェブブラウザ向け文書データ
US6941310B2 (en) 2002-07-17 2005-09-06 Oracle International Corp. System and method for caching data for a mobile application
US7047243B2 (en) * 2002-08-05 2006-05-16 Microsoft Corporation Coordinating transactional web services
JP4736407B2 (ja) 2004-11-22 2011-07-27 株式会社日立製作所 中継装置
JP4502130B2 (ja) 2005-07-22 2010-07-14 Tdk株式会社 積層電子部品の製造方法
US7600123B2 (en) * 2005-12-22 2009-10-06 Microsoft Corporation Certificate registration after issuance for secure communication
US8532628B2 (en) * 2006-06-16 2013-09-10 Fmr Llc Registering actionable alerts

Also Published As

Publication number Publication date
JP2008198158A (ja) 2008-08-28
US20080320341A1 (en) 2008-12-25
US7925934B2 (en) 2011-04-12

Similar Documents

Publication Publication Date Title
US7949702B2 (en) Method and apparatus for synchronizing cookies across multiple client machines
JP4756001B2 (ja) 情報提供装置、適正判定情報生成方法及び適正判定情報生成処理プログラム
US11019179B2 (en) Access to network content
US6993590B1 (en) Method of creating data streams for user-specific usage data gathering systems
KR101304119B1 (ko) 이전에 포착된 연관성 데이터에 기초한 광고 리타게팅을 위한 시스템 및 방법
US8327297B2 (en) User interface system for handheld devices
FI114066B (fi) Liikennevirran analysointimenetelmä
US20030088580A1 (en) Methods and systems for preemptive and predictive page caching for improved site navigation
WO2013006332A1 (en) Improving access to network content
US20070282825A1 (en) Systems and methods for dynamic content linking
JP4963620B2 (ja) 情報検索システム、情報検索装置、検索結果画面情報生成方法及び検索結果画面情報生成処理プログラム
EP2449481A1 (en) System and method for enhancing digital content
CN100550015C (zh) 改进的用户界面
JP2002140224A (ja) コンテンツ変更管理方法
US8417576B2 (en) Information transmitting apparatus, information transmitting method, information transmitting and processing program, and information transmitting system
JP4963619B2 (ja) 情報検索システム、情報検索装置、検索結果画面情報生成方法及び検索結果画面情報生成処理プログラム
EP1606731A2 (en) Generation and presentation of search results using addressing information
JP2003187150A (ja) 自動広告取引システム及びその方法
JP4903824B2 (ja) 情報提供装置、適正情報生成方法及び適正情報生成処理プログラム
US7089582B1 (en) Method and apparatus for identifying universal resource locator rewriting in a distributed data processing system
US20060149807A1 (en) Method of reducing time to download a web page
US9172739B2 (en) Anticipating domains used to load a web page
CN111090808A (zh) 页面信息推送方法、装置、服务器和计算机可读存储介质
JPH11167512A (ja) データ中継装置、データ中継方法および記録媒体
WO2001020503A1 (en) A method of monitoring internet activity

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090317

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090616

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

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

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4756001

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250