トピック

マイクロサービスについて

従来のアプリケーション作成手法では、「一枚岩」(モノリシック) に重点を置いてきました。つまり、あるアプリケーションのデプロイ可能なすべてのパーツを、その 1 つのアプリケーションに含めることです。この手法の欠点は、アプリが大きくなればなるほど、新しい問題への対応や新機能の追加を迅速に行うのが難しくなるということです。マイクロサービスに基づくアプリ構築の手法は、このような課題を解消し、開発と対応を促進するのに役立ちます。

マイクロサービスとは

マイクロサービスとは、ソフトウェア作成手法の 1 つです。このアーキテクチャでは、アプリケーションを互いに独立した最小コンポーネントに分割します。すべての機能を 1 カ所にまとめるという、従来のモノシリックなアプリ構築の手法とは異なり、マイクロサービスは 1 つ 1 つが独立し、同じタスクを達成するために連動します。それぞれのコンポーネント (つまりプロセス) が、マイクロサービスとなります。このソフトウェア開発手法は、細分化でき、軽量で、似通ったプロセスを複数アプリ間で共有できるという特長があります。


では、マイクロサービスに基づくインフラストラクチャを使用するメリットは何なのでしょうか。簡単に言えば、開発者が目指すのは、質の良いソフトウェアをより迅速に提供することです。マイクロサービスはこの目標を達成する 1 つの手段となりますが、他にも考慮すべき点があります。アプリを単にマイクロサービスに分割するだけでは不十分です。それらを管理し、オーケストレーションし、マイクロサービスが作成および変更するデータを処理する必要があります。

マイクロサービスでできること

マイクロサービスを利用すると、ビジネスニーズを満たすアプリをより簡単かつ迅速に開発・調整できるため、ビジネス上の素早い対応が可能になります。ソフトウェア設計およびアーキテクチャの手法としてマイクロサービスを活用することで、企業は従来のソフトウェア開発につきものの、何年にも及ぶ「デスマーチ」から解放されます。また、開発チーム内のさまざまなグループがアジャイルな方法で同時に作業を進め、短期間で顧客に価値を提供できるようになります。

マイクロサービスの基本概念や、マイクロサービスを使用するメリットとデメリットについてご確認ください。 

Why microservices

マイクロサービスと Linux コンテナの関係とは

Linux コンテナは、マイクロサービスに最適な、優れたコンテナです。コンテナは、マイクロサービスに基づくアプリを実行する最適な環境となります。コンテナにはアプリケーション用の軽量なランタイム環境が含まれているため、開発からプロダクションに至るまで自由度と信頼度が増します。また、細分化された実行、分離、セキュリティ保護も可能になります。こうしてハードウェアを有効活用し、ストレージ、ネットワーク、セキュリティなどのサービスを簡単にオーケストレーションできます。

Containers

マイクロサービスに関する資料

ホワイトペーパー

マイクロサービス:より良いアーキテクチャ設計

リファレンス・アーキテクチャ

Red Hat JBoss EAP によるマイクロサービスの構築

ビデオ

マイクロサービス・アーキテクチャとサービス指向アーキテクチャの比較

ブログ

マイクロサービスに向けての段階的な道のり

マイクロサービスを使用し始めるために必要なもの

サービス

アプリケーション開発プロジェクトをスピードアップしましょう。革新的なオープンソース・テクノロジーを活用してプロトタイプを作成し、困難な課題を解決できるよう、Red Hat の専門家が皆様のチームを支援します。

プラットフォーム

開発者に焦点を当てたクラウドベースのコンテナ・プラットフォーム上で、マイクロサービスを実行します。Kubernetes を介したエンタープライズ・オーケストレーションによる、継続的な統合を行います。

ミドルウェア

マイクロサービスに基づくアプリ、データ、サービス、デバイスを、堅牢かつ柔軟で使いやすいプラットフォームに統合します。

ミドルウェア

マイクロサービスに基づく環境で多数の API を管理することで、より柔軟な IT システムの構築と維持に必要な可視性と制御が得られます。

ミドルウェア

アプリ開発者にとって不可欠な、使いやすい多くの共通サービスとプロジェクトを利用できます。

これは始まりにすぎません。マイクロサービスや Red Hat のサービスについて、さらに詳しくご確認ください。