ゲートウェイ手法の比較:Zuul vs. Spring Cloud Gateway
マイクロサービスアーキテクチャの構築を始めた当初、API Gatewayの定番といえば Netflix Zuul 1 でした。シンプルではありましたが、ブロッキングI/Oモデルに基づいていたため、トラフィックが増加すると「スレッド・パー・リクエスト(リクエストごとにスレッドを割り当てる)」モデルがボトルネックとなりました。そこで登場したのが Spring Cloud Gateway (SCG) です。Project Reactor と Spring WebFlux のノンブロッキングでイベント駆動な機能を活用することで、この状況を一変させました。
実務経験から言えるのは、これは習得すべき必須スキルの1つであるということです。なぜなら、ゲートウェイは単なるプロキシではなく、システムの入り口となる「頭脳」だからです。Zuul 2 も最終的にはノンブロッキングモデルに移行しましたが、Spring Cloud Gateway は Spring エコシステムと非常にシームレスに統合されているため、現代の Java ベースのクラウド環境における標準となっています。
本番環境で6ヶ月運用して分かったメリットとデメリット

