SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

イベントレポート

Spring 5.0は来春リリース! クラウドネイティブ開発、マイクロサービス化など最新技術・事例にあふれた4日間

世界最大規模のSpring Frameworkイベント「SpringOne Platform 2016」参加レポート


セッション「Task Madness - Modern On Demand Processing」

Springには、マイクロサービスでのバッチ処理を実現するプロダクト「Spring Cloud Task」があります。このSpring Cloud Taskについて、 Michael Minellaさん(以下、Michaelさん)とGlenn Renfroさん(以下、Glennさん)によるセッションが行われました。

セッション会場の様子
セッション会場の様子

セッションはMichaelさんからの「現在のマイクロサービスはサービスが長期間稼働していることが前提になっているが、 あらゆるユースケースを考えると、短命なマイクロサービスも必要だ」という問題提起から始まりました。

短命なマイクロサービスというと、従来のシステムでいうところのバッチ処理がそのイメージに近いでしょう。 ただし、バッチ処理は任意のタイミングで何度も実行するため、ディレイドバッチとして実装し、常駐プロセスとして起動しておくのが一般的ですが、マイクロサービスは都度サービスプロセス自体を起動/終了させるほうが自然です。 これは、常駐プロセス下でマルチスレッド処理をしてしまうとスケーラビリティの確保が難しいためで、マイクロサービスではマルチプロセスにしてスケーラビリティを高めるほうが適切ということです。

「マルチプロセスにしてスケーラビリティを高めるために、Spring Cloud Taskがある」というのがMichaelさんの説明です。 また、Spring Cloud Data Flowによってマイクロサービス間の一部にSpring Cloud Taskを組み込むことで オンデマンドに処理を起動でき、システム全体の振る舞いにより柔軟性をもたらすとのことでした。

Glennさんは、2つのデモを披露しました。 1つ目は、Spring Cloud Taskを使った「Hello World」のデモです。 このデモからは、Spring Bootアプリケーションの使用感そのままにSpring Cloud Taskを作ることができる手軽さが伝わってきました。 2つ目は、Spring Cloud Data Flowの一部としてSpring Cloud Taskを組み込んだデモでした。 他のマイクロサービスと連携し、必要なときだけ起動できるのはもちろん、 実行履歴もWebベースの管理画面から参照できるので、扱いやすそうに見えました。

聴講者との質疑応答は終始活発で、これからさらに人気を集めるプロダクトになりそうです。

なお、Spring Cloud TaskはすでにGA版がリリースされており、最新版は1.0.2です。
また、この講演のスライドやデモサンプルはGitHubで視聴できます。 気になった方は、ぜひアクセスしてみてください。

セッション「Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry」

このセッションでは、Pivotal Cloud FoundryプロダクトマネージャであるAlex Leyさん(以下、Alexさん)が、 マイクロサービスのための継続的デリバリ(Continuous Delivery)について講演しました。

Alexさんは最初に、継続的デリバリをMartin Fowler氏の言葉を借りて「いつでもプロダクションをリリース可能にするための開発の規律である」 と提示しました。 その上で、継続的デリバリにおけるマイクロサービスとモノリスの違いは、 小さなサービスそれぞれのインテグレーション、デリバリ、オペレーションを別に考える必要がある点である、と主張しています。

セッションでは、マイクロサービスの継続的デリバリを実現する手段として、 Cloud Foundryのプロジェクトである「Concourse CI」を提示し、 サービスの単体テスト、デプロイ、スモークテストといった一連のデリバリのパイプラインをデモで説明しました。 Concourse CIは、パイプラインを設定することで、視覚的にそれぞれの状態を監視することができるそうです。

今後はマイクロサービスの浸透により、小さなサービスで構築された複雑なシステムに対して、 それぞれの小さなサービス単位にデプロイが必要になることが予見されます。 マイクロサービスのアーキテクチャを採用する際には、 継続的デリバリのパイプラインを単純化できるConcourse CIが利用されるケースが増えるのではと感じました。

「Concourse CIはCloud Foundryプロジェクトに参画し、CIやCDの面白さに触れたことがきっかけで思いつき開発した」
「Concourse CIはCloud Foundryプロジェクトに参画し、CIやCDの面白さに触れたことがきっかけで思いつき開発した」

次のページ
クロージングセッション

この記事は参考になりましたか?

イベントレポート連載記事一覧

もっと読む

この記事の著者

SpringOne Platform 2016参加チーム(SpringOne Platform 2016サンカチーム)

【NTTデータ】池谷智行、川崎真弘、倉元貴一、佐々木啓祐、本橋賢二 【NTT】岩塚卓弥 【Pivotalジャパン】槙 俊明

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

本橋 賢二(NTTデータ)(モトハシ ケンジ)

米国駐在時に、OpenStackやOpen Compute、Open Networking Foundationなど、クラウド(IaaS)に関するオープンイノベーションに取り組む。特に、OpenStackは創設メンバーの一人として設立当初より深く関わり、Austinで開催されたOpenStack初回...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/9631 2020/02/20 16:33

おすすめ

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー