全1200文字
PR

アプリケーションの迅速な改善を可能にする「マイクロサービスアーキテクチャー」。国内でも金融機関や伝統企業が導入するなど、本格的な普及期に入りつつある。ただし既存システムへの適用では、アプリケーションを独立性の高いサービスに切り分けるといった難題が立ちはだかる。どうすればうまくいくのか。最新の事例から成功の秘訣を探る。

 マイクロサービス化の推進で最難関はデータベースの分割にあるといえる。アプリ同士を疎結合にするには、データベースもアプリごとに持たせるのが理想だ。

 新規開発では一からの設計が可能だが、既存のシステムのマイクロサービス化ではアプリの分割に合わせて稼働中のデータベースを切り分ける必要があり、難度が跳ね上がる。

図 オイシックス・ラ・大地のマイクロサービス移行パターンの例
図 オイシックス・ラ・大地のマイクロサービス移行パターンの例
既存DBをそのまま使う移行パターンを追加(出所:オイシックス・ラ・大地の資料を基に日経コンピュータ作成)
[画像のクリックで拡大表示]

 そうしたデータベース分割の難しさに挑んでいるのが、有機野菜や無添加加工食品などの販売を手掛けるオイシックス・ラ・大地だ。

 「事業で求められるスピードで開発できない課題があった。不要な機能も含めてシステムが巨大化し、変更の影響範囲の特定に時間がかかったからだ」。オイシックス・ラ・大地の植木雅幸システム本部副本部長は、既存システムの課題とマイクロサービス化に取り組む理由をこう話す。

 同社のEC(電子商取引)サイトは創業以来、20年ほど使い続けている。その間に多くの修正や変更、追加などを重ね、システムが複雑化。データベースも巨大になり、課題が顕在化した。