Netlifyの無料枠を使い切りそうになったので、『SOZAI』をStatic Exportsにしました
はじめに
この度フリー素材サイト『SOZAI』をリリースしました!!
本記事では『SOZAI』の技術的な部分にフォーカスにして紹介していきたいと思います。
▼ サイトリンク
また、イラストリクエストもお持ちしています。
▼ 前回の記事
技術的な取り組み
『SOZAI』はNext.js、microCMSを使ってSSGで作り、Netlifyにデプロイしました。
サイトをリリースしてから3日、4日たったころ、Netlifyから以下のメールが届きました。
内容としては、「現在の課金サイクルにおいて、『SOZAI』での呼び出し回数が許容量の50%に達しました。」というものでした。多くの方にサイトに訪れていただけて大変嬉しいのですが、月の無料枠の半分をすでに使い果たしてしまいました。
Netlifyで詳細を確認すると、Serverless Functionsへのリクエスト数が9.8万回に達していました。月の無料枠は12.5万回なので半分を余裕で超えてしまっています。
そこで、Node.jsが動く環境を必要としないStatic Exports
に移行しました。通常、SSGのサイトをビルドすると.next/server
というフォルダの中にHTMLファイルが生成されます。一方でStatic Exports
の場合は、outというフォルダの中に作成されます。
Node.jsを不要な環境、すなわちServerless Functionsを必要としなくなり一安心なのですが、一つだけ問題があります。Next.jsの機能に制約を受けてしまうということです。
例えば、以前このページは以下のurlでアクセスできましたが、静的エクスポートにしたため、動的な処理を伴うクエリパラメータを使うことができなくなってしまいました。
https://soz-ai.com/all-sozai?page=2
現在では、パスパラメータでのアクセスが可能となっています。
https://soz-ai.com/all-sozai/2
まとめ
拙い記事ではありますが、最後までお読みいただきありがとうございました。また、『SOZAI』に関して技術的なアップデートを行った際には、Zennにて記事を投稿する予定です。普段のスライド作成やブログ執筆時に『SOZAI』をご利用いただければ、開発チーム一同大変嬉しく思います。
Discussion
素晴らしい