新しいWebCoreサーバーレスプラットフォームへの移行から1年後、BBCは、アーキテクチャのメリットを享受し始めた。このアーキテクチャにより、パフォーマンスと運用上の課題を解決するエンジニアの負担を取り除くことができ、顧客に提供する価値に集中できるようになった。
BBCのリードテクニカルアーキテクトのJohnathan Ishmael氏が説明するように、サーバーレス化により、BBCは、パーソナライズ、更新の速度、ビルド時間、実験など、さまざまな点でサービスを向上させることができた。
サーバーレスは、コンテンツ配信からビルドツールの強化まで、世界最大級のWebサイトのデジタルサービスを成長させるための強力なツールであることがわかっています。
パーソナライズは、個々のユーザに提供するページの関連性を高めることを目的とするコンテンツプロバイダーにとって重要な領域である。残念ながら、パーソナライズによって負荷が高くなり、パフォーマンスが低下する可能性がある。コンテンツの少なくとも一部をユーザごとに特別にフェッチしてレンダリングする必要があるためである。サーバーレスは、両方の課題に対処する手段を提供したとIshmael氏は言っている。
ページがレンダリングされてオーディエンスに配信されるまでに約500ミリ秒かかります。そのタイムフレームで、約30の関数を呼び出します。コンテンツをHTMLにレンダリングするためにReactの実行に約150ミリ秒かかり、残りはデータのフェッチまたは処理に費やされます。
新しいプラットフォームでは、パーソナライズされていないコンテンツ向けの短命のキャッシュを扱うことに対しても効果的であることがわかっている。これは、本文の更新がユーザに届くまでにかかる時間を短縮することを目的としている。過去8か月で2.5分から30秒になり、さらに5秒未満に短縮される可能性があるとBBCは述べている。
サーバーレスへのBBCの取り組みは、CI/CDパイプライン全体をサーバーレスにして、より大規模な構築とデプロイを可能にするまでになった。これにより、ビルド時間が24分から5分に大幅に短縮された。そして、2分のしきい値を下回ることを目指している。
最後になるが、新しいWebCoreプラットフォームは、A/Bテストを使った実験の処理にも有益であることがわかっている。ページのすべてのバリエーションを考慮すると、A/Bテストによって提供されるページ数が大幅に増える可能性がある。ここでも、サーバーレスアプローチを使うことが有用であることがわかったとIshmaelは言っている。
新しいプラットフォームでのBBCの経験はほぼ完全に肯定的であった。騒がしい隣人、つまり同じコンピューティングリソースを共有する他のサーバーレスの顧客によって引き起こされるパフォーマンスの問題はなかった。この課題は、定期的な遅延のピークを通じて明らかになった。また、この課題では、適切な診断と修正のためにサービスプロバイダーの介入が必要であった。
このサクセスストーリーには、これまでに記事にしてきた内容に関して、皆さんが知りたいと思えるような、他にも多くの詳細情報がある。そこには、BBCエンジニアマネージャーのGraeme Lindsay氏が別の記事で調査していた組織側の話もある。サーバーレス化がもたらす組織的な課題に関心がある人は見逃さないでください。