ソフトウェアエンジニア@横浜の徒然日記

SDGs,人と組織,ソフトウェア開発について知ったことを徒然なるままに発信

MENU

マイクロサービスアーキテクチャとはなんぞや?

Step1 最初のシステムを突貫工事で開発する。
Step2 サービスが拡大。つぎはぎでシステムを拡張していく。
Step3 膨大な保守コストがかかる。
Step4 システムリプレイスで一気解決を図る。
Step5 頓挫。Step2に戻る。

システム開発の現場でよく見られる
この光景に対する解決策として,
マイクロサービスアーキテクチャが
取り上げられることが最近増えてきた。

しかしマイクロサービスアーキテクチャって,
一昔前で言うところのSOAと何が違うのか?
という疑問があったのでこの本を読んで
理解しようと試みた。

マイクロサービスアーキテクチャ

マイクロサービスアーキテクチャ

 

-------------------------------------------------------
■目次
1.マイクロサービス
2.進化的アーキテクト
3.サービスのモデル化方法
4.統合
5.モノリスの分割
6.デプロイ 
7.テスト
8.監視
9.セキュリティ
10.コンウェイの法則とシステム設計
11.大規模なマイクロサービス
12.まとめ
-------------------------------------------------------
参考になったポイントをまとめると。
・境界づけられたコンテキストを用いて
 サービスを分割。疎結合・高凝集性を実現。
・データベース統合は必ず避ける。
・RESTをリクエスト/レスポンス統合の出発点とする。
・Pub-Subにより非同期でサービス間を連携させる。
・一枚岩のシステムは境界づけられたコンテキストを
 もとに一つずつ分解していく。 
・ホスト/コンテナごとに1つのサービスに移行。
・マイクロサービスごとに1つのCIビルド。 
・全てを自動化
となる。


アーキテクチャという観点では,
目新しい概念はあまりなかった。
しかし仮想化技術やCI・監視ツールの発達により
概念を実行するための環境が整ってきた。
故にマイクロサービスアーキテクチャが取り上げられる
ケースが増えてきたといったところか。

いづれにせよ事業環境の変化が加速してきている
現代において必要になる概念であることは間違いない。