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
280
たのしくみんなのWifi速度を収集する、しかもJSで!
tan-t
December 08, 2023
Tweet
Share
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Navigating Team Friction
lara
189
15k
Embracing the Ebb and Flow
colly
87
4.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
BBQ
matthewcrist
89
9.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Producing Creativity
orderedlist
PRO
347
40k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Making Projects Easy
brettharned
117
6.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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
ありがとうございました!