読者です 読者をやめる 読者になる 読者になる

S.F. Page

Programming,Music,etc...

マイクロサービスについて思うこと

Web

マイクロサービスとかいうワードを見聞きして「Webサービスのジャンルでもモノリシックかマイクロとかいうくらい成熟してきたか。」と思った。

一昔前のOSのカーネルもマイクロカーネルかモノリシックカーネルかというのがあった。世の中のOSはほぼモノリシックなものであり、マイクロカーネルは少数派である。でも信頼性を非常に要する分野ではマイクロカーネルは使用されているらしい。さらにはナノカーネルとかいうものもあるそうだ。

ホストコンピュータによる集中処理か、ワークステーションによる分散処理かとかいうのもあったな。

こういう分散系の構成は適する場所というのがある。度を越したサービスの分割は結局モノリシックなサービスと同じ問題を抱えることになるので、慎重に検討する必要があると思う。

モノリシックでも保守性が高ければわざわざサービスを分割してマイクロサービス化する必要はない。機能が固まり、保守性に問題が出てきてからでも遅くはない。 ただ、ソースレベルではモジュール構造になっていること、互いに疎に保っておくことが望ましい。そうすればサービスを分割するのも簡単である。

このマイクロかモノリシックかというのは新しいコンピュータ・アーキテクチャの成長過程において必ずホットな話題として出現し、そして沈静化するのがちょっと面白いなと思う。