🔥

Vercel と supabase の組み合わせで、なんか遅いのは「気のせいじゃない」しくじり

2024/08/19に公開

個人開発の小規模サービスなのに「本番環境が遅い」とは、感じていた。
リリースして間もなく、ポートフォリオ的な意味合いも強いため、「利用ユーザーが自分だけ」にもかかわらず。
「無料の範囲での利用だと、こんなものなのか?」と、気になりつつも、ついつい機能の実装を優先してしまっていた。
だが、ここ最近は、ある程度それも形になったので、これまでの復習やリファクタリングに注力しようと、改めて全体を見直していたところ、たまたまとあるスクラップを発見。

https://zenn.dev/platina/scraps/6114ece4a2c197

Supabase

たしか、supabaseのリージョンは初回の設定で選択できるようになっていて、Tokyoにした気がする。
Progect Settings > Infrastructure を確認すると、

Primary Database
Northeast Asia (Tokyo)

vercel

確認してみると、

Project > Project Settings > Functions > Function Region
Washington, D.C., USA (iad1)

でした。

https://vercel.com/docs/functions/configuring-functions/region#setting-your-default-region

たしかに、ドキュメントにも

The default Function region is Washington, D.C., USA (iad1) for all new projects.

とある。

Project > Deployment > Deployment Details > Deployment Summary > Functions

現状、デプロイされているファンクションもすべてiad1であることを確認。

設定変更

Asia Pacific
Tokyo, Japan (Northeast) - hnd1

iad1 から hnd1 へ変えて、リデプロイする。

Project > Deployment > Deployment Details > Deployment Summary > Functions

hnd1に変更されたことを確認。

動作確認

体感で明らかに早くなりました。

あとがき

AppとDBが離れてたら当然といえば当然なのだけど、ついついお手軽にデプロイできてしまうので、見落としていました。

参考

https://zenn.dev/sh1n4ps/articles/34df41ddc9957e#

Discussion