72倍のパワーを発揮するサーバーレスコンピューティング
コンピューティングの進歩を示す最も強力な指標の1つは、付随的な複雑さの軽減、通称「ヤクの毛刈り」 (yak shaving) です。つまり本当にやりたいことができるようになる前に、やらなければならないことをすべてやってしまわなければならない、ということです。サーバーレステクノロジーは、この進歩の最先端、最新の結果ともいうべきものです。しかし、開発者がかつて負担していた運用上のオーバーヘッドの多くが撤去されたとはいえ、エンドユーザーに利益をもたらす、という点ではまだまだ改善すべき点がいくつか残っています。新世代のサーバーレスは、それらを過去のものにしつつあります。
まずは歴史の授業から
今から20年前に Web サイトを構築するには、コードの最初の1行を書き終えるまでに数週間かかりました。自分で部品を注文して、物理的にコンピューターを一から組み立てなければなりませんでした。そして、それをインターネットに接続する必要がありました。オペレーティングシステムをインストールして、メンテナンスする必要もありました。Web サーバーも、自分で設定して実行しなくてはなりません。それらがすべて終わって、ようやく本来の仕事である Web サイトの設定に取り掛かることができるのです。そして、サイトの人気が出たら?その負荷への対応のために、また全部やり直す (しかも何度も何度も繰り返し) ことを覚悟しなくてはなりません。
私たちは20年間をかけて、このような複雑さのレイヤーを1枚1枚、剥がすように削除してきました。インターネットへの接続は、データセンタープロバイダが世話してくれるようになりました。自分で構築しなくても、コンピューターはマネージドホスティング会社から買えるようになりました。Amazon や Google、Microsoft などのセントラルクラウドプロバイダーが、プロビジョニング時間を数時間から数分に短縮した仮想マシンを提供してくれるようになりました。Platform-as-a-Service が Web アプリケーション以外のすべてを処理し、負荷に応じて初歩的な自動スケーリングも追加するようになりました。今日、セントラルクラウドベースのサーバーレスプラットフォームは、複雑さを更に抽象化し、開発者がアプリケーションデータを直接管理する必要性すらなくし、リクエストに応答してのみ実行されるステートレス関数を記述できるようにしています。
ソフトウェア開発者にとって、間違いなく素晴らしい20年間でした。しかし、エンドユーザーにとってはどうだったでしょうか。サーバーがデスクの下からデータセンターへと移動し、信頼性が向上したことによるメリットは確かありました。しかし、上記のようなテクノロジー革新によって可能になった改善は、ユーザーエクスペリエンスまでは及ばなかったのです。このことは、地域別レイテンシにおいて特に明らか です。たまたま、セントラルクラウドインフラストラクチャに近い、数少ないロケーションに住んでいるユーザーは、一貫して高速なエクスペリエンスを享受できます。しかし、光の速度はどこでも同じです。世界中のどこに住んでいても、ユーザーは長距離接続の遅さや不安定さに翻弄されていることに変わりありません。
次世代のサーバーレスは、開発者とユーザ双方にメリットをもたらすことを目指しています。
これまでのテクノロジーとは対照的に、新しいサーバーレスは、開発者だけでなくユーザーにもメリットをもたらすようにデザインされています。サーバーレスアプリは柔軟で分散性があるため、これまで不可能だったエッジなどへのデプロイが可能になります
エッジサーバーレスはサーバーレスアプリのロジックを世界中に分散させることを可能にし、中央クラウドへの近さには関係なく、すべてのユーザーに全く同じパフォーマンス体験を提供するものです。私達のサーバーレスソリューションである Compute@Edge では、そのロジックを72か所の、エンドユーザーに近いネットワークエッジで同時実行することで、サンパウロやストックホルムにいるユーザーにもサンフランシスコにいるのと何ら変わりない、優れたエクスペリエンスを提供することができます。
エッジサーバーレスアーキテクチャは、セントラルクラウドコンピューティングのパワーとローカルアプリの反応性を組み合わせたものです。Fastly Solutions のアーキテクトであるレオン・ブロカールによって Compute@Edge 上に構築されたこのアプリは、Markdown を使って入力し、それを HTML に変換してレンダリングされた結果を返します。エッジクラウド上で実行されているため、1回のキー操作ごとに往復リクエストを実行できるほどのパフォーマンスが得られます。このレベルのインタラクティブ性 (双方向性) は、今も、これまでも、そしてこれからもセントラルクラウドでは達成不可能です。
エッジサーバーレス : ウェブの未来
Fastly では、コンピューティングの進歩のメリットは、開発者とエンドユーザー双方が享受すべきだと考えています。私たちは、世界中のどこにいても、すべてのユーザーに新レベルの反応性とパーソナライゼーションをもたらす、エッジファーストのサーバーレスアーキテクチャ を可能にするために、Compute@Edge を構築しています。皆さんも、私たちと一緒に構築に参加してみませんか?関心のある方は是非、Compute@Edge 開発者コミュニティに参加してください。