BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース “サーバレスは次世代PaaSだ” - Udi Dahan氏が語る

“サーバレスは次世代PaaSだ” - Udi Dahan氏が語る

原文(投稿日:2017/06/20)へのリンク

NDC Osloにおいて、Particular Softwareの創業者兼CEOのUdi Dahan氏と話す機会を得た。Particularは、.NETソリューション用にエンタープライズレベルのメッセージングとワークフローを実現するNserviceBusの開発企業として、その監視ツールと管理ツールを提供している。InfoQは氏に、ITおよび関連業界における現在の動向、Particular Softwareの今後の方向性、オープンソースプロジェクトからエンタープライズ製品への道筋について尋ねた。

InfoQ: あなたにとって“サーバレス”とは何ですか?

Udi Dahan: ホスティングと環境の観点から言えば、サーバレスは次世代のPaaS(プラットフォーム・アズ・ア・サービス)です。その中心となる価値提案は大企業ではなく、どちらかと言えば小規模な企業を対象としたもので、非稼働時のコストの大幅な削減を可能にします。サーバレスはメインフレーム企業にとってではなく、インドや中国からの次世代スタートアップにとってエキサイティングなものだと思います。

InfoQ: NDC Osloでのセッションでは、マイクロサービスに対する新たな取り組みを紹介していましたが、“マイクロサービス”とは何だと思いますか?

Dahan: “サービス”という言葉を使う場合、一般的にはHTTPやTCPを介して遠隔呼び出しできるものを指しています。これが何を意味するかと言うと – ネットワーク越しの呼び出しはインプロセスよりも遅い上に、複雑性や、セキュリティなどの別の懸念も大きくなります。最近になって、マイクロサービスとは、この新たなブランドの下でWebサービスの犯した過ちを正そうとする、SOAの理解者たちによる試みである、という説もよく耳にしますね。

InfoQ: .NETの世界では、.NETコアがLinuxやコンテナ内で動作するなど、クロスプラットフォームの動きが活発ですが、市場のニーズは本当にあるのでしょうか?

Dahan: 市場にはいくつかのセグメントがあると思います。設立後20~30年程度で、ITニーズもそれ程ではない中規模の企業であれば、プラットフォームはひとつで十分でしょう。彼らがWindowsショップならば、Windowを使います。クロスプラットフォームで実行するニーズがあるとは思えません。スタートアップ企業は、自分たちが知っているプラットフォームを選ぶ傾向があります。そして第3のセグメントは、多数の技術スタックを抱えた大企業です。実際には小規模組織の集合体である彼らには、非常に大きな規模の中に小さな環境がいくつもあります。彼らは例えば、C#に固執してそのメリットを活かしたいと思うかも知れません。しかしながら、1000台のサーバで実行する必要があるために、Windowsを新たに立ち上げるよりもLinuxで稼働させた方がコストを節約できる、という状況にあるのです。しかしこれは、業界全体の現象とは言えませんね。

InfoQ: あなたがParticularで関わっている企業は、どのような問題を抱えているのですか?

Dahan: リテールやEコマース、ヘルスケア、金融サービス、保険、メディア、テレコムなど、さまざまな業種があります。これらのドメインで当社が注目されているのは、当社の価値提案が長期的な視野に立ったものであり、システムの信頼性向上を望む顧客に対して、障害発生時に情報を失わないこと、コードが長期間にわたってメンテナンス可能であることを保証している点です。彼らは開発者の上位0.1%にアクセスできませんし、サンフランシスコやロンドン、東京に拠点を置いている訳でもありません。インフラストラクチャはごく普通ですし、重視しているのは – 私たちの関与している開発チームについて言うならば、いかにして自分たちの書いているコードを必要な規模に維持し、信頼性を保ち、クリーンにアップグレードするか、といったことなのです。私たちは彼らのために、問題を実践的に解決し、明日のデプロイを可能にします。

