5章成長の痛み
マイクロサービスアーキテクチャを採用すると、その過程で難題を経験することになる。そのうちのいくつかは既に見てきたが、事前に警告を得やすくするために、それらをさらに掘り下げていきたい。
この章は、あなたが直面するかもしれない様々な問題について十分な情報を提供することを目的としている。ただ、本書で全ての問題は解決できない。また、この章で説明する問題の多くについては、それらを念頭において書いた前著『マイクロサービスアーキテクチャ』[25]でも、より詳細な内容を扱っている。
また、この章では、旅の途中のどこでこれらの問題が発生しやすいかや、いつこれらの問題に対処が必要なのかを見極めるのに役立つよう、いくつかの兆候を紹介していく。
5.1 サービスが増えれば痛みも増える
マイクロサービスアーキテクチャを採用する中でいつ問題が起こるかには、多くの要因が関係する。サービスの相互作用の複雑さ、組織の規模、サービス数、技術の選択、レイテンシー、稼働時間の要件。これらは痛み、苦しみ、興奮、ストレスをもたらす力のほんの一部だ。つまり、いつ問題に遭遇するかや、実際に問題に遭遇するかどうかをはっきり述べることは難しい。
しかし、10個のサービスを持つ会社と数百のサービスを持つ会社では、問題の種類がかなり異なる傾向にあることは実感している。サービス数は、ある問題がいつ顕在化するかを示す指標としては、何よりも優れているように思う。ここで注意しなければならないのは、私がサービス数について話すときには、特に指定がない限り、論理的に異なるサービスについて話しているということだ。そうした論理的な単位でのサービスは、さらに複数のサービスインスタンスとして本番環境にデプロイされているかもしれない。
マイクロサービス化はスイッチの切り替えとは違う。それはむしろダイヤルを回すようなものだ。ダイヤルを回すとサービスが増え、うまくいけばマイクロサービスの良さを引き出す機会が増える。しかし、ダイヤルを回すたびに、さまざまな問題点にもぶつかることになる。すると、これらの問題を解決する方法を見つける必要が出てくる。そのためには、新しい考え方、新しいスキル、異なる技術、あるいは新しい技術が必要になるだろう。 ...
Get モノリスからマイクロサービスへ ―モノリスを進化させる実践移行ガイド now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.