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

一部のユーザーに開発版スクリプトを配信する - Fastly を使ったカナリアリリース

一部のユーザーに開発版スクリプトを配信する - Fastly を使ったカナリアリリース

Hajime Shiozawa

August 01, 2023
Tweet

Other Decks in Technology

Transcript

  1. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc. 2 しおざわ はじめ Hajime

    Shiozawa Github : @hshiozawa 株式会社プレイドのエンジニア 主にプロダクト基盤の開発をやってます • 解析エンジン Blitz の開発 • 新しい埋め込みタグ Edge の開発
  2. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc. 11   1. 配信スクリプトは同じ URL

    2. クライアントごとに違うスクリプト URL 3. クライアントが設定を変えると、スクリプトを再ビルド 4. スクリプトの修正は、全スクリプトの再ビルドが必要 ポイント
  3. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc. 13 Fastly VCL を使う  1.

    配信スクリプトは同じ URL  2. クライアントごとに違うスクリプト URL を解決する
  4. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc. 15   Cookie を付与して Fastly

    の VCL で カナリー環境に振り分け Cookie を付与 VCL で振り分け
  5. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc. 16   sub vcl_recv {

    if (req.http.Cookie ~ "new_feature" && req.url ~ "aaa") { # カナリア環境 set req.backend_hint = canary_release_backend; } else { # プロダクション環境 set req.backend_hint = production_backend; } }
  6. 2023.8.1  |  3rdparty.js #1  |    |  © PLAID Inc.   21 まとめ&感想 埋め込みスクリプトのカナリアリリース 環境の振り分けに

    Fastly VCL を使う スクリプトは毎回ビルドしてる CDN にロジックを組めるのは便利 Edge Computing をもっと組み込みたい   💡  💡