Bubbleアプリのパフォーマンスを劇的に改善する方法を学びましょう!
初心者でも実践できる具体的なテクニックをご紹介します
初心者でも実践できる具体的なテクニックをご紹介します
Bubbleパフォーマンスの基本原則
パフォーマンス改善の鉄則:データ取得量を減らし、シンプルな構造を心がけることが最も効果的です
データ取得に関する重要なポイント
- 少ないデータほど高速 – 100件のデータと100万件のデータでは、読み込み速度に大きな差が生まれます
- 軽いデータタイプを選択 – 数値や短いテキストは、大きな画像ファイルよりも高速に処理されます
- 複数の小さなページ > 少数の複雑なページ – ページを適切に分割することで全体的な速度が向上します
必要最小限のデータのみを取得する検索クエリを作成
すべてのデータを一度に取得してから不要分を除外
データベース検索の最適化
検索とフィルタリングのベストプラクティス
- データベースレベルでの処理を優先 – :sortや:filterを活用しましょう
- 高度なフィルターは慎重に使用 – 検索パレットに表示される基本フィルターの方が高速です
- 連鎖クエリは直列処理 – 複数の検索が順番に実行されるため、最初の検索結果を小さく保つことが重要
search:countはsearch:group by:countよりも効率的です。シンプルな表現ほど高速になる傾向があります
ページ読み込み時の動作を理解する
Bubbleページの読み込みプロセス
- すべての要素(表示・非表示含む)のコードを送信
- 表示されている要素のみを描画
- 表示要素に必要な動的データを取得
表示要素が非表示要素のデータソースを参照していると、非表示要素も読み込まれてしまいます
リピートグループの注意点
- レイアウトスタイルによって読み込みデータ量が変わります
- ネストしたリピートグループは要素数が掛け算的に増加します
- セル内の要素数が多いほど描画時間が長くなります
容量制限とタイムアウト対策
ソフトリミットとハードリミットの違い
ソフトリミット
パフォーマンスに影響するが超過可能な柔軟な境界線
パフォーマンスに影響するが超過可能な柔軟な境界線
ハードリミット
絶対に超えることができない固定の境界線
絶対に超えることができない固定の境界線
タイムアウトを防ぐ方法
- 複雑な処理を小さく分割 – 一度に大量のデータを処理せず、段階的に実行
- スケジュールワークフローを活用 – 重い計算を裏で実行し、結果を保存
- 「リストに変更を加える」アクションを慎重に使用 – 大きなリストには「リスト上でAPIワークフローをスケジュール」を推奨
アプリのアクティビティが少ない時間帯に重い処理を移すことで、タイムアウトリスクを軽減できます
容量(キャパシティ)の理解
容量とは、アプリが一定時間内に実行できる「作業量」のことです
容量に影響する要因
- ユーザーのWebサイト訪問
- データベースへのクエリ実行
- サーバー上で動作するワークフロー
- APIの呼び出し
プランによる容量の違い
- 無料・個人プラン – 他のアプリと共有リソースを使用(Basic容量)
- Professional・Production – 専用の予約容量を使用
ログページの容量チャートで、アプリがどれだけ容量を使用しているか確認できます
実践的なパフォーマンス改善テクニック
効率的なデータ操作
1つのアクションで複数フィールドを変更
より効率的で高速
より効率的で高速
複数のアクションで1つずつフィールドを変更
処理時間が長くなる
処理時間が長くなる
再利用によるパフォーマンス向上
- 同じ検索の自動統合 – ページ内で同じ検索が複数回使われる場合、Bubbleが自動的に1回の実行にまとめます
- スタイルの活用 – 一貫したスタイルを使うことでパフォーマンスが向上します
- インデックスの自動構築 – 重い検索を何度か実行すると、Bubbleが自動的にインデックスを作成して高速化します
テキストフィールドにbase64エンコードされた画像など、大量のデータを保存するとパフォーマンスが低下する可能性があります
まとめ:パフォーマンス改善のチェックリスト
- ✅ データ取得量を最小限に抑える
- ✅ 基本的なフィルターとソートを使用する
- ✅ ページ構造をシンプルに保つ
- ✅ 不要なプラグインをアンインストールする
- ✅ 重い処理をスケジュールワークフローに移す
- ✅ 容量使用状況を定期的に確認する
- ✅ 実際にテストして最適な方法を見つける
パフォーマンス改善は継続的なプロセスです。
小さな改善の積み重ねが、大きな成果につながります!
小さな改善の積み重ねが、大きな成果につながります!