開発ツール/プラットフォーム 開発ツール/プラットフォーム記事一覧へ

[市場動向]

マイクロサービスのパラメータを応答時間などの要件に合わせて自動調整する技術、富士通研究所

2019年9月27日(金)日川 佳三(IT Leaders編集部)

富士通研究所は2019年9月27日、複数のマイクロサービスで構成するシステムにおいて、応答時間や可用性などの要件に合わせてマイクロサービスの設定パラメータを自動調整する技術を開発したと発表した。2019年9月からの社内試行の結果をふまえ、2020年度の実用化を目指す。

 従来、1つのマイクロサービスに機能追加などの変更を加えた場合、全体のシステムに遅延などの影響を与えることがあるため、その都度システム全体の検証が必要になっていた(図1)。例えば、ECサイトにスマートフォンによる電子マネー決済機能を追加した場合、決済サービスを呼び出すフロントサービスや他のサービスにも遅延や受付率低下といった影響が及ぶ。

図1:マイクロサービス変更時の影響イメージ(出典:富士通研究所)図1:マイクロサービス変更時の影響イメージ(出典:富士通研究所)
拡大画像表示

 富士通研究所は今回、マイクロサービスを変更した際にサービス品質を手軽に確保できるように、システム全体が適切に稼働するようなパラメータを自動で調整する技術を開発した。応答時間や可用性、コストなどのサービス要件に合わせて、マイクロサービス実行基盤の設定パラメータを自動で調整する仕組みである。

 開発した技術を富士通研究所で検証したところ、効果を確認できた。マイクロサービス実行基盤であるKubernetesとIstioで構築した社内のストリーミングサービスにおいて、ある取り決めた品質に向けてパラメータ調整を実施したところ、人手ではパラメータ調整に3日間を要したのに対し、本技術を活用した場合には1時間で調整できた。

遺伝的アルゴリズムで設定パラメータの組み合わせを探索

 開発した技術の特徴は2つある(図2)。(1)サービス品質を推定する品質シミュレーション技術と、(2)最適なパラメータを探索する自動調整技術、である。

図2:設定パラメータの自動調整技術の概要(出典:富士通研究所)図2:設定パラメータの自動調整技術の概要(出典:富士通研究所)
拡大画像表示

 (1)のサービス品質を推定する品質シミュレーション技術では、サービスの利用要求から応答までの間にシステム内部で行われるマイクロサービス間の通信を、待ち行列理論にもとづいてモデル化した。これを活用して、あるマイクロサービスを変更した際に起こりうる、システム全体の動作や通信量・所要時間を仮想的に推定するシミュレーション技術を開発した。これにより、システム全体の品質と個々のマイクロサービスの品質を定量化できるようになった。

 (2)では、遺伝的アルゴリズム(生物の進化過程を模擬した解の探索手法)と品質シミュレーション技術を組み合わせ、サービスの品質要件を制約条件に、個々のマイクロサービスに与えるCPU、メモリー割当量、リトライ回数などの設定パラメータの最適な組み合わせを探索する技術を開発した。

 これにより、サービス品質と個々のマイクロサービスの品質を両立する設定パラメータを迅速に導出できるようになった。例えば、遅延発生時に利用者を不満に思わせないタイムアウト時間を設定したり、通信を停滞させないために優先度が低いサービスを切り離す動作などを自動で調整できるようになった。

 なお、マイクロサービスアーキテクチャとは、個別に開発・運用可能な複数の小さなサービス(マイクロサービス)をつなぎ合わせることで、1つのシステムとして構成するソフトウェア開発手法である。構成上、個々のマイクロサービスを簡単に変更できるため、頻繁に新機能の追加などが求められるECサイトや旅行サイトなどのWebサービスにおいて注目されている。

関連記事

Special

-PR-

マイクロサービスのパラメータを応答時間などの要件に合わせて自動調整する技術、富士通研究所富士通研究所は2019年9月27日、複数のマイクロサービスで構成するシステムにおいて、応答時間や可用性などの要件に合わせてマイクロサービスの設定パラメータを自動調整する技術を開発したと発表した。2019年9月からの社内試行の結果をふまえ、2020年度の実用化を目指す。

PAGE TOP