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 と Vue.js
Search
Y-KANOH
August 21, 2019
Technology
2
310
アプリ作成と運用から学ぶ Firebase と Vue.js
勉強会アプリを Firebase と Vue.js を使って作成しました。
作成し、運用するうえで工夫したことや直面した課題を共有します。
Y-KANOH
August 21, 2019
Tweet
Share
More Decks by Y-KANOH
See All by Y-KANOH
PHPカンファレンス関西2024 オープニング/php kansai 2024 opening
ykanoh
2
150
PHP略語クイズ/PHP Abbreviation Quiz
ykanoh
1
2.2k
PHPカンファレンス関西2024スタッフ希望者向け説明会
ykanoh
0
260
PHPマジックメソッドクイズ!/PHP Magic Method Quiz
ykanoh
0
1.1k
PHPerが再利用可能な情報提供でオフショア先とコード品質向上に取り組む / PHPer try improve the code quality
ykanoh
0
970
どんとこい、PhpStorm 〜Why don't you do IDE's best!〜 / Don't KOI PhpStorm!! Why don't you do IDE's best!!
ykanoh
0
6.5k
PHPでのリーダブルコード/Readable code in PHP
ykanoh
1
220
技術コミュニティ運営戦線〜継続して勉強会を運営するために〜/how to operate community continuously
ykanoh
0
1.5k
めざせOSSコントリビュート/LetsContributeOSS
ykanoh
2
130
Other Decks in Technology
See All in Technology
プロダクトエンジニアを支えるための開発生産性向上施策
tsukakei
0
140
Google CloudのLLM活用の選択肢を広げるVertex AIのパートナーモデル
nayuts
0
130
Fediverse Discovery Providers overview
andypiper
0
160
Javaにおける関数型プログラミンへの取り組み
skrb
7
320
グイグイ系QAマネージャーの仕事
sadonosake
0
290
サーバレスでモバイルアプリ開発! NTTコム「ビジネスdアプリ」のアーキテクチャ / The architecture of business d app
nttcom
12
240
Tricentisにおけるテスト自動化へのAI活用ご紹介/20240910Shunsuke Katakura
shift_evolve
0
180
ロボットアームを遠隔制御の話 & LLMをつかったIoTの話もしたい
soracom
PRO
1
380
Next.js のページ遷移を全力で止める
ypresto
3
1.6k
ネットワークだけ隔離されたコンテナ作成デモ / Kichijoji.pm36
tenforward
1
210
開発生産性を始める前に開発チームができること / optim-improve-development-productivity.pdf
optim
0
100
どこよりも遅めなWinActor Ver.7.5.0 新機能紹介
tamai_63
0
200
Featured
See All Featured
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
25
3.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
BBQ
matthewcrist
83
9.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
89
16k
We Have a Design System, Now What?
morganepeng
48
7.1k
What the flash - Photography Introduction
edds
67
11k
From Idea to $5000 a Month in 5 Months
shpigford
379
46k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
What's new in Ruby 2.0
geeforr
340
31k
Practical Orchestrator
shlominoach
185
10k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Transcript
アプリ作成と運用から学ぶ Firebase と Vue.js
What is it ? ▰ アプリを作成 & 運用 ▰ Firebase
と Vue.js を使用 ▰ 実際どうだったか ▰ 今、困ってること 2
自己紹介 加納 悠史 カノウユウジ @YKanoh65 3 株式会社 ラクス 業務ではPHPer 趣味はダイビング
None
社内勉強会 やってますか?
弊社の勉強会 • ビアバッシュ ◦ 月一開催 ◦ 新人からベテランまで参加 6
弊社の勉強会 • ビアバッシュ ◦ 月一開催 ◦ 新人からベテランまで参加 7 発表の評価が聞きたい 改善点が知りたい
もっと楽しみたい
ビアバッシュ専用 Webアプリ
ビアバッシュ専用 Webアプリ SPA の Web アプリ 9 ❏ Vuetify ❏
Vuex ❏ Vuexfire Cloud Firestore Authentication Cloud Storage
Spark プランを使用 • 無料プラン • Firestore の制限 ◦ 読取り回数:5万回/日 10
11 できること • 発表予定の確認 • 発表へのコメント • スタンプでのリアクション
実装での工夫 スタンプ連打 対策 • FireStoreの書込み速度 → 1ドキュメントに 1回/秒 • 複数人による同時書込みに弱い
12
分散カウンタ 導入 • 複数ドキュメントを用意 • カウント数はランダムに保存 • 総カウント数は合計値 ⇒ 書込み速度向上!
13 4回 6回 5回 15回
が
スタンプ連打 対策 弱点 分散カウンタ 導入 ⇒ 1回の更新で3回の読取りが発生 15 4回 6回
5回 3つ 読取り
~再掲~ Spark プランを使用 • 無料プラン • Firestore の制限 ◦ 読取り回数:5万回/日
16
17 Firestore 読み取り数(初運用時)
18 開始前 64回 開始30分 3.7万回 開始150分 5.1万回! Firestore 読み取り数(初運用時)
19 開始30分 3.7万回 開始150分 5.1万回! Firestore 読み取り数(初運用時)
FireStore 読取り制限 Firebase料金プラン • 無料プラン ◦ 読取り回数:5万回/日 ⇒ すぐ突破してしまう 20
読み取り数削減案 • 分散カウンタ廃止 • キャッシュを活用 • 取得ドキュメントを絞る ノウハウがあれば教えてほしいです ... つか有料プランを使え
21
store.js の扱い Vuex と VuexFire • store.js でデータを管理 • 変数とコレクションを紐づけるイメージ
• Firebase とのやり取りは store.jsに集約 22 VuexFire Vuex
問題点 store.js の肥大化 コレクション追加 = 関数追加! • コンフリクト祭り • 可読性が低下...
23
何が問題なのか? ❏ 分割を考えるべきなのか? ❏ Vuexで大量のデータ管理が問題? ❏ クライアントで大量のデータを保持させる? 24
25 まとめ • 同時書込み数向上 → 分散カウンタ ◦ ただし読取り数などに注意が必要 ◦ 多少なら単一ドキュメントでも可?
• Vue.js と FireStore ◦ Vuex と Firebase の連動は検討が必要