Open5

続・GCPのCDN(LB)のリプレース先を探す旅(Bunny.net編)

Yusuke KawabataYusuke Kawabata

無料枠はないが安い

だいたい600GBくらいのトラフィックをCDNでさばきたい場合、Firebase storageだと無料枠がないので、$90、約1万3000円ほどのトラフィック料金がかかります。

これがbunny.netの場合アジア向けトラフィックは$0.03/GBとFirebaseの1/5なので、おおよそ18ドル、3000円弱におさまります。毎月1万円浮きますね。

無料枠はないので、トラフィックが少ない場合はお勧めできませんが、安くてシンプルなので画像などアセットの配信に特化して使うのがよさそうです。とくにWAFやBotのフィルタリングなどは簡易的なもの(IPやUserAgentの一致のみ)しかありませんでした。

Yusuke KawabataYusuke Kawabata

画像最適化と変換が安い

また、月額$9.8で画像の変換と最適化を行うことができます。imgixのStandardが$75で500GBトラフィック込みなので、配信料を込めても約半額以下で実現できることになります。自動で様々なフォーマットに配信したり、リサイズしてサムネ表示をすることもできるので、非常に良いソリューションだと思います。

https://bunny.net/optimizer/transform-api/

Yusuke KawabataYusuke Kawabata

パフォーマンスもよい

CDNのパフォーマンスを計測するCDNperfでは、1位を獲得しています(2024/03/30時点)
安定性のほうは下位ですが98.28%なのであまり問題にならないでしょう。

https://www.cdnperf.com/

サイト全体に導入というよりは、アセットの配信に限定して使うのがよさそうだと思いました。
Zone Apex(wwwなどサブドメインなしドメイン)は非対応のようです。

Yusuke KawabataYusuke Kawabata

クラウドストレージのフロントエンドにもよさそう

Bunnyに問い合わせたところ、リクエストのタイムアウトは60秒に設定されているが、その範囲内であればファイルアップロードを行ってもかまわないとのこと。Cloudflareは100MBに制限されているので、ちょっとしたファイルアップロード機能を作る場合にはよさそうだ。もちろん動画などGB単位のファイルをアップするにはチャンクにするなどは必要だと思うが、動画は動画でBunny streamが用意されている。