第1回第2回で解説したように、FiNCアプリではマイクロサービスを採用しています。事業の多角化を急速に進める上で、マイクロサービスは不可欠なアーキテクチャーでした。

 ただ、マイクロサービスに基づくアプリケーション開発は決して容易ではありません。第3回となる今回は、FiNCでSite Reliability Engineering(以下、SRE)に携わる立場から見たマイクロサービスの課題や、解決策である「Docker」の活用について紹介します。

 SREとは、Webアプリケーション開発/運用の分野で最近使われる言葉です。Webサイトの信頼性向上のためのエンジニアリングを意味し、具体的にはアプリケーションのパフォーマンスや可用性、セキュリティなどを確保するためのインフラ構築/運用を指します。

 FiNCにおけるSREの業務は多岐にわたっています。サーバーの構築から始まり、冗長構成やバックアップ体制の強化、アプリケーションのパフォーマンスの計測、デプロイ(展開)の設計や、セキュリティ関連作業などがあります。パフォーマンス管理に関しては実際にアプリケーションのコードをさわることもありますし、認証システムのようなサービス全体に関わる横断的なシステムについては、開発もしています。

 SREの業務をこなす中でFiNCのマイクロサービス化が進み、マイクロサービスの数や大きさが成長していきました。その過程で、いくつかの問題にぶつかりました。解決するために、仮想化ソフトウエアであるDockerの利用にたどり着きました。

サービス数が増え、管理コストが増大

 筆者がFiNCのサーバー構築/運用に携わり始めた2015年の2月は、サービスの数が5個でした。それが2016年の5月には、16個にまで増えています。

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

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