Upgrade to Pro — share decks privately, control downloads, hide ads and more …

加速するEdge Computing

加速するEdge Computing

JSConf JP 2021でLTさせていただいた時の資料です.

Avatar for Shinobu Hayashi

Shinobu Hayashi

November 27, 2021
Tweet

More Decks by Shinobu Hayashi

Other Decks in Technology

Transcript

  1. whoami Shinobu Hayashi (@Shinyaigeek) - Web Developer - UTokyo B4

    - work at Newspaper Company - 👀 : Browser, web standard, performance - GitHub & Twitter: @Shinyaigeek 2
  2. What is Edge Computing? (In Web dev) Edge Computing -

    IoT領域で語られることが多く, デバイス上で計算することを指す - 車で画像認識を行い衝突を避ける - Web開発の文脈では, クライアントのデバイスではないがデバイスから近い ネットワークのエッジ上で計算をすることを指す 7 Device Origin Server Edge Server
  3. What is Edge Computing? (In Web dev) 8 Device Origin

    Server Device HTTP Req HTTP Res HTTP Req HTTP Res
  4. What is Edge Computing? (In Web dev) 9 Device Origin

    Server Device Edge Server Edge Server
  5. Edge Computing blog.com assets.com - Origin ServerへのRequestの 出しわけ - 認証処理

    - HTTP Req/Res の加工 - A/B Test - Feature Flags - etc... 10
  6. Edge で何ができるのか - HTTP Req/Resの加工 - Origin ServerにHTTP Requestを届ける前に, 認証などを済ませてしま

    う 総じて Client ⇆ Server 間のやりとりの間に立って, ちょっとしたこと(それこそ middleware のような処理) ができる 13
  7. Edge Computingで何をすべきでないのか - アプリケーション全体の状態を強く扱う処理 - DBにアクセスしたい時など - 重い処理 - 実行時間,

    実行のために必要なメモリ量が多い処理 - そもそもEdgeで重い処理をすべきでない - Platformによっては, デプロイするコードの容量や実行時間 , メモリが厳しい制限が課さ れている 14
  8. Edge Native の可能性 - Cloudflare Workers - R2 - MySQL,

    PostgreSQLへの接続 - Deno Deploy - PostgreSQL, DynamoDBなどへの接続 - Web Storage API - SSR - Machine Learning - GraphQL Server 一部プラットフォーム, あるいは一部の使い道では, Client に対しての HTTP Response の生成を完全にEdgeで完結させてしまい, serverlessのような使い方 も可能 16
  9. Edgeでやることの旨味 - No(or few) Cold Start - Low Latency -

    Scallability - Client Deviceのマシンスペックに依存しない A new generation of serverless 17
  10. Universal JavaScript Module? Universal JavaScript: - Browser - Node.js -

    service worker(?) - Edge <- New!! - だけどEdgeのRuntimeのAPIは結構バラバラ... - compatを誰がやるのか(platform? module? plugin?) 19