Serverless NEGを使用して、GAEにIPv4の固定IPアドレスでIP制限をする
IP制限をGAEで実現したいユースケースがあったのですが、GAEは自動的にIPv6に対応するそうで、半固定のIPv6に対しては固定IPで制限ができないという事象がありました。
今回はServerless NEGを使用しロードバランサ経由でGAEにアクセスすることで、IP制限の実現ができたのでそちらの紹介をします。
IP制限をGAEで実現したいユースケースがあったのですが、GAEは自動的にIPv6に対応するそうで、半固定のIPv6に対しては固定IPで制限ができないという事象がありました。
今回はServerless NEGを使用しロードバランサ経由でGAEにアクセスすることで、IP制限の実現ができたのでそちらの紹介をします。
そもそも計算量とはなんですか?といった人向けに、というか自分の整理用にざっくりとまとめてみようと書き始めた記事となっています。
計算量についてあまりわからないという人は、動くプログラムを書くだけの状態から、パフォーマンスなどを気にして書けるようになっていくと思うので、是非読んでみてください。
SSGを適用したNext.jsで、サイトマップを生成する方法です。
自前で動的に生成することも可能ですが、パッケージを使用してさくっと生成する方法を紹介します。
Cloud Functionsの関数を定期実行する際に静的IPで実行する必要があったため、その時に実装した手順を紹介したいと思います。
TypeScriptのオブジェクトのプロパティや、関数の引数は「?」をつけることで省略することが可能です。
省略した型は「string | undefined」となりますが、自分でユニオン型を定義した場合は意味が異なるので、注意が必要です。
この記事はZennのスクラップで書いた内容をそのまま転記したものになります。
まとめ記事もいいのですが、調べてる途中の思考も参考になったりするんじゃないかなと思ったので、あえてそのまま転記しています。
package.jsonから削除した不要なパッケージをnode_modulesから削除する方法です。
またその他パッケージに関する色々な確認方法も紹介します。
CI/CDについて継続的とかインテグレーションとかデリバリーとかよくわからず、ビルド・テスト・デプロイを自動化することってぐらいのイメージしかないので、ちゃんと調べて理解していきたいと思います。
同じようにあまり理解していない人の参考になれば幸いです。
文字コードとは、「文字」や「記号」をコンピューターで扱うために、文字に個別に割り当てた「固有の数値」を指します。
コンピューターは0と1の組み合わせでしか理解できないので、「あいうえお」という文字を表現したい場合はコンピューターが理解できるコードで処理する必要があるのです。
Reactでパフォーマンスチューニングを考えるときに、useMemoやuseCallbackというhookを聞きます。しかし、メモ化する関数としか認識できていないので、具体的な実装や違いなどについて理解していけたらなと思って書いていきます。