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
320
アプリ作成と運用から学ぶ Firebase と Vue.js
勉強会アプリを Firebase と Vue.js を使って作成しました。
作成し、運用するうえで工夫したことや直面した課題を共有します。
Y-KANOH
August 21, 2019
Tweet
Share
More Decks by Y-KANOH
See All by Y-KANOH
エンジニアは伝え方が9割/90% of what engineers need is communication skills
ykanoh
4
680
PHPカンファレンス関西2024 クロージング/php kansai 2024 closing
ykanoh
0
37
PHPカンファレンス関西2024 オープニング/php kansai 2024 opening
ykanoh
2
220
PHP略語クイズ/PHP Abbreviation Quiz
ykanoh
1
2.4k
PHPカンファレンス関西2024スタッフ希望者向け説明会
ykanoh
0
320
PHPマジックメソッドクイズ!/PHP Magic Method Quiz
ykanoh
0
1.3k
PHPerが再利用可能な情報提供でオフショア先とコード品質向上に取り組む / PHPer try improve the code quality
ykanoh
0
1.1k
どんとこい、PhpStorm 〜Why don't you do IDE's best!〜 / Don't KOI PhpStorm!! Why don't you do IDE's best!!
ykanoh
0
7.1k
PHPでのリーダブルコード/Readable code in PHP
ykanoh
1
250
Other Decks in Technology
See All in Technology
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
590
CDKのコードを書く環境を作りました with Amazon Q
nobuhitomorioka
1
100
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
300
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
490
ローカルLLMを活用したコード生成と、ローコード開発ツールへの応用
kazuhitoyokoi
0
120
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
340
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
250
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
410
わたしのOSS活動
kazupon
2
260
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
290
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
2.3k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
Writing Fast Ruby
sferik
628
61k
Facilitating Awesome Meetings
lara
52
6.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
For a Future-Friendly Web
brad_frost
176
9.5k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Gamification - CAS2011
davidbonilla
80
5.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Become a Pro
speakerdeck
PRO
26
5.1k
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 の連動は検討が必要