OpenWhisk: 小規模なアジャイル・チームの開発プロセスを根本から単純化する

Comments

マイクロサービス・アーキテクチャーは、堅牢かつスケーラブルなクラウド・ネイティブのソリューションをエンジニアリングするのに最適な手法として出現したものです。このアーキテクチャーでは、アプリケーション・ロジックが小さな疎結合されたサービスにカプセル化され、それらの分散されたサービスが言語に依存しない API を介して相互通信します。

マイクロサービスをベースとしたソリューションには数々の利点があるとは言え、主流のクラウド・テクノロジーを使用してソリューションを構築するという難関が残っています。ソリューションを構築するには、多くの場合、複雑なツールチェーン、そして複雑なビルドから運用へのパイプラインを管理しなければならないからです。そのため、インフラストラクチャーと運用の複雑さ (耐障害性、ロード・バランシング、自動スケーリング、ロギング機能など) に対処するためにかなりの時間を割かなければならない小規模なアジャイル・チームの間では、単純化された方法でソリューションを構築する方法を模索するようになっています。小規模なアジャイル・チームが求めている方法は、付加価値を提供するコードの開発に集中する時間的余裕をもたらすと同時に、既存のスキルを再利用でき、使い慣れているツールを引き続き使用できて、しかも特定の問題を解決するのに最適なテクノロジー (プログラミング言語など) を選択できるだけの柔軟性がある方法です。

そのような方法であれば、根本的に単純化された形で迅速にマイクロサービス指向のソリューションを構築できるようになることから、明らかにメリットがもたらされます。

小規模なアジャイル・チームでは、以下のことが要件となります。

  • 簡単に接続/結合できるビルディング・ブロックが豊富に揃っていること。
  • 下位レベルのインフラストラクチャーや運用の詳細よりも、価値をもたらすビジネス・ロジックに集中して取り組めること。
  • 複数のマイクロサービスを簡単に構成してワークフローを形成できること。

このようなソリューションを構築する新しい方法をクラウド内で取り入れているのが、OpenWhisk です。OpenWhisk は、イベントに応答してアプリケーション・ロジックを実行する分散型コンピューティング・サービスを提供します。

IBM の価値提案と、IBM ならではの差別化要因は以下のとおりです。

  • 開発者がビジネス・ロジックに専念できるようにするために、OpenWhisk はインフラストラクチャーの複雑さを開発者から隠します。
  • スケーリング、ロード・バランシング、ロギング、耐障害性、メッセージ・キューなどの下位レベルの詳細は、OpenWhisk が処理します。
  • OpenWhisk には、さまざまなドメイン (アナリティクス、コグニティブ、データ、IoT など) のビルディング・ブロックを揃えたリッチなエコシステムがあります。
  • OpenWhisk はオープン・ソースであり、オープン・コミュニティーをサポートすることを目的としています。
  • OpenWhisk がサポートするオープン・エコシステムでは、マイクロサービスを OpenWhisk パッケージによって共有できるようになっています。
  • OpenWhisk を利用すると、開発者は最新の抽象化およびチェーン連結を使用してソリューションを構築できるようになります。
  • OpenWhisk は NodeJS、Swift を含む複数のランタイムをサポートしており、任意のバイナリー・プログラムを Docker コンテナー内にカプセル化できます。
  • OpenWhisk に支払う料金は、実行したコードの分だけです。

OpenWhisk モデルは、以下の 3 つの概念で構成されています。

  • トリガー: 発生する可能性のあるイベントのクラス。
  • アクション: イベント・ハンドラー。つまり、イベントに応答して実行されるコードです。
  • ルール: トリガーとアクションとの間の関連付け。

このモデルでは、サービスがトリガーとして送信するイベントを定義し、開発者がそれらのイベントを処理するためのアクションを定義します。
開発者に必要なのは、目的のアプリケーション・ロジックの実装に対処することだけです。後はすべて、システムが処理してくれます。

OpenWhisk では、型にとらわれずに任意の Webhook 対応サービスでイベントを送信できます。
さらに、誰もがアクションとトリガーのパッケージを OpenWhisk エコシステムに貢献できるよう、オープン API も提供しています。

OpenWhisk の詳細を調べるには、https://developer.ibm.com/openwhisk にある IBM の OpenWhisk 開発センターにアクセスしてください。

また、https://new-console.ng.bluemix.net/openwhisk/ にアクセスして試験的プログラムにサインアップすると、IBM Bluemix 内で稼働する OpenWhisk を確認できます。


ダウンロード可能なリソース


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=DevOps
ArticleID=1038011
ArticleTitle=OpenWhisk: 小規模なアジャイル・チームの開発プロセスを根本から単純化する
publish-date=09292016