先頃の記事で、BBCエンジニアリングチームは、BBC Onlineをサーバレスデプロイメントとクラウドに移行するために行われた作業について説明している。BBCのWebサイトの半分がAWS Lambdaでサーバレスによりレンダリングされるようになった。
仮想マシンまたはコンテナを管理するという運用上のオーバーヘッドを回避し、デプロイメントを安全で信頼性が高くスケーラブルに保つことを目的として、BBCのエンジニアリングチームはサーバレスアーキテクチャへの移行が必要であると判断した。BBCのデジタル製品のアーキテクチャ責任者であるMatthew Clark氏が、新しいアプローチと関連するテクノロジーの理由と目標について説明する:
テクノロジーの場合と同様に、じっと立っていると後戻りします。最近まで、BBCのWebサイトの多くはPHPで作成され、ロンドン近郊の2つのデータセンタでホストされていました。2010年に行われたとき、それは賢明な技術的選択でした。しかし今はそうではありません (...) そして、過去数年間、BBC Onlineを再作成することが私たちの戦略でした。ほぼすべての部分がクラウド上で再構築されています。新しいサービスをほぼ瞬時にプロビジョニングできる柔軟性など、クラウドがもたらす多くのメリットを活用しました。また、ReactフレームワークやDevOpsモデルなど、ベストプラクティスのツールと手法を使用しました。
Lambdaはオンデマンドで自動スケーリングできるため好まれており、著者によると、BBC Webサイトを作成するには毎秒約2,000の関数を実行する必要がある。さらに、アーキテクチャを簡素化するために、複数の独立したシステムを汎用システムに置き換えるという目標があった。しかし、サーバレスソリューションが、非常に大規模なデプロイメントでコストの最適化と制約のない自動スケーリングを実現するための最良のアプローチであることに誰もが同意するわけではない。「LambdaでBBCのサイズのサイトを運営することは、政府が助成する予算のあふれんばかりの浪費にほかなりません。それは絶対にクレイジーです」とHacker Newsのユーザはコメントしている。「AWSでも、追加のOps入力を必要とせずにこのような巨大なマークアップに悩まされることのない代替オプションがたくさんあります」。アクセンチュアのテクノロジー戦略およびアドバイザリーマネージャであるTom Snelgrove氏は、代わりに次のように質問している:
興味深いことに、BBC Webサイトは完全にAWS Lambda関数で実行されるようになりました。先見の明のあるアーキテクチャですか、それともそれ自体のために新しいテクノロジーに甘んじているのですか ?
古いページと新しいクラウドベースのページの比較。値はLighthouseのパフォーマンススコア。 出典: https://medium.com/bbc-design-engineering/moving-bbc-online-to-the-cloud-afdfb7c072ff
著者は、将来の記事でより詳細な分析を約束して締めくくる。これは、多くの開発者が楽しみにしていることである。AHEADのコンピューティング自動化コンサルタントであるJesse Adelman氏は、BBCから詳細を知りたいと考えて投稿した:
BBCがほとんどをAWSサーバレスに移行するための非常に興味深い動き (...) 間接化の追加レイヤと見かけの開発者スループット速度は、より優れた、より費用効果の高いサービスになるのでしょうか ? 注目すべき発展途上の物語です。そして、それらは毎秒2kのLambdaで正しくキャッシュしているのでしょうか ? 彼らが内部テレメトリを公開することを願っています。
クラウドとサーバレスアプローチへの移行をBBCが開始したことは、昨年すでに文書化したものである。Re:Invent 2019で、BBCのシニアソフトウェアエンジニアであるAlex Chesters氏が、BBCがLambda@Edgeを使用してデバイスページをカスタマイズする方法を紹介した。