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
そうだ Firebase Remote Config、使おう / let use Fireba...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
pep299
April 19, 2021
Programming
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
そうだ Firebase Remote Config、使おう / let use Firebase Remote Config
Firebase Remote Configを利用して実現したことや、詰まった点を記載。
pep299
April 19, 2021
More Decks by pep299
See All by pep299
なるべく自動化頑張ったLINE BOT on AWS
pep299
0
110
シークレットを漏らしてしまった話 / secret-key-exposed
pep299
0
82
Playwright for PythonではじめるE2Eテスト / Lets start e2e-test with playwright for python
pep299
0
1.2k
プレイングマネージャーの葛藤 / The Conflict of a Playing Manager
pep299
1
3.5k
will・canマトリクスで自己分析してみた / Self-analysis with will-can matrix
pep299
0
610
Other Decks in Programming
See All in Programming
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
220
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
440
「人を評価する AI」の設計と実装
ryoyanara
0
210
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
160
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
190
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
210
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
470
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
240
テーブルをDELETEした
yuzneri
0
140
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
530
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
380
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
120
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Designing for Performance
lara
611
70k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
340
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
My Coaching Mixtape
mlcsv
0
230
Google's AI Overviews - The New Search
badams
0
1.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Transcript
「そうだ Firebase Remote Config、使おう」 ぺぺ@Pep299 1
⽬次 ⾃⼰紹介 Firebase Remote Config って? 実際の利⽤シーン まとめ 2
⾃⼰紹介 ぺぺ@Pep299 https://twitter.com/Pep299 情報系学⼠卒 エンジニア歴6年⽬ SES(⾦融系)-> フリーランス -> Web系受託 ->
? Python・TypeScript・Nuxt 東京都 新型コロナウイルス感染症対策サイトのコントリビュート経験 PyCon JP 2021 スタッフ 3
Firebase Remote Configって? DBの様に、ソースコード外にて値が設定可能 ソースコードを変更せずに定数・フラグ管理 GUI上で値の設定・変更ができるので、ビジネスサイドでも編集可能 A/Bテストやアプリのバージョンアップ通知、期間限定機能などに利⽤ 4
実際の利⽤シーン メンテナンス機構の実装タスクにアサイン フラグを⽴てると、元に戻すまでメンテナンス画⾯にリダイレクト プロジェクトのスキルスタック フロント:Nuxt.js アプリ :Cordova + Nuxt.js バック
:Python pyramid なるべく⼿早く提供したい(APIとかDBとか作らずにフロントだけで実装したい) なんか簡単にフラグ管理できる機構なかったっけかなあ -> 「そうだ Firebase Remote Config、使おう」 5
...ところが問題発⽣➀ Firebase SDKのNuxtラッパーがSSR対応してない... フロントがSSRのため、SPAモードに切り替え or SSR(初回リクエスト時)だけ諦める SPAに切り替えるのは影響が⼤きく確認コストが捻出できない SSRの時だけ諦める、画⾯に直でアクセスされると更新系APIを叩けてしまう -> しょうがないからPythonでAPI作って各フロントで呼び出そっと
6
問題発⽣➁ ...Firebase SDKのPythonラッパーにRemote Configがない REST APIでの提供はある -> ならばREST APIでPythonからRemote Configへアクセスだ...!
7
問題発⽣➂ 実装はできた Remote Configの値を取得し、メンテナンス画⾯へリダイレクトする様に 毎画⾯遷移時にRemote Configを取得するAPIをリクエスト レスポンスまでに2~3秒かかり、とても商⽤といえない... 結局、DBにメンテナンスフラグを持たせて、値を返すAPIを作成 -> Firebase
Remote Config 使いませんでした 8
何としてもFirebase Remote Configを使いたい アプリを本番公開する際、ストアへ申請が必要 申請時はAPIのバージョンが古いため、エラーが発⽣してしまう -> Remote ConfigにリクエストURLを定義しておき、申請中はテスト環 境へ向ける 9
まとめ アプリだけなら問題なく利⽤可能 今回はWebもろとも同じ機構にしようとして失敗した バージョンアップまわりの制御に利⽤できそう 公式の使い道に乗っ取り、アプリのA/Bテストに利⽤してみたい 10