マイクロサービスを支えるAWSのサービス
こんにちは。CTOの森松です。
開発中のサービスで使っている、マイクロサービスをご紹介します。
シンプルに分散システムを実現するためにAWSが用意してくれているサービスをそのまま使ってます。
万人にわかる説明しか書かないので、細かい事は省きます。
ECS Fargate
Dockerコンテナをフルマネージドかつサーバレスで稼働させるツールです。
コンテナとは、一つのサーバーが凝縮されたものだと思ってください。
マイクロサービスでは、色んなサービスを立ち上げるので、複数コンテナが存在しますが
いいかんじで、コンテナの運用が自動で動いてくれます。
複数のサーバー管理から解放されて気持ちいい!
App Mesh
マイクロサービスは複数のサービスを繋げて運用しますが、そのサービス間の通信をモニタリングしたり
制御したりするものです。新サービスを10%分アクセスだけ導入してみる、なんてことが出来ます。
マイクロサービスのデメリットでもある、サービス間の複雑な繋ぎ込みをいいかんじで制御できます。
通信をコントロールできて気持ちいい!
Cloud Map
ECS Fargateにて複数のサービスを立ち上げたはいいものの、デプロイ時とかスケールするたびに宛先(IP)が変わります。
それらを自動的に、名前にマッピングしてくれて可用性を向上させます。いいかんじで宛先を更新してくれます。
宛先不在がなくて気持ちいい!
X-Ray
サービス複数に入り乱れた通信、マイクロサービスの複雑さはデメリットですが
それを補うようにいいかんじで可視化してくれます。*参考
全部見えて気持ちいい!