筆者は、ヘルスケアアプリ「FiNC」の開発/運用に携わるエンジニアです。FiNCアプリは、2014年3月にモバイル向けWebアプリケーションとしてリリースしました。当初は利用者が食事を投稿し、内容に対して専門家が指導をするサービスを提供していました。その後各種検査との連携、ライフログの蓄積や分析、SNS、法人向けサービス、EC(電子商取引)、メディア、チャット、人工知能(AI)と、次々とサービスを拡充してきました(図1)。

図1●スマートフォン向けヘルスケアアプリ「FiNC」
(出所:FiNC)
[画像のクリックで拡大表示]

 いずれも、FiNCから利用できます。しかし裏側では、これらの機能を別々のサービスとして設計/開発しています。複数のサービスをつなぎ合わせて1つのアプリケーションとして提供する、「マイクロサービスアーキテクチャー」と呼ばれる設計手法を採用しているのです。

 FiNCはこれまで、急激にサービスを拡充してきました。さらに、個々のサービスを頻繁に改良し続けています。毎日、何らかの改良が加わっているといっても過言ではないほどです。“毎日アップデート”が必要なモバイルアプリを開発する上で、マイクロサービスアーキテクチャーは不可欠でした。

 本連載では、マイクロサービスアーキテクチャーを核に、FiNCのシステム設計方針や技術的な特徴を5回にわたって解説します。

 第1回でマイクロサービスアーキテクチャーの基本的な考え方を解説し、第2回でなぜそれをFiNCが採用したのか、どのように利用しているのかを説明します。第3回からは、「Docker」や「React.js」など、マイクロサービスアーキテクチャーを支える各種技術を取り上げます。

この先は会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら