モバイルアプリはDBに直接つながない
スマホアプリからPostgreSQLへ直接接続することは基本的にしません。接続情報や権限をアプリ本体に埋め込むことになり、抜き出されれば誰でもDBへ到達できてしまうためです。認証、権限チェック、入力検証を行うAPIサーバーを間に置き、モバイルアプリはそのAPIとだけHTTPSで通信する構成が基本になります。この手引では、そのAPIサーバーの実装言語としてGoを勧めます。
GoをAPIサーバーに選ぶ理由
安全性
静的型付けでコンパイル時にエラーを検出でき、メモリ管理もガベージコレクションが行います。実行時に初めて気づくような不整合を、実行前のビルド段階で弾きやすい言語です。
開発速度
言語仕様が小さく、標準ライブラリだけでHTTPサーバーが書けます。ビルドも速いため、実装して試して直すというループを短く回せます。
AIとの相性
書き方の流儀が収束しやすい言語なので、AIコーディングエージェントが一貫したコードを生成しやすい傾向があります。型があることで、AIの書き間違いもコンパイラの時点で検出できます。
Cloud Runでは軽さがそのまま無料枠の恩恵になる
GoのAPIをDockerfileでビルドし、Cloud Runにデプロイする流れはこの手引のGoogle Cloud編(Cloud RunとNeonで無料から始める個人開発)と同じです。GoバイナリはNode.js製アプリよりコンテナの起動が速い傾向があるため、最小インスタンス数を0にしてもコールドスタートの影響を受けにくく、アクセスが少ない時間帯の無料枠をより活かしやすくなります。
自前VPSならDBと合わせて月1,500円台から
この手引のデプロイの基礎で紹介しているsystemd運用は、GoのAPIとも相性が良い構成です。ビルド済みのバイナリを1つ配置し、systemdサービスとして起動するだけで済み、Node.jsのようなランタイムのバージョン管理が不要になります。
APIサーバー用とDBサーバー用に、国内VPS(2コア/メモリ2GB/NVMe 200GBクラス)を2台用意しても、1台あたり月770円〜なので、合わせて月1,500円台から始められます。無料枠の上限を気にする必要がなく、モバイルアプリが扱う個人情報やDBの中身を、最初から自分の管理下に置けます。Caddyの基礎で紹介しているリバースプロキシ構成も、アプリ側の設定を変えずにそのまま利用できます。
Cloud Runと自前VPS、どちらを選ぶか
Cloud Run+Neonが向く
検証段階のAPI、機密性の高いデータをまだ扱わないプロトタイプ。無料枠の範囲でまず動かしたい場合。
自前VPSが向く
個人情報や認証情報を扱う本番のモバイルアプリ。月1,500円台の固定費で、DBも含めて自分の管理下に置きたい場合。
どちらを選んでも、AIエージェントに実装を任せきりにせず、ユニットテストと明確なデプロイ経路を用意してから本番へ反映する点は変わりません。