Cloudflare、ヘッドレスブラウザ+Puppeteerがすぐ使える「Workers Browser Rendering API」発表
Cloudflareは、同社が提供するCloudflare Workersの新機能として、ヘッドレスブラウザとそれをコントロールするPupeteerを呼び出せる「Workers Browser Rendering API」(以下、Browser Rendering API)のクローズドベータを発表しました。
We’re excited to announce a private beta of the Workers Browser Rendering API. With browser automation, you can programmatically do anything that a user can do when interacting with a browser. https://t.co/fGv9gq7d7M #DeveloperWeek
— Cloudflare (@Cloudflare) November 16, 2022
Browser Rendering APIを用いることで、開発者は自分でヘッドレスブラウザやPuppeteerのインストールや運用などをすることなく、Cloudflareのデータセンター上で実行されているヘッドレスブラウザのプロセスとPuppeteerをCloudflare WorkersのAPI経由で呼び出せます。
そのため、Webブラウザ上に表示される画面のスクリーンショットを定期的に取得してメールをするプログラムや、Webアプリケーションの自動テストのためのプログラムなど、Webブラウザの操作を自動化することで可能になるさまざまなアプリケーションをすぐ実行できるようになります。
ヘッドレスブラウザのインスタンスをプールし、すぐ利用可能に
Cloudflareによると、Browser Rendering APIの具体的な仕組みは以下のようになっています。
まず同社エッジロケーションのデータセンターには、Googleが開発した高度な分離機能を備えるコンテナランタイム「gVisor」を用いて、ヘッドレスブラウザのインスタンスがウォーム状態で多数プールされています。
これはブラウザ上で何らかの悪意のあるプログラムが実行されたとしても、それをそのインスタンス内に封じ込めるためのセキュアな仕組みの1つです。
一方で、Cloudflare WorkersからはラップされたPuppeteerライブラリが呼び出せるようになっています。そしてCloudlare Workersからヘッドレスブラウザがリクエストされると、いずれかのヘッドレスブラウザのインスタンスにWebSocket経由で接続され、Chrome Devtools Protocolを介して通信が行われるようになります。
Browser Rendering APIは現在クローズドベータで、利用にはウェイトリストから申し込む必要があります。
2024年4月、正式サービス化が発表されました。
あわせて読みたい
「ITエンジニア本大賞2023」投票開始。12月11日締め切り、来年1月下旬にベスト10発表予定
≪前の記事
分散SQLiteをCDNエッジで提供する「Cloudflare D1」がオープンアルファとして利用可能に