Service Workerを活用
まるでネイティブアプリなWebサイト「プログレッシブWebアプリ」実装のヒント(2/2 ページ)
Service Workerに求められる新しいテスト手法
プログレッシブWebアプリケーションを構築する際は、新しいテスト手法が必要になる。Googleのページテストなどの従来のテストツールは、バックエンドからのリソースのダウンロード時間に重点を置いていた。ただしプログレッシブWebアプリケーションは多くの場合、キャッシュからリソースを取り出す。Service Workerの相互作用によってパフォーマンスが変わるアプリケーションのパフォーマンスを測定できるのは、Googleの「Lighthouse」のようなツールになるだろうとヒューム氏は話す。
パフォーマンスは科学的に正確なものではない。Settledが最初に同社のWebページを実装したときは、読み込み時間が4.65秒だった。その後さまざまな最適化をした結果2.25秒まで短縮した。Service Workerがアクティブになると、Webページの読み込み時間は500ミリ秒まで短くなった。読み込み時間の大部分を占めるのはWebページサイズだ。最初に読み込んだWebページのサイズは約850KB。これが2度目には50KBになった。WebブラウザでService Workerがアクティブになると、クライアントがWebページを起動するために必要なのは、約1KB送信することだけになる。
Settledは、Googleの「AngularJS」やFacebookの「ReactJS」などのJavaScriptフレームワーク(テンプレートやライブラリなどのツール群)を使用するのではなく、素のJavaScriptでアプリケーションを構築するという大胆な手法も採用している。これにより簡潔さが確保でき、クライアントにサービスを提供するWebページのサイズを削減できたとヒューム氏は語る。
Settledは、プリフェッチ(事前読み込み)技法も試みている。この技法はクライアントが特定の順序でWebページを移動する可能性が高い場合に有効だ。開発者は、あらゆる場合にプリフェッチをしようとする傾向がある。だがヒューム氏によると、プリフェッチを最大限に生かすには、ユーザーがWebサイトを移動する方法を示すデータに目を向けることが重要だという。そうしないと、クライアントが一度も使用しないデータを送信するためにネットワークリソースが簡単に無駄使いされることになる。
サードパーティーの失敗に対する計画
サードパーティー製クラウドアプリケーションに起因する問題に対処する際に、パフォーマンスの大きな課題が1つある。最新のWebアプリケーションの多くは、FacebookやGoogleのアクセス解析、広告追跡サービスを操作するサードパーティー製スクリプトを利用する。「これらは当社が管理できないところにある。サードパーティー製スクリプトで問題が発生したら、アプリケーションはそのスクリプトのなすがままになる」とヒューム氏は話す。
Webアプリケーションの多くは、こうしたサードパーティー製サービスが応答を返すまで、読み込むことができない。Service Workerを使用してJavaScriptのタイムアウト関数を実装するのが、はるかに優れた方法だとヒューム氏は言う。サードパーティー製サービスがタイムアウトまでに応答しない場合、Service Workerが代替の応答を提供して、Webページのレンダリングを続行する。「まだ試用段階だが、今のところは非常にうまく進んでいる」(ヒューム氏)
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
3
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
4
221人調査で分かった「情シス最大のストレス」は?
-
5
「データストレージの活用方法」に関するアンケート
-
6
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
7
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
8
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
9
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
10
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー