(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-08-08
(45)【発行日】2022-08-17
(54)【発明の名称】ページ表示速度改善処理システム
(51)【国際特許分類】
H04L 67/5681 20220101AFI20220809BHJP
H04L 67/02 20220101ALI20220809BHJP
G06F 11/34 20060101ALI20220809BHJP
【FI】
H04L67/5681
H04L67/02
G06F11/34 176
G06F11/34 128
(21)【出願番号】P 2022015710
(22)【出願日】2022-02-03
【審査請求日】2022-03-08
【新規性喪失の例外の表示】特許法第30条第2項適用 令和3年2月5日および令和3年5月28日に、いずれもウェブサイト上で発表
【早期審査対象出願】
(73)【特許権者】
【識別番号】522047491
【氏名又は名称】アイデアマンズ株式会社
(74)【代理人】
【識別番号】100137338
【氏名又は名称】辻田 朋子
(72)【発明者】
【氏名】宮永 邦彦
【審査官】岩田 玲彦
(56)【参考文献】
【文献】特開2014-229119(JP,A)
【文献】村山 哲治,講座 Web広告,企業と広告 第46巻 第7号 ,(株)チャネル,2020年07月01日,第46巻,P.24-25
【文献】泉水 翔吾,[詳解] Chrome Developer Tools Web開発を加速する 第2章 ネットワーク処理の調査と改善 データの転送を最適化し、Webページの初期表示を高速化する,WEB+DB PRESS Vol.89 ,日本,(株)技術評論社,2015年11月25日,第89巻,P.18-24
(58)【調査した分野】(Int.Cl.,DB名)
H04L 67/5681
H04L 67/02
G06F 11/34
(57)【特許請求の範囲】
【請求項1】
Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理装置であって;
前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し;
前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求め;
前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録し;
前記Webサーバと未接続状態の再生処理過程において、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補
の改変を実行した結果を前記Webサーバの応答
の模倣によって確認する;
ように構成されたプロセッサを備えるページ表示速度改善処理装置。
【請求項2】
Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理装置であって;
前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し、前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める測定処理部と;
前記測定処理部による前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録する記録プロキシ部と;
前記記録プロキシ部を介して前記リソース情報及び前記通信性能情報を記録する記録部と;
前記Webサーバと未接続状態の再生処理過程において、
前記測定処理部との連携により、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補
の改変を実行した結果を前記Webサーバの応答
の模倣によって確認する再生プロキシ部と;
を備えるページ表示速度改善処理装置。
【請求項3】
前記測定処理部は、Webブラウザと、少なくとも1つのベンチマークプログラムとを含み、
前記ベンチマークプログラムは、前記Webブラウザに前記表示速度改善対象のWebページの読み込みを指示し、
前記Webブラウザは、前記記録プロキシ部を経由する前記Webサーバとの通信により前記Webサーバから前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報を取得し、
前記ベンチマークプログラムは、前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める、
請求項2記載のページ表示速度改善処理装置。
【請求項4】
前記測定処理部が複数のベンチマークプログラムを含むとき、予め定められたベンチマークプログラムが前記Webブラウザと協働する、
請求項3記載のページ表示速度改善処理装置。
【請求項5】
前記表示速度改善対象のWebページが複数種類のリソースを含むとき、
前記複数種類のリソースは、所定のマークアップ言語により記述された文書、Webページのスタイルを設定する情報、動作を指定するプログラム、及び画像の内の複数を少なくとも含む、
請求項1、2、3または4記載のページ表示速度改善処理装置。
【請求項6】
Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理方法であって;
前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し;
前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求め;
前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録し;
前記Webサーバと未接続状態の再生処理過程において、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補
の改変を実行した結果を前記Webサーバの応答
の模倣によって確認する;
処理をプロセッサが実行するページ表示速度改善処理方法。
【請求項7】
Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理装置によって実行されるページ表示速度改善処理方法であって;
前記ページ表示速度改善処理装置は、測定処理部、記録プロキシ部、記録部、及び再生プロキシ部を備え;
前記測定処理部は、前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し、前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求め;
前記記録プロキシ部は、前記測定処理部による前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録し;
前記記録部は、前記記録プロキシ部を介して前記リソース情報及び前記通信性能情報を記録し;
前記再生プロキシ部は、前記Webサーバと未接続状態の再生処理過程において、
前記測定処理部との連携により、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補
の改変を実行した結果を前記Webサーバの応答
の模倣によって確認する;
ページ表示速度改善処理方法。
【請求項8】
請求項6記載のページ表示速度改善処理方法をプロセッサに実行させるページ表示速度改善処理プログラム。
【請求項9】
請求項7記載のページ表示速度改善処理方法をページ表示速度改善処理装置に実行させるページ表示速度改善処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ページ表示速度改善処理装置に関し、更には、ページ表示速度改善処理方法及びページ表示速度改善処理プログラムに関する。
【背景技術】
【0002】
インターネットの世界的な普及により、ユーザは、携帯電話端末及びコンピュータ端末などの端末装置を介して、Web(World Wide Web)上に公開されているWebサーバから各種情報(データを含む)を容易に取得可能である。ユーザはWebサーバから取得される各種情報を端末装置(閲覧者利用端末と記載することもある)における閲覧ソフトウェアのWebブラウザにより閲覧できる。
【0003】
Webサーバは、通常、URL(Uniform Resource Locator)により指定され、運用・管理しているWebサイト内の各種情報を閲覧者利用端末にWebページとして閲覧可能に提供する。Webページは文書及び画像などの複数種類のリソースを参照する形態で含み、閲覧者利用端末におけるWebブラウザがこれらのリソースを読み込むことにより、Webページが閲覧可能になる。
【0004】
閲覧者利用端末におけるWebページの表示速度が遅いと、閲覧者は該当のWebサイトから離脱しやすくなる傾向があるので、Webページの表示速度は可能な限り速いことが望まる。
【0005】
例えば、特許文献1,2,3においては、次に示す関連背景技術が提案されている。つまり、特許文献1には、インターネットにおいて、WebクライアントとWebサーバとの間に介在するWebプロキシサーバ(キャッシュサーバ)で、Webコンテンツのデータをキャッシュ(キャッシュデータを記憶)し、Webクライアントへ提供(代理応答)することにより、Webクライアントへの応答性能などを向上することが開示されている(例えば、段落[0002]参照)。
【0006】
また、特許文献2には、ユーザの要求時、WWWページをプロキシと呼ばれるキャッシュシステムでキャッシュし、他のユーザ要求が発生した場合、WWWサーバに更新の否かを問い合わせ、ページの更新がなければプロキシ内のキャッシュのページを使用するページアクセス方法及び高速化方法が開示されている(例えば、
図21、段落[0008]参照)。
【0007】
さらに、特許文献3には、ワールド・ワイド・ウェブのパフォーマンスを制限する主要な要因は、インターネット(20)を介してウェブ・サーバ(40)からクライアントに情報を供給し得る速度であること、及び一構成におけるキャッシュは、
図1に示されるように、論理的にウェブ・クライアント(10a、10b)と、ウェブ・サーバ(40)の間に介挿されるプロキシ・サーバ(30)内に置かれることが開示されている(例えば、
図1、段落[0006],[0007]参照)。
【先行技術文献】
【特許文献】
【0008】
【文献】特開2013-105227号公報
【文献】特開2000-250841号公報
【文献】特表2002-511616号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、上記特許文献1,2,3においては、Webページ自体の表示速度を改善可能にする処理技術は開示されていない。つまり、上記特許文献1,2,3は、Webサーバから閲覧者利用端末に提供されるWebページを構成するリソースを適正に改変(変更)することにより、Webページの表示速度を改善可能にするページ表示速度改善処理技術について開示していない。
【0010】
出願人の探究によると、Webページを構成するリソースが複数種類であり、かつ多数であるときは、リソース間の相互関係が複雑になり、改変結果の予測を困難にする。表示を速くすることを意図したWebページを構成するリソースについての改変が、理論上は正しくても期待する結果を得られないことが多々起こる。この結果、稼働状態のWebサーバに対する影響を防止または抑制するために、実際の運用前の試験において、表示速度を正確に測定し、Webページを構成するリソースを適正に改変することは困難である。
【0011】
課題は、稼働状態のWebサーバに対する影響を防止または抑制しつつ、Webサーバから閲覧者利用端末に提供されるWebページ自体の表示速度を改善可能にするページ表示速度改善処理技術を提供することにある。
【課題を解決するための手段】
【0012】
上記課題を解決するために、一態様のページ表示速度改善処理装置は、Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理装置であって;
前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し;
前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求め;
前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録し;
前記Webサーバと未接続状態の再生処理過程において、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補を改変するために、前記Webサーバの応答を模倣する;ように構成されたプロセッサを備える。
【0013】
他の態様のページ表示速度改善処理装置は、Webサーバから閲覧者利用端末に提供されるWebページについての表示速度を改善するページ表示速度改善処理装置であって;
前記Webサーバとの通信により前記Webサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し、前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める測定処理部と;
前記測定処理部による前記Webサーバとの通信過程において、前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報と、前記リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録する記録プロキシ部と;
前記記録プロキシ部を介して前記リソース情報及び前記通信性能情報を記録する記録部と;
前記Webサーバと未接続状態の再生処理過程において、前記記録部の記録内容に基づいて、前記リソースにおける表示速度阻害要因の指定候補を改変するために、前記測定処理部との連携により前記Webサーバの応答を模倣する再生プロキシ部と;を備える。
【0014】
上記他の態様において、前記測定処理部は、Webブラウザと、少なくとも1つのベンチマークプログラムとを含み、
前記ベンチマークプログラムは、前記Webブラウザに前記表示速度改善対象のWebページの読み込みを指示し、
前記Webブラウザは、前記記録プロキシ部を経由する前記Webサーバとの通信により前記Webサーバから前記表示速度改善対象のWebページを構成する前記リソースに関する前記リソース情報を取得し、
前記ベンチマークプログラムは、前記リソース情報の取得に関係する時間情報に基づいて前記表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める。
【0015】
上記他の態様において、前記測定処理部が複数のベンチマークプログラムを含むとき、予め定められたベンチマークプログラムが前記Webブラウザと協働する。
【0016】
上記各態様において、前記表示速度改善対象のWebページが複数種類のリソースを含むとき、前記複数種類のリソースは、所定のマークアップ言語により記述された文書、Webページのスタイルを設定する情報、動作を指定するプログラム、及び画像の内の複数を少なくとも含む、
【0017】
上述した各態様のページ表示速度改善処理装置における特徴は、ページ表示速度改善処理方法として実施してもよい。また、ページ表示速度改善処理方法をプロセッサなどに実行させるページ表示速度改善処理プログラムとして実施してもよい。
【発明の効果】
【0018】
開示した技術によれば、稼働状態のWebサーバに対する影響を防止または抑制しつつ、Webサーバから閲覧者利用端末に提供されるWebページ自体の表示速度を改善可能にするページ表示速度改善処理技術を提供することができる。
【0019】
他の課題、特徴及び利点は、図面及び特許請求の範囲とともに取り上げられる際に、以下に記載される発明を実施するための形態を読むことにより明らかになるであろう。
【図面の簡単な説明】
【0020】
【
図1】一実施の形態のページ表示速度改善処理システムの構成を説明するための図。
【
図2】一実施の形態のページ表示速度改善処理装置の構成及び機能を説明するための図。
【
図3】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【
図4】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【
図5】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【0021】
【
図6】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【
図7】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【
図8】一実施の形態におけるページ表示速度改善処理装置の詳細を説明するための図。
【
図9】一実施の形態におけるページ表示速度改善処理を説明するための図。
【発明を実施するための形態】
【0022】
以下、添付図面を参照して、さらに詳細に説明する。図面には好ましい実施形態が示されている。しかし、多くの異なる形態で実施されることが可能であり、本明細書に記載される実施形態に限定されない。
【0023】
[ページ表示速度改善処理システム]
一実施の形態におけるシステム構成を示す
図1を参照すると、ページ表示速度改善処理システム1は、ページ表示速度改善処理装置2、複数のWeb(World Wide Web)サーバ3、複数の閲覧者利用端末4、及び通信ネットワーク5を含む。
【0024】
通信ネットワーク5は、無線及び有線のデータ通信を可能とし、インターネットなどのIP(Internet Protocol)網などから構成され、ページ表示速度改善処理装置2、複数のWebサーバ3、及び複数の閲覧者利用端末4をそれぞれ収容する。なお、以下の説明では、不明確にならない限り通信ネットワーク5の介在を省略する。
【0025】
各Webサーバ3は、通常、URL(Uniform Resource Locator)により指定され、運用・管理しているWebサイト内の各種情報(データを含む)を要求(リクエスト)された閲覧者利用端末4にWebページや個々のリソースとして閲覧(参照)可能に提供する。Webサーバ3と閲覧者利用端末4との間の通信は、所定のプロトコル(通信規則)、ここではHTTP(Hyper Text Transfer Protocol)に則って実施される。
【0026】
ユーザである閲覧者は、スマートフォンを含む携帯電話端末、及びパーソナルコンピュータ及びタブレット端末を含むコンピュータ端末などの無線及び有線のデータ通信機能を有する閲覧者利用端末4を介して、Web(World Wide Web)上に公開されているWebサーバ3から所望のWebページ及びリソースを取得可能である。
【0027】
Webページは文書及び画像などの複数種類のリソースを参照する形態で含み、閲覧者利用端末4における閲覧ソフトウェアのWebブラウザがこれらのリソースを読み込むことにより、閲覧者は所望のWebページを閲覧できる。
【0028】
後に詳述するように、このページ表示速度改善処理システム1においては、ページ表示速度改善処理装置2は、Webサイトを運用・管理するWebサーバ3から閲覧者利用端末4に提供されるWebページについての表示速度を改善するために設けられている。
【0029】
更に詳述すると、上述したページ表示速度改善処理システム1におけるページ表示速度改善処理装置2は、
図2に例示するように、ハードウェア構成要素を含んでいる。
【0030】
つまり、情報処理装置であるページ表示速度改善処理装置2は、ハードウェア構成要素として、プロセッサとしてのCPU(Central Processing Unit)200と、作業用メモリとしてのRAM(Random Access Memory)201と、立ち上げのためのブートプログラムを格納したROM(Read Only Memory)202とを備える。
【0031】
ページ表示速度改善処理装置2は、OS(Operating System)、アプリケーションプログラム、及び各種情報(データを含む)を書換え可能に格納する不揮発性のフラッシュメモリ203と、無線及び有線のデータ通信機能を有する通信制御部204と、NIC(Network Interface Card)などの通信インタフェース(IF)部205とを更に備える。
【0032】
また、ページ表示速度改善処理装置2は、ディスプレイ(LCD:Liquid Crystal Display)を含む表示部206と、表示制御部207と、テンキー、各種機能ボタン(キー)、ポインティング部、及びカーソル送り部などを含む情報入力・指定部208などとを更に備える。
【0033】
ページ表示速度改善処理装置2は、後に詳述する機能構成要素として、測定処理部21、記録プロキシ部22、記録部23、再生プロキシ部24、ベンチマークプログラム25、及びWebブラウザ26を備える。ここで、ベンチマークプログラム25及びWebブラウザ26はフラッシュメモリ203に格納される。
【0034】
一例であるが、ページ表示速度改善処理装置2において、上述した他の機能構成要素(21-24)を論理的に実現するには、フラッシュメモリ203にページ表示速度改善処理プログラムをアプリケーションプログラムとしてインストールする。そして、ページ表示速度改善処理装置2においては、操作者による指示または電源投入を契機に、プロセッサ(CPU)200がページ表示速度改善処理プログラムをRAM201に展開して実行する。ページ表示速度改善処理プログラムは、上述したハードウェア構成要素と連携して、後に詳述するページ表示速度改善処理を遂行する。
【0035】
上述したページ表示速度改善処理システム1におけるWebサーバ3及び閲覧者利用端末4の具体的構成は、当業者が容易に理解でき、実施可能であるので、図示を省略している。
【0036】
[ページ表示速度改善処理装置の詳細]
次に、
図1,
図2及び関連図(
図3~
図9)を併せ参照して、ページ表示速度改善処理を実施するページ表示速度改善処理装置2について更に詳述する。
【0037】
図1に示すページ表示速度改善処理システム1におけるページ表示速度改善処理装置2は、Webサイトを運用・管理するWebサーバ3から閲覧者利用端末4に提供されるWebページについての表示速度を改善するために設けられている。
【0038】
通常、Webサイトは同一ドメインのWebページ及び各種リソースの集合体であり、このWebサイトにおける複数のWebページはトップページ及び同一ドメイン内のリンク先ページを含む。例えば、Webサーバ3を指定したり、Web上に存在する文書及び各種リソースを指定する際に用いるURLが「https://www.xxxxx.co.jp」である場合、「www.xxxxx.co.jp」の部分がドメイン(ここでは、Webサーバ3のドメイン名)である。
【0039】
通常のWebページは文書及び画像などの複数種類のリソースを参照する形態で含み、Webサーバ3の実運用状態では、閲覧者利用端末4における閲覧ソフトウェアのWebブラウザがこれらのリソースをWebサーバ3から読み込むことにより、閲覧者は所望のWebページを閲覧できる。
【0040】
複数種類のリソースは次に示す(a),(b),(c),(d)をリソース情報として少なくとも含む。
(a)全体構成の設計思想(architecture)となり、所定のマークアップ言語(例えば、HTML(Hyper Text Markup Language))により記述された文書(HTML文書またはHTML文書データと記載することもある)。
(b)意匠の設計書であるCSS(Cascading Style Sheets)。CSSは、Webページのスタイルを設定する情報(コード)であり、例えば、HTMLの要素を選択的にスタイル設定(文字の色や大きさなど)するために利用される。
(c)Webブラウザ上で動作するプログラムであり、例えば、JavaScriptを利用することにより、HTML及びCSSでは表現できない動作及び効果を指定可能である。
(d)静止画像及び/または動画像(画像データと記載することもある)。
【0041】
上記リソース(a)のHTML文書データはURLで指定した特定のWebサーバ3から取得される。シンプルなWebページは、HTML文書データを取得した特定のWebサーバ3から提供される少なくとも1つの種類のリソースで完結する場合がある。しかし、通常のWebページは、リソース情報としての上記複数種類のリソース(a),(b),(c),(d)をHTML文書データを取得したWebサーバ3以外を参照する形で含むこともあり、これにより効果的に可視表示される。
【0042】
図3を参照すると、ページ表示速度改善処理装置2は、機能構成要素として、測定処理部21、記録プロキシ部22、記録部23、及び再生プロキシ部24を備える。
【0043】
測定処理部21は、ページ表示速度改善処理の記録過程(プロセス)においては、記録プロキシ部22に接続され、ページ表示速度改善処理の再生過程(プロセス)においては、再生プロキシ部24に切替接続される。
【0044】
ページ表示速度改善処理装置2は、ページ表示速度改善処理の記録過程に限って、通信ネットワーク5を介して表示速度改善対象のWebページ(単に、表示速度改善対象ページと記載することもある)を提供するWebサーバ3と接続状態を維持するが、ページ表示速度改善処理の再生過程においては、該当のWebサーバ3と未接続状態であることが重要な一要素である。
【0045】
ページ表示速度改善処理装置2における測定処理部21は、Webサーバ3との通信によりWebサーバ3から表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し、リソース情報の取得に関係する時間情報に基づいて表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める測定機能を有する。
【0046】
図4に例示するように、この測定処理部21は、複数(厳密には、複数種類)のベンチマークプログラム(benchmark program)25及びWebブラウザ26を含む構成を採ることが可能である。測定処理部21が複数のベンチマークプログラム25を含むとき、測定可能な指標(表示速度関連指標)に応じて、予め定められたベンチマークプログラム25が順次にWebブラウザ26と協働する。
【0047】
測定処理部21を構成する特定のベンチマークプログラム25は、操作者の指示(例えば、リクエストURLの入力)を契機に、Webブラウザ26に表示速度改善対象のWebページの読み込み及び表示を指示する(
図9中の処理S1参照)。Webブラウザ26は、記録プロキシ部22を経由するWebサーバ3との通信によりWebサーバ3から表示速度改善対象のWebページを構成するリソースに関するリソース情報を取得する(
図9中の処理S2参照)。ベンチマークプログラム25は、リソース情報の取得に関係する時間情報に基づいて表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める(
図9中の処理S3参照)。
【0048】
ベンチマークプログラム25により測定可能な指標(表示速度関連指標)の一例を次に示す。この表示速度関連指標は表示速度改善対象のWebページ全体の速度を評価するための時間情報であり、ユーザ(閲覧者)にとっての体感速度評価指標である。
ここでは、例えば、第1のベンチマークプログラム25は指標TTFBを測定し、第2のベンチマークプログラム25は指標FCP,LCPを測定し、第3のベンチマークプログラム25は指標TBT,TTI,OnLoadを測定するように予め定められている。各ベンチマークプログラム25は、測定した指標を保存し、再生処理過程での評価に利用してもよい。
TTFB(Time to First Byte):リクエストからWebサーバ3が応答を開始するまでの時間
FCP(First Contentful Paint):最初のテキストや画像が表示されるまでの時間
LCP(Largest Contentful Paint):ビュー内の最も大きな画像が表示されるまでの時間
TBT(Total Blocking Time):Webブラウザ26で発生した高負荷の合計時間
TTI(Time to Interactive):Webブラウザ26が安定した応答性を示すまでの時間
OnLoad:Webページを構成する全てのリソースの読み込みが完了した時間
【0049】
複数の表示速度関連指標(測定指標)が存在するとき、測定指標に応じて適したベンチマークプログラムが異なるので、測定処理部21は複数のベンチマークプログラム25を含むことが好ましい。これにより、測定指標が追加及び変更された場合などにおいても柔軟に適応可能になる。
【0050】
測定処理部21を構成するWebブラウザ26は、一般的なWebブラウザと同様に、指定されたURLのHTML文書を読み込み、HTML文書中に参照を記述されたリソースを順次読み込みながらWebページを閲覧者に対するグラフィックとして描画する機能を有する。また、このWebブラウザ26は、一般的なWebブラウザと異なり、画面出力(可視表示)を伴わないオフスクリーン動作を行う更なる機能を有する。Webブラウザ26は、ベンチマークプログラム25からの指示に応じて動作し、表示速度関連指標を求めるための、読み込みや描画の進捗に関する情報を該当のベンチマークプログラム25に提供する。
【0051】
一般的なWebブラウザには、指定したネットワークホスト(プロキシ)を介して主要な通信を行う汎用的な機能(プロキシ機能)がある。測定処理部21を構成するWebブラウザ26は、この汎用的な機能を有し、Webページの読込過程のデータ通信を記録プロキシ部22を通して実施する。
【0052】
記録プロキシ部22は、測定処理部21によるWebサーバ3との通信過程において、表示速度改善対象ページを構成するリソースを個別に識別する。そして、記録プロキシ部22は、リソースの内容に関するリソース情報と、リソース毎のレイテンシ(取得時間)及び平均データレート(伝送速度)を含む通信性能情報とを取得して記録部23に記録する(
図9中の処理S4参照)。
【0053】
図5に示すように、測定処理部21を構成するWebブラウザ26は、Webページを構成する複数種類のリソースのそれぞれについて、記録プロキシ部22を通して、Webサーバ3に対するリクエストを送出すると共に、Webサーバ3からのレスポンスを受信する。そして、記録プロキシ部22はリクエスト及びレスポンスに関する情報を対として記録部23に記録する。
【0054】
Webブラウザ26から記録プロキシ部22を経由したWebサーバ3へのリクエストに関する通信内容は、リクエストURL(Webサーバ3のアドレス及び/またはリソースの格納位置情報を指定)、及びHTTPリクエストメソッド(GET/POSTなど)を通信内容情報として含む。
【0055】
また、Webサーバ3から記録プロキシ部22を経由したWebブラウザ26へのレスポンスに関する通信内容は、HTTPレスポンスステータスコード(成功やエラーに関する数値コード200/404など)、HTTPレスポンスヘッダ(付帯情報)、及びリソースデータ本体(レスポンスデータ)を通信内容情報として含む。
【0056】
さらに、通信性能はレイテンシ及び平均データレートを通信性能情報として含む。レイテンシ(ms)は、記録プロキシ部22がWebブラウザ26からのリクエストを受信した後、Webサーバ3が応答してデータの受信を開始するまでの時間である。平均データレート(byte/ms)は、伝送速度(通信速度)であり、式「記録時のデータ転送量/(データ受信完了時刻-データ受信開始時刻)」に基づいて、記録プロキシ部22により求められる。
【0057】
図6に例示するように、記録部23は、複数種類のリソースに関する情報、つまりリクエストURL、HTTPリクエストメソッド、HTTPレスポンスステータスコード、HTTPレスポンスヘッダ、レイテンシ、平均データレート、及びリソースデータ(レスポンスデータ)ファイルパスをJSON(Java Script Object Notification)形式で構造化されたテキストファイル(つまり、spec.jsonファイル)として記録する。なお、この記録方法は実装の一例であり、データベースを利用するなどの代替実装でもよい。
【0058】
また、記録部23は各リソースのリソースデータ(レスポンスデータ)を個々のファイルとしてファイルパス((HTTPメソッド)/(URL).(拡張子))と共に記録する。記録部23はこれらの情報記録のためにOS(Operating System)のファイルシステムと協働可能である。
【0059】
したがって、記録部23は、測定処理部21及び記録プロキシ部22と連携することにより、表示速度改善対象ページを構成する複数種類のリソースに関するリソース情報を含む通信内容情報及び通信性能情報をリソース毎に記録する(
図9中の処理S5参照)。
【0060】
Webページの表示速度を改善するためには、上記複数種類のリソース(a),(b),(c),(d)について個々のリソースの部分最適化を図ることが必要である。具体的には、HTML文書データ、CSSによるスタイル設定、JavaScriptによる動作設定、及び画像データの少なくとも1つを縮小するなどにより表示速度阻害要因の候補の最適化を図ることが可能になる。
【0061】
個々のリソースの部分最適化を図るために、測定処理部21は、ページ表示速度改善処理の再生過程においては、再生プロキシ部24と連携して再生処理を実行することで、Webサーバ3からの応答の変化によるWebページ全体の表示速度への影響を繰り返し試験する。
【0062】
一例であるが、測定処理部21は、JSON形式で構造化されたテキストファイルについてはテキストエディタを利用して改変し、汎用的なフォーマットで個々のファイルに保存されているリソースデータについてはテキストエディタ及びグラフィックソフトウェアなどの任意のアプリケーションソフトウェアを利用して改変する。
【0063】
図7を参照すると、Webブラウザの汎用的機能を有するWebブラウザ26によるWebサーバ3を対象にした全てのデータ通信は、再生プロキシ部24を経由して実施される。ここで重要な一要素は、再生プロキシ部24が、通信ネットワーク5及びWebサーバ3に接続せず、記録部23の記録内容に基づいて、Webサーバ3の応答を模倣することである。
【0064】
つまり、再生プロキシ部24は、Webサーバ3と未接続状態の再生処理過程において、記録部23の記録内容(通信内容情報及び通信性能情報)に基づいて、複数種類のリソースにおける表示速度阻害要因の指定候補を改変するために、測定処理部21との連携によりWebサーバ3の応答を模倣する(
図9中の処理S6参照)。
【0065】
更に詳述すると、個々のリソースの部分最適化を図るために、測定処理部21を構成する複数のベンチマークプログラム25及びWebブラウザ26は、ページ表示速度改善処理の再生過程においては、再生プロキシ部24と連携して記録部23の記録内容(通信内容情報及び通信性能情報)に基づいて、表示速度阻害要因のリソースを改変する再生処理を実行することで、Webサーバ3からの応答の変化によるWebページ全体の表示速度への影響を繰り返し試験する。そして、複数のベンチマークプログラム25は、繰り返し試験する度に、表示速度関連指標を測定して表示する。この表示に基づいて、操作者は改変の是非(効果)を評価可能になる。
【0066】
図8を参照すると、再生プロキシ部24は、ページ表示速度改善処理の再生過程においては、次に示す処理を表示速度阻害要因の指定候補に応じて繰り返し実施する。
[処理81]再生プロキシ部24は、測定処理部21を構成するWebブラウザ26からのリクエストに含まれているリクエストURL及びHTTPリクエストメソッドに基づき、記録部23におけるJSONファイルからリソースを検索する。
【0067】
[処理82]再生プロキシ部24は、検索によりリソースが見つからない場合、リソースが存在しないレスポンスとしてHTTPレスポンスステータスコード404をWebブラウザ26に返送する。また、再生プロキシ部24は、検索によりリソースが見つかった場合、Webサーバ3の応答時間を再現するために、JSONファイルにおけるレイテンシに記録された時間に対応する待合時間において待機する。
【0068】
[処理83]再生プロキシ部24は、待合時間における待機後、リソースが存在したレスポンスとしてHTTPレスポンスステータスコード200をWebブラウザ26に返送する。
【0069】
[処理84]そして、再生プロキシ部24は、HTTPレスポンスヘッダをWebブラウザ26に返送する。このとき、HTTPレスポンスヘッダ内のコンテンツ長(content length)をリソースデータファイルのファイルサイズに書き換える。
【0070】
[処理85]また、再生プロキシ部24は、リソースデータ本体をWebブラウザ26に返送する。
【0071】
再生プロキシ部24は、上述した処理81~85の実施においては、平均データレートを上回ることがないように、厳密に待合時間を発生させて速度を調整する。具体的には、再生プロキシ部24は、データを細かな塊に分けて送信し、塊の間に待合時間を設ける。
【0072】
ページ表示速度改善処理装置2における上述したページ表示速度改善処理(
図9中の処理S1~S6参照)が終了したとき、改変内容を表示速度改善対象ページに反映するためのレポートがWebサーバ3の運用者などに対して行われることになる。
【0073】
[一実施の形態の特徴及び効果]
上述した一実施の形態のページ表示速度改善処理装置2においては、Webサーバ3との通信によりWebサーバ3から表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し、リソース情報の取得に関係する時間情報に基づいて表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求める測定処理部21と、測定処理部21によるWebサーバ3との通信過程において、表示速度改善対象のWebページを構成するリソースに関するリソース情報と、リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部23に記録する記録プロキシ部22とを備える。
また、ページ表示速度改善処理装置2においては、記録プロキシ部22を介してリソース情報及び通信性能情報を記録する記録部23と、Webサーバ3と未接続状態の再生処理過程において、記録部23の記録内容に基づいて、リソースにおける表示速度阻害要因の指定候補を改変するために、測定処理部21との連携によりWebサーバ3の応答を模倣する再生プロキシ部24とを備える。
これにより、稼働状態のWebサーバ3に対する影響を防止または抑制しつつ、Webサーバ3から閲覧者利用端末4に提供されるWebページ自体の表示速度を改善可能にする。
【0074】
また、上述した一実施の形態のページ表示速度改善処理装置2においては、測定処理部21は、複数のベンチマークプログラム25及びWebブラウザ26を含む構成を採ることが可能である。これにより、表示速度関連指標(測定指標)が追加及び変更された場合などにおいても柔軟に適応可能になる。
【0075】
[変形例]
上述した一実施の形態における処理はコンピュータで実行可能なプログラムとして提供され、CD-ROMやフレキシブルディスクなどの非一時的コンピュータ可読記録媒体、さらには通信回線を経て提供可能である。
【0076】
また、上述した一実施の形態における各処理はその任意の複数または全てを選択し組合せて実施することもできる。
【符号の説明】
【0077】
1 ページ表示速度改善処理システム
2 ページ表示速度改善処理装置
3 Webサーバ
4 閲覧者利用端末
5 通信ネットワーク
21 測定処理部
22 記録プロキシ部
23 記録部
24 再生プロキシ部
25 ベンチマークプログラム
26 Webブラウザ
【要約】
【課題】Webサーバから閲覧者利用端末に提供されるWebページ自体の表示速度を改善可能にする。
【解決手段】Webページについての表示速度を改善するページ表示速度改善処理装置は、Webサーバとの通信によりWebサーバから表示速度改善対象のWebページを構成する少なくとも1つの種類のリソースに関するリソース情報を取得し;リソース情報の取得に関係する時間情報に基づいて表示速度改善対象のWebページ全体の速度を評価するための表示速度関連指標を求め;Webサーバとの通信過程において、表示速度改善対象のWebページを構成するリソースに関するリソース情報と、リソース毎の取得時間及び伝送速度を含む通信性能情報とを取得して記録部に記録し;Webサーバと未接続状態の再生処理過程において、記録部の記録内容に基づいて、リソースにおける表示速度阻害要因の指定候補を改変するために、Webサーバの応答を模倣する。
【選択図】
図3