Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
たのしくみんなのWifi速度を収集する、しかもJSで!
Search
tan-t
December 08, 2023
0
290
たのしくみんなのWifi速度を収集する、しかもJSで!
tan-t
December 08, 2023
Tweet
Share
Featured
See All Featured
Faster Mobile Websites
deanohume
310
31k
Designing for humans not robots
tammielis
254
26k
Test your architecture with Archunit
thirion
1
2.1k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
0
420
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
120
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
410
Into the Great Unknown - MozCon
thekraken
40
2.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Building the Perfect Custom Keyboard
takai
2
670
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
880
The SEO Collaboration Effect
kristinabergwall1
0
330
Transcript
たのしくみんなのWifi速度を 収集する、しかもJSで! 株式会社DELTA 丹哲郎
主にインフラ領域の技術支援サービスやってます!
私は代表です! 2日ぶり人生2回目のLTです!よろしくお願いします!
(ところで)会場あります!@シブヤ
最近オフィスのWifiが遅い!(らしい)
こういうのは各自が好き勝手言うからファクトが欲しい 電子レンジ? 接続台数? 上りが遅い? 時間帯?
アーキテクチャ(妄想) 端末 データレイク 端末 端末 端末 グラフ化など インサイト
極端に遅いことの検知はクライアントでやりたい 端末 データレイク 端末 端末 端末 グラフ化など インサイト 低速になった時点で通信が不安定にな るので、「遅くなった」ことは
クライアントが検知してほしい
でも各自のOSはバラバラ
Chrome拡張にしてバックグラウンド実行させてみよう でもNW速度をキャプチャできるAPIなんてあるの?
navigator.connection
でもなんか数値が小さい・・・?
丸めた値らしい(fingerprinting対策とのこと) https://stackoverflow.com/questions/5529718/how-to-detect-internet-speed-in-javascript/47511842#47511842
「遅いこと」がわかればOK
遅いときには通信しづらいので、復帰時にまとめて送付 実装はどうすればいいのかな? • 定期的にチェック • 遅くなったら低速モードに • 高速に戻った時点でレポートを投げる • チェック間隔は高速時と低速時で変えたいかも、、、?
setIntervalだと等間隔すぎる件 高速時が9割で、低速時にはこまめにチェックしたいという場合にsetIntervalだとどちら に合わせるか難しい
「さっきまで低速だった」という状態も管理したい 関数の外に状態を置いて更新したくないですよね、、、
setTimeoutと再起でシンプルに書けるかも?
setTimeoutと再起でシンプルに書けるかも? 状態 遅い間はどんどん積み重なる 速くなったらリセット catch-allなループ
setTimeoutと再起でシンプルに書けるかも? Exponential backoff 基本は30秒ごとにサンプリング
setTimeoutと再起でシンプルに書けるかも? いま遅い 遅かった それ以外
(今後の課題)テスタビリティは低そう これは外から渡したほうが良さそう ここはSpyする? これも外から渡したほうが良さそう?
[CM]AWSコストの無料診断やってます!
[CM]AWSコストの無料診断やってます! https://costcut.cloud
ありがとうございました!