サーバーレスの技術はデベロッパーに、プログラムを動かすために必要なインフラストラクチャの資源について考えなくてもよい開発方法を提供するが、これまでは多くの場合、関数を利用するプログラミングに限られていた。そこでLightbendの新しいオープンソースプロジェクトCloudStateは、関数を超えることによってこの状況を変えようとする。
LightbendのCTOであるJonas Bonér(ジョナス・ボネル)氏によると、インフラストラクチャを抽象化してしまうサーバーレスの基本的な能力は、関数に限定されないはずであり、もっと広範囲な開発体験に応用できる。Bonér氏はこう語る。「今は、サーバーレスとFunction as a Serviceを混同している人が多いのではないか。それでは、技術を十分に利用していないことになる。サーバーレスの真のメリットは関数云々ではなくて、できるかぎり多くを自動化することによって得られるまったく新しいデベロッパー体験とオペレーション体験なのだ」。
彼によると、Lightbendの顧客であるデベロッパーたちは、プログラムのあらゆる部分を含むもっと完全なサーバーレスの開発体験に憧れている。Bonér氏は言う。「サーバーレスとFunction as a Serviceの現在の実装は確かに素晴らしいけれど、でもアプリケーションのそのほかの部分はそのレベルで動いていない、と訴えるデベロッパーがとても多い」。それこそまさに、CloudStateが解決しようとする問題だ。
Bonér氏は、関数で動かすプログラミングを全廃するわけではない、と念を押す。むしろ、それを補強し拡大するのだ。CloudStateは、いくつかの既存の技術を利用する。まず、サーバーレスとコンテナ化を統合するGoogleのオープンソースプロジェクトKNative、さらにgRPC、Akka Cluster、GraalVM on Kubernetesなどだ。
CloudStateはまだ開発途上のプロジェクトだが、基本的なビルディングブロックはすでにあり、Bonér氏はユーザーもこのオープンソースプロジェクトを初期の段階から使って、その成長に貢献してくれることを期待している。今あるのは、プロジェクトの目標を示す仕様書や、実装のためのプロトコル、そしてテストキットなどだ。
関数にとらわれない、サーバーレスのもっと広い意味とビジョンを実現することが、このプロジェクトの目標だ。そこではデベロッパーが書いたいろいろなコードが、下層のインフラストラクチャを気にする必要なく動く。大胆なアプローチではあるけどBonér氏曰く、まだ初期段階なのでプロジェクトの成熟のためには時間とコミュニティの貢献が必要だ。
関連記事: サーバーレスとコンテナは両者を一緒に使うのがベストプラクティスだ
[原文へ]
(翻訳:iwatani、a.k.a. hiwa)