Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
たのしくみんなのWifi速度を収集する、しかもJSで!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tan-t
December 08, 2023
320
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
たのしくみんなのWifi速度を収集する、しかもJSで!
tan-t
December 08, 2023
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
550
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
880
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Curse of the Amulet
leimatthew05
3
15k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
How to Ace a Technical Interview
jacobian
281
24k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Scaling GitHub
holman
464
140k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
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
ありがとうございました!