タグ

ブックマーク / zenn.dev/team_zenn (2)

  • Zennのバックエンドを Google App Engine から Cloud Run へ移行しました(無停止!YES!)

    Zennは、Next.js + Ruby on RailsAPIモード)を Google Cloud の App Engine へデプロイして稼働していました。最近、Rails の実行環境を App Engine Flexible から Cloud Run へ移行したので、その記録を残します。 ロードバランサーのバックエンドサービスを付け替えることで実現 最初に、どうやって移行したかです。Zennのバックエンドはもともとロードバランサーで構成されていました。以下の図のように、ロードバランサーの Backend Service より背後を切り替えることにより実現しています。Cloud Run とそこにアクセスするための Serverless NEG はあらかじめ稼働させておくことで、ダウンタイムなしで切り替えられました。 参考:負荷分散 | Google Cloud https://clo

    Zennのバックエンドを Google App Engine から Cloud Run へ移行しました(無停止!YES!)
    Keisuke69
    Keisuke69 2022/03/25
  • stale-while-revalidate対応のCDNでISRのような挙動を実現する

    先日、Next.jsのISR(Incremental Static Regeneration)について書きました。 ISRは非常に強力な機能なのですが、セルフホスティングでNext.jsを動かす場合には色々と使うのが難しかったりします。この記事ではその理由とCDNを使ってISRと似たような挙動を実現する方法を紹介します。 Next.jsのISRをVercel以外で動かすのは難しい Vercelは自社でメンテナンスしているNext.jsを簡単にデプロイできることを大きな強みとしています。Vercelにデプロイする場合、ソースコード上で決められた書き方さえすれば、Vercel側の追加設定なしでISRを利用できます。 しかし、Vercel以外のプラットフォームにデプロイするとなると途端に話がややこしくなります。 Next.jsのISRはキャッシュしたHTMLをファイルシステムに書き込む仕様になっ

    stale-while-revalidate対応のCDNでISRのような挙動を実現する
    Keisuke69
    Keisuke69 2021/03/29
    CDNで対応してりゃいいじゃんと思ってたものの、諸事情により試せない&公開できなかったやつ!Vercelに依存せずに簡単にやれる
  • 1