【Javascript/GAS】Timer.jsライブラリー(経過時間,タイムアウト判定)

Javascript / Google Apps Scriptで使える時間計測ライブラリーを用意しました。

ウェブサイトのレスポンス高速化を検討しているとボトルネック処理を調べることがあります。

大まかに所要時間を見たいだけであれば,ChromeのJavascriptコンソールを見ればガントチャートで処理時間を見られますが,ことJavascript/Google Apps Scriptの処理時間がボトルネックの場合は,それぞれの処理内容・所要時間の内訳まで見ていかないといけません。

私のサイトの場合は,モーニングスター,Yahoo Finance, Google Finance等の情報サイトからデータを取得する部分やスプレッドシートへの書き込み・読み出しが遅いというのが分かっています。こうした問題の切り分け用にTimer.jsをお使いください。

とはいえ,実際に調べてみるとサーバーキャッシュなどが影響して,ある時はモーニングスターのKey Ratio読み込みに5秒かかったかと思えば,ある時は0.2秒ぐらいで瞬時に読み込めたりと,なかなか開発者泣かせなところがあります。こういうバラツキのあるレスポンスを改善するには,どうもオライリーの『ハイパフォーマンスWebサイト――高速サイトを実現する14のルール』などを調べる必要がありそうです。

使い方

事前にタイマーをstart()した後で
elapse(unit):経過時間を取得する
isTimeout(threshold, unit):タイムアウトしたかどうかを判定する
という機能が使えます。

Timer.js

本ライブラリーではグローバル変数startTimeの値を参照して経過時間を求めたり,タイムアウトしたかどうかを判定します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です