
364
10
章 スケーラビリティとアーキテクチャ
マイクロサービスはどのようなフレームワークを使っても(
Node
のコアモジュールだ
けでも)構築できますが、マイクロサービス作成の目的に特化したシステムも少しあ
り ま す。 も っ と も 注 目 に 値 す る も の と し て、
Seneca
(
https://npmjs.org/package/
seneca
)、
AWS Lambda
(
https://aws.amazon.com/lambda
)、
IBM OpenWhisk
(
https://developer.ibm.com/openwhisk
)、
Microsoft Azure Functions
(
https://
azure.microsoft.com/en-us/services/functions
)などがあります。マイクロサービスの
デプロイを管理する有用なツールとして
Apache Mesos
(
http://mesos.apache.org
)が
あります。
10.3.3
マイクロサービスアーキテクチャにおける統合パターン
マイクロサービスでもっとも難しい問題が、すべてのノードを協働できるように接続することです。
たとえば、電子商取引アプリケーションのカート用サービスは追加する製品がなければ意味がありませ
んし、チェックアウト用サービスは、購入する製品のリスト(カートの中身)がなければ役に立ちません。
既に述べたように、いろいろなサービス間の相互作用を必要とする要素が他にもあります。たと