JPWO2015122197A1 - 画面描画システム、画面描画方法及びポータルクライアント - Google Patents

画面描画システム、画面描画方法及びポータルクライアント Download PDF

Info

Publication number
JPWO2015122197A1
JPWO2015122197A1 JP2015562753A JP2015562753A JPWO2015122197A1 JP WO2015122197 A1 JPWO2015122197 A1 JP WO2015122197A1 JP 2015562753 A JP2015562753 A JP 2015562753A JP 2015562753 A JP2015562753 A JP 2015562753A JP WO2015122197 A1 JPWO2015122197 A1 JP WO2015122197A1
Authority
JP
Japan
Prior art keywords
request
portal
portlet
response
portal server
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.)
Pending
Application number
JP2015562753A
Other languages
English (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2015122197A1 publication Critical patent/JPWO2015122197A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/027Arrangements and methods specific for the display of internet documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本発明は、画面描画処理の遅延時間を短縮することが可能な画面描画システム、画面描画方法及びポータルクライアントを提供する。本発明の画面描画システムは、ポータルサーバとポータルクライアントとを有する画面描画システムであって、ポータルサーバは、ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスをポータルクライアントに送信し、ポータルクライアントは、レスポンスを解析して画面描画を行うレスポンス解析手段と、レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に未完了のポートレットに対応するコンテンツの再取得リクエストをポータルサーバに送信するリクエスト再送タイマー手段と、を有する。

Description

本発明は、画面描画システム、画面描画方法及びポータルクライアントに関する。
通信インフラの発達により、ユーザは、様々な場所や端末からホームページにアクセスすることが可能となった。ホームページの基本的な内容は、HTML(HyperText Markup Language)形式等により記述される。そして、Webブラウザは、このHTMLファイルに基づいてWeb画面にホームページの表示を行う(特許文献1)。
ポータル画面は、ポータルのコンテンツとポータルに配置されている複数のポートレットのコンテンツから構成される。配置されているポートレットの種類や数はアクセスするポータル画面毎に異なる。このため、クライアントにおけるWeb画面の描画完了時間は利用するポートレットによって大きく変わる。図15は、関連技術における描画処理方法を示す概念図である。図15に示すように、クライアントは、ポータルサーバにアクセスを行い、HTMLレスポンスの受信待ちとなる。ポータルサーバは、アクセスに対しポートレットコンテナからポートレットのコンテンツを取得し、それをレスポンスとしてクライアントに送信する。クライアントとなるWebブラウザでは、ポータルサーバからのレスポンスの受信完了後、以下の処理を行う。1.HTML、JSON(JavaScript Object Notation)(JavaScriptは登録商標)データの解析、2.スクリプトファイル/CSS(Cascading Style Sheets)ファイル/画像ファイルのダウンロード、3.HTMLを動的に生成するスクリプトファイルの実行、4.HTMLのレンダリング。
特開平10−207758号公報
しかし、関連技術には以下の問題点があった。図15に示すように、クライアントは、サーバからのポートレットのコンテンツ受信がすべて完了した後に描画処理を開始する。そのため、受信完了までの時間は、画面はロード中のままであり、これがそのままユーザの待ち時間となる。また、ポートレットのコンテンツが大きい場合は、コンテンツが小さい場合に比べ、コンテンツの生成、転送時間、描画処理にかかる時間が長くなる。そのため、コンテンツが大きくなるほど、ユーザ画面の描画完了待ち時間も延びる。同様に、ポートレットの数が増える、複雑な処理のポートレットが存在する、負荷の高いポートレットが存在するといった要因によっても、ユーザ画面の描画完了待ち時間が延びる。
本発明は、上述した課題を解決する画面描画システム、画面描画方法及びポータルクライアントを提供することを目的とする。
本発明の一側面としての画面描画システムは、ポータルサーバとポータルクライアントとを有する画面描画システムであって、ポータルサーバは、ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスをポータルクライアントに送信し、ポータルクライアントは、レスポンスを解析して画面描画を行うレスポンス解析手段と、レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に未完了のポートレットに対応するコンテンツの再取得リクエストをポータルサーバに送信するリクエスト再送タイマー手段と、を有する。
本発明の一側面としての画面描画方法は、ポートレットを有するポータルサーバと、ポータルクライアントとを用いた画面描画システムにおける画面描画方法であって、ポータルサーバがポータルクライアントからのリクエストに対応するポートレットを含むレスポンスをポータルクライアントに送信し、ポータルクライアントがレスポンスに基づいて画面描画を行い、レスポンスに未完了のポートレットに関する情報が含まれている場合にポータルクライアントが、所定時間後に未完了のポートレットに対応するコンテンツの再取得リクエストをポータルサーバに送信する。
本発明の一側面としてのポータルクライアントは、ポータルサーバへリクエストを送信し、リクエストに対応するポートレットを含むレスポンスを取得するポータルクライアントであって、レスポンスに基づいて画面描画を行うレスポンス解析手段と、レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に未完了のポートレットに対応するコンテンツの再取得リクエストをポータルサーバに送信するリクエスト再送タイマー手段と、を有する。
本発明によれば、画面描画処理の遅延時間を短縮することが可能な画面描画システム、画面描画方法及びポータルクライアントを提供することができる。
図1は、第1の実施形態にかかる画面描画システム1000の構成を示すブロック図である。 図2は、第1の実施形態にかかる画面描画システム1000の動作を示す概念図である。 図3は、第1の実施形態にかかる画面描画システム1000の動作を説明するフロー図である。 図4は、第2の実施形態にかかる画面描画システム2000の構成を示すブロック図である。 図5は、第2の実施形態にかかる画面描画システム2000の動作を説明するフロー図である。 図6は、第2の実施形態にかかる画面描画システム2000の動作を説明するフロー図である。 図7は、第2の実施形態にかかる画面描画システム2000におけるデータを示す図である。 図8は、第2の実施形態にかかる画面描画システム2000におけるデータを示す図である。 図9は、第3の実施形態にかかる画面描画システム2000aの構成を示すブロック図である。 図10は、第4実施形態にかかる画面描画システム3000の構成を示すブロック図である。 図11は、第4の実施形態にかかる画面描画システム3000の動作を説明するフロー図である。 図12は、第4の実施形態にかかる画面描画システム3000の動作を説明する概念図である。 図13は、第5の実施形態にかかる画面描画システム4000の構成を示すブロック図である。 図14は、第5の実施形態にかかる画面描画システム4000の動作を説明するフロー図である。 図15は、関連技術における描画処理方法を示す概念図である。 図16は、関連技術における描画処理方法を示す概念図である。
<第1の実施の形態>
図1は、第1の実施形態にかかる画面描画システム1000の構成図である。画面描画システム1000は、ポータルクライアント10とポータルサーバ20とを含んで構成される。
ポータルクライアント10は、レスポンス解析部11及びリクエスト再送タイマー部12を含む。
レスポンス解析部11は、ポータルサーバ20からのレスポンスを解析し、解析結果に基づいて画面描画を行う。解析の結果、未完了のポートレットが検出される場合がある。
リクエスト再送タイマー部12は、所定時間後に未完了のポートレットのコンテンツの再取得リクエストを送信するためカウントを行う。
ポータルサーバ20は、ポータルクライアント10からの、ポートレットのコンテンツの要求(リクエスト)に対応するポートレット21を含むレスポンスをポータルクライアント10に送信する。
続いて、本実施形態にかかる画面描画システム1000の動作を説明する。図2は動作を示す概念図である。
図3は動作を説明するフロー図である。後述するポートレットは、ポートレット1乃至5である。
図3において薄い塗りつぶしで示した動作はポータルクライアント10の動作である。その他の動作はポータルサーバ20の動作である。
ポータルクライアント10は、ポータルサーバ20にリクエストを送信する(ステップS1)。当該リクエストを受信した(ステップS2)ポータルサーバ20は、全てのポートレットへリクエストを送信する(図2)。ポータルサーバ20は、リクエストに対応するポートレットから当該ポートレットのコンテンツを含むレスポンスを受信し、ポータルクライアント10に送信する(ステップS3)。図2の場合では、ポータルサーバ20は、ポータルクライアント10にポートレット1及び2のコンテンツを含むレスポンスを送信し、合わせてポートレット3乃至5が完了していないことを通知する。レスポンスを受信(ステップS4)したポータルクライアント10のレスポンス解析部11は、ポータルサーバ20からのレスポンスを解析し、解析結果に基づいて画面描画を行う(ステップS5)。当該レスポンスに未完了のポートレットに関する情報が含まれている場合(ステップS6でyes)、リクエスト再送タイマー部12は、未完了のポートレット(図2ではポートレット3乃至5)に関する再取得リクエストを送信するためのタイマーを設定する(ステップS7)。そして、リクエスト再送タイマー部12は、所定時間後に未完了のポートレットのコンテンツの再取得リクエストを送信する(ステップS8)。なお、本実施の形態の主要な動作ではないが、リクエスト再送タイマー部12は、例えば、図2のajax(asynchronous javascript xml)リクエスト送信を用いて再取得リクエストを送信する。また、リクエスト再送タイマー部12は、コンテンツ受信が完了していない場合、ポータルサーバ20に対して、一定間隔でポーリングを行う。その後、ポートレット3、4のコンテンツが生成されると、ポータルサーバ20は、ポートレット3、4をキューに格納する。そして、ポータルサーバ20は、ポートレット3、4のコンテンツをポータルクライアント10に送信する。また、ポータルサーバ20は、ポートレット5のコンテンツの生成が完了していないことも通知する。その後、ポートレット5のコンテンツの生成が完了した段階で、ポータルサーバ20は、ポータルクライアント10にポートレット5のコンテンツを送信する。
本実施形態にかかる画面描画システム1000によれば、ポータルクライアント10がレスポンス解析部11とリクエストタイマー部12を有することにより、未完了のポートレットが存在する場合であっても描画処理を開始することができ、未完了のポートレットについては所定時間後にリクエストを再送することができる。この結果、画面描画システム1000は、ポータルクライアント10における描画完了までの時間を短縮することができる。
<第2の実施の形態>
図4は、第2の実施形態にかかる画面描画システム2000の構成図である。画面描画システム2000は、ポータルクライアント100、ポータルサーバ200及び記憶装置300を含んで構成される。
ポータルクライアント100は、レスポンス解析部101、リクエスト再送タイマー部102及び再取得レスポンス処理部103を含む。
レスポンス解析部101及びリクエスト再送タイマー部102は、それぞれ第1の実施形態にかかる描画システム1000におけるレスポンス解析部及びリクエスト再送タイマー部と同様の構成である。
再取得レスポンス処理部103は、ポータルコンテナ210のキュー内に格納されたコンテンツ情報を集約したレスポンスを適切に処理する。
ポータルサーバ200は、ポータルクライアント100からリクエストを受信し、関連するポートレットへリクエストを送信するためのポータルコンテナ210及びポートレットを実行するポートレットコンテナ220を含む。
ポータルコンテナ210は、送受信監視部211、レスポンスキュー格納部212及びレスポンスキュー213を含む。
送受信監視部211は、ポートレットへのリクエスト、レスポンスを監視し、記憶装置300の情報を更新する。
レスポンスキュー格納部212は、ポートレットコンテナ220から受信したレスポンスをクライアント毎に設置されている適切なキューに格納する。
レスポンスキュー213は、レスポンスを格納するキューである。
ポートレットコンテナ220は、実行するポートレット221を含む。
記憶装置300は、リクエスト管理テーブル301、平均応答時間管理テーブル302及びポートレット待ち時間管理テーブル303を記憶する。記憶装置300は、データベース、ファイルなど種類を問わない。以下の説明ではデータベースの場合を例にとり説明する。
続いて、本実施形態にかかる画面描画システム2000の動作を説明する。図5及び6は画面描画システム2000の動作を説明するフロー図である。図7及び8はデータの例を示す図である。
図5及び6において薄い塗りつぶしで示した動作はポータルクライアント100の動作、その他の動作はポータルサーバ200の動作である。また、図6の(c)において破線で示した動作はポートレットコンテナ220の動作、実線で示した動作はポータルコンテナ210の動作である。さらに、図6の(b)及び(c)は図5の(a4)における動作を詳細に示したものである。
図5において、ポータルクライアント100は、ポータルサーバ200へリクエストA1を送信する(a1)。図7は、画面描画システム2000におけるデータを示す図である。図7において、クライアントからのHTTPリクエスト例(リクエストA1)とクライアントへのHTTPレスポンス例(レスポンスA2)が示されている。ポータルサーバ200は、ポータルクライアント100からリクエストA1を受信すると(a2)、ポータル画面のレスポンス作成(a3)とポートレットリクエスト送信(a4)を並列に実行する。
ポータル画面のレスポンス作成(a3)では、ポータルコンテナ210がポータル画面の描画に関わるHTML+JSONのレスポンス情報を作成する(図7のA2−1、A2−2を除くA2)。レスポンス情報は、例えば、「動的に生成する画面の情報はJSON化されている」、「portlet Area配下にポートレットのHTMLが動的に作成される」等である。なお、図7のA2−1は、「コンテンツ生成が完了している場合、contentが設定される」ことを示す。また、A2−2は、「コンテンツ生成が完了していない場合、timerが設定される」ことを示す。
ポートレットリクエスト送信処理(a4)では、ポータルコンテナ210がポートレット用リクエストを作成する(図6のb1)。リクエストオブジェクトには、送受信監視部211によりリクエストID(Identification)とリクエスト処理開始時刻が設定される(b2、b3)。ポータルコンテナ210は、設定した情報をリクエスト管理テーブルB1(図8)に保存する(b4)。そして、ポータルコンテナ210は、ポートレットコンテナ220へリクエストを送信する(b5)。
ポートレットコンテナ220はポータルコンテナ210よりリクエストを受信し(c1)、クライアントの画面(HTML)の一部を生成するポートレットを実行する(c2)。ポートレットの実行が完了すると、ポートレットコンテナ220は、ポータルコンテナ210へレスポンスを送信する(c3)。
ポータルコンテナ210は、ポートレットのレスポンスであるHTMLコンテンツを受信すると(c4)、送受信監視部211により、対応するリクエスト情報にリクエスト処理終了(完了)時刻を設定し(c5)、リクエスト管理テーブルB1と平均応答時間管理テーブルB2(図8)の平均応答時間を更新する(c6)。図8において、リクエスト管理テーブルB1と平均応答時間管理テーブルB2は、記憶装置300のリクエスト管理テーブル301と平均応答時間管理テーブル302に対応する。リクエスト管理テーブルB1は、各々のリクエストのリクエストID、クライアントID、状態、処理開始時刻、及び、処理終了時刻を格納する。また、平均応答時間管理テーブルB2は、各々のポートレットの同時実行数、及び、平均応答時間を格納する。ここで、平均応答時間とは、同じポートレットに関するリクエストを何度か送信した場合のリクエスト処理開始時刻からリクエスト処理完了時刻までの時間の平均値である。平均応答時間は、後述の同時実行数によって変化する。
そしてレスポンスキュー格納部212は、受信したレスポンスをキューに格納する(c7)。
図5に戻り、続いて、ポータルサーバ200は、ポートレット完了待ち時間管理テーブルB3(図8)からポートレット完了待ち時間を取得し(a5)、ポータルクライアント100へのレスポンス作成処理へと移る。図8において、ポートレット完了待ち時間管理テーブルB3は、記憶装置300のポートレット完了待ち時間管理テーブル303に対応する。ここで、ポートレット完了待ち時間とは、ポータルクライアント100がポータルサーバ200からのレスポンス待ちを許容することを可能にする時間(許容時間)であり、サイトごとにサイトIDに対応づけられて管理されている。ポータルサーバ200は、レスポンスキュー213からポートレットのレスポンスA2−1(図7)を取り出し、クライアントへ送信するポータル画面のレスポンスへ追加する(a6)。ポータルサーバ200は、完了していないポートレットの有無を確認し、ポートレットが完了しておらずレスポンスを送信していないポートレットがある場合は(a7でyes)、ポートレット完了待ち時間の範囲内かどうかを確認する(a8)。待ち時間の範囲内であれば(a8でyes)、ポータルサーバ200は、タイムアウト付きwaitを実行し、ポートレットの完了を待つ。待ち時間の範囲を超えていれば(a8でno)、ポータルサーバ200は、レスポンスにポートレット情報A2−2(図7)を追加する(a9)。ポータルサーバ200は、未完了のポートレットの平均応答時間を平均応答時間管理テーブルB2から取得し(a10)、レスポンスデータへ設定する(a11)。平均応答時間は、同時実行数、すなわち、並行して処理しているポートレットの数を基に算出する。そして、ポータルサーバ200は、ポータルクライアント100へレスポンスデータ(図7のレスポンスA2)を送信する(a12)。
次に、ポータルクライアント100は、レスポンスA2を受信すると(a13)、レスポンス解析部101によりレスポンスデータの解析を行う(a14)。完了していないポートレットがある場合は(a15でyes)、ポータルクライアント100は、レスポンスに含まれる平均応答時間をリクエスト再送タイマー部102に設定する(a16)。そして、ポータルクライアント100は、描画可能な情報を利用して画面の描画を行う(a17)。したがって、ポータルクライアント100は、サーバの処理完了前に描画処理を開始することができる。
ステップa16において設定された平均応答時間が経過すると、ポータルクライアント100のリクエスト再送タイマー部102が発火し(図6のd1)、ポータルサーバ200へリクエストA3(図8)を送信する(d2)。ポータルサーバ200は、リクエストを受信後、レスポンスキュー213から残りのレスポンスデータを取り出し(d3)、ポータルクライアント100に再リクエストレスポンスA4(図8)を返信する(d4)。
ポータルクライアント100は、再リクエストレスポンスA4を受信すると(d5)、描画処理を行う(d6)。描画処理d6は、図5に示すフローにおける描画処理a17に対応する。
本実施形態にかかる画面描画システム2000によれば、ポータルサーバ200がレスポンスキュー格納部212とレスポンスキュー213を有することにより、待ち時間を超えたポートレットのレスポンスを格納することができる。このため、ポータルサーバ200は、ポータルクライアント100に応答可能な範囲のレスポンスを返すことができる。また、ポータルクライアント100は、サーバの処理完了前に描画処理を開始することができる。また、ポータルクライアント100は、レスポンス解析部101とリクエスト再送タイマー部102を有することにより、ポータルサーバ200は、クライアント処理中に未完了のポートレットを非同期で実行し、完了予定時刻以降にコンテンツを取得することができる。この結果、ポータルクライアント100における描画完了までの時間を短縮することができる。
さらに、ポータルサーバ200は、送受信監視部211で算出した平均応答時間をクライアントに伝達する。これにより、リクエスト再送タイマー部102は、ポートレットのレスポンスの送信予定時刻までリクエストの再送を待つことができる。
<第3の実施の形態>
画面描画システム2000aは、ポータルクライアントからポータルサーバに複数のポートレットに関するリクエストを送信する際、リクエストを一つのリクエストに集約して送信することができる。
図9は、第3の実施形態にかかる画面描画システム2000aの構成図である。
ポータルクライアント100aは、リクエスト集約部104aを有する。リクエスト集約部104aは、複数のポートレットに関するリクエストを一つのリクエストに集約する。
レスポンス解析部101a及び再取得レスポンス処理部103aは、集約されたレスポンスを分解して処理する。
ポータルサーバ200aは、ポータルコンテナ210aにリクエスト分解部215a及びレスポンス集約部216aを有する。
リクエスト分解部215aは、ポータルクライアント100aから受信した集約されたリクエストを分解して送受信監視部211aに送信する。
レスポンス集約部216aは、ポートレットコンテナ220aから受信したレスポンスを集約してポータルクライアント100aに送信する。
他の構成については、第2の実施形態にかかる描画システム2000における対応する構成と同様である。
描画時間を短縮する別の関連技術として、図16に示す方法がある。すなわち、この方法は、Ajax(エイジャックス)技術を利用してポートレットコンテンツを画面描画後に取得するようにし、クライアントの描画処理とサーバの処理を一部同時に実行する。しかし、この方法では、ポートレットの数の分だけクライアントからリクエスト(ajaxリクエスト)が送信されるため、ポータルサーバに各ポータルサイトのクライアント数×ポートレット数の負荷がかかる。すなわち、大量のコネクションを利用するため、サーバ負荷がかかり処理効率が下がる。そのため、サーバの台数を増やすか、ハイスペックなサーバを準備するかしなければならなかった。
これに対し、本実施形態は、リクエストを1リクエストに集約して送信することにより、リクエスト数を削減することができ、ポータルサーバ200aのリクエスト受信負荷を軽減することができる。
なお、未完了のポートレットが複数存在する場合には、本実施形態は、リクエストを再送する際にも複数のリクエストを一つのリクエストに集約することができる。
<第4の実施の形態>
図10は、第4の実施形態にかかる画面描画システム3000の構成図である。画面描画システム3000では、第2の実施形態にかかる画面描画システム2000において、ポータルコンテナ210bに重複データ上書き部201b、ポートレットコンテナ220bにリクエストキュー格納部222b、リクエスト格納キュー223b及び重複データ上書き部201b´を追加する。
第2の実施形態は、ポートレットへのリクエストを無条件に送信する。これに対し本実施形態は、リクエストキュー格納部222bとリクエスト格納キュー223bを追加することにより、ポートレットへの過剰なリクエストの送信を抑止する。
ポータルサーバ200bは、あるポートレットのリクエスト実行前にポータルクライアント100bから再度リクエストを受信したとする。重複データ上書き部201b´は、当該リクエストがキュー内に滞留しているリクエストと同一のリクエスト、もしくは上書き可能なリクエストである場合は滞留しているリクエストを新規リクエストで上書きする。重複データ上書き部201bは、リクエストと同様、ポートレットからのレスポンスをキューに格納する際にも上書き可能なものがあれば上書きを行う。
続いて、図11及び12を用いて画面描画システム3000の動作を説明する。
図11は、画面描画システム3000の動作を説明するフロー図である。
図11のフローでは、第2の実施形態にかかる動作フロー(図5及び6)に以下のように動作を追加する。
重複データ上書き部201bは、リクエストID付加(b2)の後にリクエスト重複チェックを行う(bb1)。図11の(d)は、リクエストまたはレスポンスの重複チェック((b)のbb1と(c)のcc1)における動作を詳細に示したものである。重複データ上書き部201bは、キュー内のリクエストの数がindexの値より大きい場合(d1でyes)、かつ、キューのindex番目の情報が上書き可能な場合(d2でyes)、キュー内のリクエストを確認し、上書き可能なリクエストがあれば上書きする(d3)。リクエストが上書き可能でない場合、Indexをインクリメントする(d4)。なお、重複データ上書き部201bは、indexの値がキュー内リクエスト数に達するまで(d1でno)、上記の処理((d1)〜(d4))を繰り返す。(b)に戻り、上書き可能なリクエスト(重複データ)がなければ(bb2でno)、重複データ上書き部201bは、レスポンスキュー213bに追加する(bb3)。
上書きが可能であるか否かの判断は設定により変更することができる。判断条件の例を以下に示す。以下に示す条件のうちいずれか一つを満たした場合に重複データ上書き部201bは、上書き可能と判断するものとする。
・HTTP GETメソッドである。
・同一ポートレットウィンドウ(指定するWindowIDが同じ)からのリクエストである。
・同一ポートレットウィンドウ(指定するWindowIDが同じ)へ返却するリクエストである。
図11の(c)に示すように、レスポンスについても同様に、重複データ上書き部201bは、キュー格納前にレスポンスの重複チェック(cc1)を行う。すなわち、重複データ上書き部201bは、キュー内のレスポンスを確認し、上書き可能なレスポンスがあれば上書きする(d3)。重複データ上書き部201bは、上書き可能なレスポンス(重複データ)がなければ(cc2でno)、キューに追加する(c7)。
通常、ポータルクライアントはポータルサーバから受信したデータを順次実行していくため、同一ポートレットに対するコンテンツが重複して含まれている場合は、無駄な描画処理を実行することになる。
図12は、画面描画システム3000の動作を説明する概念図である。図12では、ポータルクライアント100b(クライアントID:c1)からポータルサーバ200bに対して「クライアントID:c1、HTTPメソッド:GET、ポートレットモード:VIEWモード」の参照系リクエストがあった場合について示している。ポータルコンテナ210bは、リクエスト管理テーブル301bを参照し、リクエスト格納キュー223b内に同一クライアントからのリクエストを発見した場合、リクエストを上書きし、リクエスト管理テーブル301bを更新する。
本実施形態にかかる画面描画システム3000は、重複データ上書き部201b´を有することにより、ポートレットへ送信するリクエストと同一のリクエストがキュー223bに格納されている場合、上書きすることで同一のリクエスト処理を行わない。この結果、画面描画システム3000は、ポートレットのリクエスト受信負荷を軽減することができるとともにクライアントが期待する結果を早く送信することができる。
また、画面描画システム3000は、クライアントへ送信するレスポンスと同一のレスポンスがレスポンスキュー213bに格納されている場合も、重複データ上書き部201bにより上書きすることでクライアントが同一の描画処理を行わないようにする。この結果、画面描画システム3000は、ポータルクライアントにおける冗長処理を削除することができる。
<第5の実施の形態>
図13は、第5の実施形態にかかる画面描画システム4000の構成図である。画面描画システム4000は、第2の実施形態にかかる画面描画システム2000においてポータルサーバのポータルコンテナに処理中リクエスト判定部214cを追加した構成である。処理中リクエスト判定部214cは、処理中の同一リクエストの有無の確認を行う。それ以外の要素で、番号の後に符号「c」を付した要素は、全て前述までの実施形態と同じであり、それらの説明は省略する。
第2の実施形態においては、ポートレットへのリクエストを無条件に送信する。また、第3の実施形態においては、あるポートレットのリクエスト実行前にポータルクライアント100cから再度リクエストを受信した場合に、キュー内に滞留しているリクエストの中に同一のリクエスト、もしくは上書き可能なリクエストがあれば滞留しているリクエストを新規リクエストで上書きする。
これに対し本実施形態では、ポートレットが同一リクエストを処理している場合に過剰なリクエストの送信を抑止する。また、本実施形態は、リクエストと同様、ポートレットからのレスポンスをキューに格納する際にも上書き可能なものがあれば上書きを行う。
図14を用いて画面描画システム4000の動作を説明する。図14のフローでは、第2の実施形態にかかる動作フロー(図5及び図6)に以下のように動作を追加する。
処理中リクエスト判定部214cは、ポートレットリクエスト送信処理(a4、b1からb5)の前に、記憶装置300cが管理するリクエスト管理テーブル301c内にあるリクエスト情報を参照し、処理中の同一リクエストの有無の確認を行う(b6)。処理中のリクエストがあれば(b6でyes)、リクエストIDを処理中のリクエストIDに変更し(b7)、同一リクエストは処理しないで終了する。処理中のリクエストがなければ(b6でno)、図5のa4(図6の(b)のb1からb5)と同様の動作を行う。
通常、クライアントはサーバから受信したデータを順次実行していくため、同一ポートレットに対するコンテンツが重複して含まれている場合は無駄な描画処理を実行することになる。
本実施形態にかかる画面描画システム4000によれば、ポートレットへ送信するリクエストと同一のリクエストをポートレットに送信しないことで同一のリクエスト処理を行わない。この結果、画面描画システム4000は、ポートレットのリクエスト受信負荷を軽減することができる。
上記の実施形態の一部又は全部は、以下のようにも記載されうるが、以下には限られない。
(付記1)
ポータルサーバとポータルクライアントとを有する画面描画システムであって、前記ポータルサーバは、前記ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスを前記ポータルクライアントに送信し、前記ポータルクライアントは、前記レスポンスを解析して画面描画を行うレスポンス解析手段と、前記レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信するリクエスト再送タイマー手段と、を有する画面描画システム。
(付記2)
前記ポータルサーバは、前記レスポンスに未完了のポートレットの処理完了予定時刻を含め、前記リクエスト再送タイマー部は、前記処理完了予定時刻後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、付記1に記載の画面描画システム。
(付記3)
平均応答時間管理テーブルを記憶する記憶装置をさらに有し、前記ポータルサーバは、前記平均応答時間管理テーブルより前記未完了のポートレットの処理予定時刻を取得する、付記2に記載の画面描画システム。
(付記4)
前記ポータルクライアントは、複数のポートレットに関するリクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記1乃至3のいずれか一項に記載の画面描画システム。
(付記5)
複数の前記再取得リクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記1乃至4のいずれか一項に記載の画面描画システム。
(付記6)
前記ポータルサーバはリクエストキューと重複データ上書き手段とをさらに有し、前記重複データ上書き手段は、重複する又は上書き可能なリクエストを取得した場合に前記リクエストキュー内のリクエストを上書きする、付記1乃至5のいずれか一項に記載の画面描画システム。
(付記7)
前記ポータルサーバは処理中リクエスト判定手段をさらに有し、前記処理中リクエスト判定手段により、前記ポータルクライアントより取得したリクエストと前記ポータルサーバが処理しているリクエストとが同一であると判定された場合に前記ポータルサーバは前記取得したリクエストの処理を行わない、付記1乃至6のいずれか一項に記載の画面描画システム。
(付記8)
ポートレットを有するポータルサーバと、ポータルクライアントとを用いた画面描画システムにおける画面描画方法であって、前記ポータルサーバが前記ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスを前記ポータルクライアントに送信し、前記ポータルクライアントが前記レスポンスに基づいて画面描画を行い、前記レスポンスに未完了のポートレットに関する情報が含まれている場合に前記ポータルクライアントが、所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、画面描画方法。
(付記9)
前記ポータルサーバは、前記レスポンスに未完了のポートレットの処理完了予定時刻を含め、前記処理完了予定時刻後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、付記8に記載の画面描画方法。
(付記10)
前記画面描画システムは、平均応答時間管理テーブルを記憶する記憶装置をさらに有し、前記ポータルサーバは、前記平均応答時間管理テーブルより前記未完了のポートレットの処理予定時刻を取得する、付記9に記載の画面描画方法。
(付記11)
前記ポータルクライアントは、複数のポートレットに関するリクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記8乃至10のいずれか一項に記載の画面描画方法。
(付記12)
前記ポータルクライアントは、複数の前記再取得リクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記8乃至11のいずれか一項に記載の画面描画方法。
(付記13)
前記ポータルサーバはリクエストキューを有し、前記ポータルサーバが重複する又は上書き可能なリクエストを取得した場合に前記リクエストキュー内のリクエストを上書きする重複データ上書きステップをさらに含む、付記8乃至12のいずれか一項に記載の画面描画方法。
(付記14)
前記ポータルサーバが自身の処理するリクエストを判定する処理中リクエスト判定ステップをさらに含み、前記処理中リクエスト判定ステップにて、前記ポータルクライアントより取得したリクエストと前記ポータルサーバが処理しているリクエストとが同一であると判定された場合に前記ポータルサーバは前記取得したリクエストの処理を行わない、付記8乃至13のいずれか一項に記載の画面描画方法。
(付記15)
ポータルサーバへリクエストを送信し、前記リクエストに対応するポートレットを含むレスポンスを取得するポータルクライアントであって、前記レスポンスに基づいて画面描画を行うレスポンス解析手段と、前記レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信するリクエスト再送タイマー手段と、を有するポータルクライアント。
(付記16)
複数のポートレットに関するリクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記15に記載のポータルクライアント。
(付記17)
複数の前記再取得リクエストを一つのリクエストに集約して前記ポータルサーバに送信する、付記15又は16に記載のポータルクライアント。
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
この出願は、2014年2月17日に出願された日本出願特願2014−027581を基礎とする優先権を主張し、その開示の全てをここに取り込む。
10、100、100a、100b、100c ポータルクライアント
11、101、101a、101b、101c レスポンス解析部
12、102、102a、102b、102c リクエスト再送タイマー部
20、200、200a、200b、200c ポータルサーバ
21、221、221a、221b、221c ポートレット
103、103a、103b、103c 再取得レスポンス処理部
104、104a リクエスト集約部
201b、201b´ 重複データ上書き部
210、210a、210b、210c ポータルコンテナ
211、211a、211b、211c 送受信監視部
212、212a、212b、212c レスポンスキュー格納部
213、213a、213b、213c レスポンスキュー
214c 処理中リクエスト判定部
215a リクエスト分解部
216a レスポンス集約部
220、220a、220b、220c ポートレットコンテナ
222b リクエストキュー格納装置
223b リクエスト格納キュー
300、300a、300b、300c 記憶装置
301、301a、301b、301c リクエスト管理テーブル
302、302a、302b、302c 平均応答時間管理テーブル
303、303a、303b、303c ポートレット待ち時間管理テーブル
1000、2000、2000a、3000、4000 画面描画システム

Claims (10)

  1. ポータルサーバとポータルクライアントとを有する画面描画システムであって、
    前記ポータルサーバは、前記ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスを前記ポータルクライアントに送信し、
    前記ポータルクライアントは、前記レスポンスを解析して画面描画を行うレスポンス解析手段と、
    前記レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信するリクエスト再送タイマー手段と、を有する画面描画システム。
  2. 前記ポータルサーバは、前記レスポンスに未完了のポートレットの処理完了予定時刻を含め、
    前記リクエスト再送タイマー手段は、前記処理完了予定時刻後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、請求項1に記載の画面描画システム。
  3. 平均応答時間管理テーブルを記憶する記憶装置をさらに有し、
    前記ポータルサーバは、前記平均応答時間管理テーブルより前記未完了のポートレットの処理予定時刻を取得する、請求項2に記載の画面描画システム。
  4. 前記ポータルクライアントは、複数のポートレットに関するリクエストを一つのリクエストに集約して前記ポータルサーバに送信する、請求項1乃至3のいずれか一項に記載の画面描画システム。
  5. 前記ポータルサーバはリクエストキューと重複データ上書き手段とをさらに有し、
    前記重複データ上書き手段は、重複する又は上書き可能なリクエストを取得した場合に前記リクエストキュー内のリクエストを上書きする、請求項1乃至4のいずれか一項に記載の画面描画システム。
  6. 前記ポータルサーバは処理中リクエスト判定手段をさらに有し、
    前記処理中リクエスト判定手段により、前記ポータルクライアントより取得したリクエストと前記ポータルサーバが処理しているリクエストとが同一であると判定された場合に前記ポータルサーバは前記取得したリクエストの処理を行わない、請求項1乃至5のいずれか一項に記載の画面描画システム。
  7. ポートレットを有するポータルサーバと、ポータルクライアントとを用いた画面描画システムにおける画面描画方法であって、
    前記ポータルサーバが前記ポータルクライアントからのリクエストに対応するポートレットを含むレスポンスを前記ポータルクライアントに送信し、
    前記ポータルクライアントが前記レスポンスに基づいて画面描画を行い、
    前記レスポンスに未完了のポートレットに関する情報が含まれている場合に前記ポータルクライアントが、所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、
    画面描画方法。
  8. 前記ポータルサーバは、前記レスポンスに未完了のポートレットの処理完了予定時刻を含め、前記処理完了予定時刻後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信する、請求項7に記載の画面描画方法。
  9. ポータルサーバへリクエストを送信し、前記リクエストに対応するポートレットを含むレスポンスを取得するポータルクライアントであって、
    前記レスポンスに基づいて画面描画を行うレスポンス解析部と、
    前記レスポンスに未完了のポートレットに関する情報が含まれている場合に所定時間後に前記未完了のポートレットに対応するコンテンツの再取得リクエストを前記ポータルサーバに送信するリクエスト再送タイマー部と、を有するポータルクライアント。
  10. 複数のポートレットに関するリクエストを一つのリクエストに集約して前記ポータルサーバに送信する、請求項9に記載のポータルクライアント。
JP2015562753A 2014-02-17 2015-02-13 画面描画システム、画面描画方法及びポータルクライアント Pending JPWO2015122197A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014027581 2014-02-17
JP2014027581 2014-02-17
PCT/JP2015/000674 WO2015122197A1 (ja) 2014-02-17 2015-02-13 画面描画システム、画面描画方法及びポータルクライアント

Publications (1)

Publication Number Publication Date
JPWO2015122197A1 true JPWO2015122197A1 (ja) 2017-03-30

Family

ID=53799945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015562753A Pending JPWO2015122197A1 (ja) 2014-02-17 2015-02-13 画面描画システム、画面描画方法及びポータルクライアント

Country Status (2)

Country Link
JP (1) JPWO2015122197A1 (ja)
WO (1) WO2015122197A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7315750B2 (ja) * 2017-10-18 2023-07-26 株式会社三菱Ufj銀行 サーバシステム、クライアント装置及びプログラム
JP2019128746A (ja) * 2018-01-24 2019-08-01 富士ゼロックス株式会社 情報処理装置、データ配信システムおよびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0793244A (ja) * 1993-09-21 1995-04-07 Fuji Xerox Co Ltd 外部記憶制御装置
WO2003052569A1 (fr) * 2001-12-07 2003-06-26 Ntt Docomo, Inc. Terminal de communication mobile, procede et programme de commande d'execution d'applications et support d'enregistrement lisible par ordinateur
US20040205555A1 (en) * 2001-09-18 2004-10-14 International Business Machines Corporation Low-latency, incremental rendering in a content framework
JP2007500889A (ja) * 2003-07-31 2007-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期的に要求を処理するための方法、サーバシステム、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11184784A (ja) * 1997-12-19 1999-07-09 Fuji Xerox Co Ltd 実行状況報告機能付きサーバ及び実行状況表示機能付きクライアント
JP3735022B2 (ja) * 2000-08-22 2006-01-11 日本電信電話株式会社 リクエスト集約装置
CN100535900C (zh) * 2005-12-06 2009-09-02 国际商业机器公司 用于提供异步门户页的方法和系统
JP2012244460A (ja) * 2011-05-20 2012-12-10 Ricoh Co Ltd ジョブ管理プログラム、記録媒体、ジョブ管理方法及びジョブ管理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0793244A (ja) * 1993-09-21 1995-04-07 Fuji Xerox Co Ltd 外部記憶制御装置
US20040205555A1 (en) * 2001-09-18 2004-10-14 International Business Machines Corporation Low-latency, incremental rendering in a content framework
WO2003052569A1 (fr) * 2001-12-07 2003-06-26 Ntt Docomo, Inc. Terminal de communication mobile, procede et programme de commande d'execution d'applications et support d'enregistrement lisible par ordinateur
JP2007500889A (ja) * 2003-07-31 2007-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期的に要求を処理するための方法、サーバシステム、及びプログラム

Also Published As

Publication number Publication date
WO2015122197A1 (ja) 2015-08-20

Similar Documents

Publication Publication Date Title
CN107590001B (zh) 负载均衡方法及装置、存储介质、电子设备
US10715388B2 (en) Using a container orchestration service for dynamic routing
KR101433981B1 (ko) 웹 기반 애플리케이션의 오프라인 실행
JP5022301B2 (ja) プロキシサーバおよび通信中継プログラム、並びに通信中継方法
US9329858B2 (en) Managing access to resource versions in shared computing environments
US8924867B2 (en) Web interface for remote platform build
US9432449B2 (en) Managing connection failover in a load balancer
US9935828B2 (en) Application controller to support incremental deployment
CN106462611A (zh) 网络访问性能增强
US11689626B2 (en) Transport channel via web socket for ODATA
JP5936103B2 (ja) クライアントでJavaメソッドを呼び出すシステム、コンピュータ、方法及びプログラム
US10868881B1 (en) Loading web resources using remote resource pushing
US11327811B2 (en) Distributed computing mesh
US10594550B2 (en) Dynamic product installation based on user feedback
US8867073B2 (en) Server apparatus, network system, job processing method, and storage medium
CN109729177B (zh) 用于生成信息的方法和装置
US20130124971A1 (en) Real time web script refresh using asynchronous polling without full web page reload
WO2015122197A1 (ja) 画面描画システム、画面描画方法及びポータルクライアント
US10719573B2 (en) Systems and methods for retrieving web data
US9369544B1 (en) Testing compatibility with web services
CN112115056B (zh) 一种项目部署方法和装置、服务器、存储介质
US9621630B2 (en) Distribution method, distribution apparatus, and terminal apparatus
CN113542282A (zh) 一种跨计算中心文件传输方法、装置、设备及存储介质
JP5410487B2 (ja) キャッシュサーバ、ウェブサーバ及び方法
TWI525530B (zh) 同步顯示操作資訊的方法、系統及裝置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180612