モノリス化するサービスをマイクロサービスに分割するには--考慮すべき5つのポイント - (page 2)

Joe McKendrick (Special to ZDNET.com) 翻訳校正: 石橋啓一郎

2015-04-02 06:30

 サービス分割に対して漸進的なアプローチを取る。「モノリシックサービスの分割は少しずつ進めることを強くお勧めする。漸進的なアプローチは、その過程でマイクロサービスについて学ぶのにも役立ち、何か問題が起きた時の影響も最小限に抑えることができる」

 一番大きな問題から始める。「ただ分割するために分割するのではなく、コードベースから分離してもっともメリットがある部分がどこかを考えるべきだ」として、Newman氏は次のような例を挙げている。「例えば、まもなく在庫管理に関して多くの変更が必要になる予定だとしよう。その場合、倉庫に関するシームをサービスとして分離しておけば、個別の自律的なユニットになるため、変更を素早く行うことができる」

 セキュリティに対する影響を検討する。Newman氏は、ある企業ですべての秘密情報を財務関連のコードで扱っている場合の例を挙げている。「このサービスを分割すれば、この1つのサービスに対してだけ、監視や送信中のデータの保護、保存されているデータの保護などの処理を追加することができる」

 依存関係のもつれを解く。Newman氏によれば、この分野ではパッケージのモデリングツールが役に立つという。「見つけたさまざまなシームを、依存関係の有向閉路グラフとして把握できれば、依存関係のもつれを解くのが難しいと思われるシームを発見することができる」同氏はまた、データベースに注意するようにと述べている。「データベースは、多くの場合依存関係のもつれの元凶だ」

 もちろん、すべてはビジネスのためだ。サービスの分割に時間と手間を投入するためには(事業部門はそれに気づかないかもしれない)、ビジネスにメリットがなくてはならない。よりきめの細かいサービスを組み立てたり、組み立て直したりできることで、ビジネスで新たなチャンスを生かすことができるだろうか?それとも、今ある巨大なサービスでも問題はないのだろうか?何かに取りかかる前に、まずこの問いかけに応える必要があるだろう。

 ThoughtWorksのサイトで、Newman氏の書籍の1章を無料で手に入れることができる。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]