InfoQ: 開発の中心がパブリッシュ/サブスクライブ型メッセージングによる非同期コミュニケーションに移行しつつある現場では、どのようなメッセージキューシステムが使用されているのでしょうか?

Dahan: MSMQですね。コードキッズにはあまり人気がありませんが、インストールと設定が簡単ですし、データの紛失もありません。RabbitMQを使いたいと言う人もいるかも知れません。NServiceBusはRabbitMQをサポートしていますが、RabbitMQクラスタのセットアップは簡単ではありません。それにRabbitMQには、最もテストされているという理由から、CentOSの特定のバージョンが実行環境として推奨されている、という事情もあります。市場ではまだ多くの人たちがMSMQを使っていますし、成功例もたくさんあります。クラウド内であれば、プロバイダの提供するものを使いたくなると思います- AzureならばAzure Service BusかAzure Storage Queuesでしょう。

InfoQ: NServiceBusがコアで、トランスポートには任意のものを使用できるということですが – Particularプラットフォームの他の部分はどうなっていますか?

Dahan: NServiceBusはキューシステム全体を抽象化するものです。これにより、リトライやトランザクション管理、スレッディング、長期実行プロセスの実装方法などを気にする必要はなくなります。NServiceBusの提供する機能のひとつとして、メッセージの再試行がすべて失敗した場合、そのメッセージはエラーキューに移されます。エラーキューには専用のプロセスが用意されていて、ServiceControlと呼ばれています。これらのエラー上にはServicePulseの提供する監視および管理環境があり、メッセージを再実行して成功させることができます。

2番目は監査です。メッセージがNServiceBus内で正常に処理される度に、そのメッセージを取得して監査キューに入れることがオプションで可能です。これによって監査機能が有効になります。監査ログには、俗に言うパンくずリスト –  他のエンドポイントからのイベント発行の結果として得られたメッセージから生成される – が含まれています。それをServiceControlに取り込んで、ServiceInsightという可視化ツールを使用することにより、運用環境で実際に起きていることをシーケンス図として見ることができるのです。

InfoQ: NServiceBusをオープンソースプロジェクトからエンタープライズ製品に変更しようとしていますが、どのような考えからなのでしょう?

Dahan: 成功したオープンソースプロジェクトの多くは、成功の代償として、多くのユーザから扱いきれないほど多くのバグリクエストや機能要求を受け取っています。私は独立コンサルタントとして、NServiceBusやメッセージングに関するコンサルティングやトレーニングに多くの時間を費やしてきましたが、コーディングやNServiceBusへの機能追加には、あまり時間を割くことができませんでした。そのため、NServicedBusの進捗が遅くなってきたのです。このようなことが続くのならば、バグ修正や機能追加につながる収益の流れが必要だと感じました。その唯一の方法が、ライセンスに適切な価格を設定することだと思ったのです。この方法はうまく行きました。意外にも多くの企業から、“フリーのオープンソースソフトウェアは使用禁止なので、課金してくれた方がありがたい”という言葉が寄せらたのです。

InfoQ: 講演やワークショップ、トレーニングを続けていますが、どのような情報が求められていると思いますか?

Dahan: カンファレンスに参加したり、ワークショップに出席する人たちは、開発のスピードに遅れを取りたくないのだと思います。カンファレンスで行なうワークショップに関しては、NServiceBusを聞いたことはあっても実際に使う機会がない、もっと詳しく知りたい、というような人たちが参加しています – その他のワークショップでも、大部分は同じようなものでしょう。第2のカテゴリは、すでに最初のプロジェクトを経験している人たちです。彼らはその技術を理解していますが、自分たちが現在持っているものとは違う設計を行なう必要があり、ソフトウェアに対する別の考え方を学びたいと思っているのです。それが彼らの求めているものです – 世界やソフトウェアを違った視点で見られるようになることで、すでに理解しているこの技術を、よりうまく適用できるようになりたいのです。

 
 

この記事を評価

採用ステージ
スタイル
 

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT