Blink(ブリンク)は、
Googleを中心に開発が進められている
HTMLレンダリングエンジンです。
2013年4月3日、それまで
Chromiumで採用されていた
WebKitから分岐し、独立したプロジェクトとしてスタートしました。この分岐は、
Chromiumプロジェクトが抱えていた
WebKitとの連携における課題を解決し、より迅速な技術革新を目指すための重要な決断でした。
開発の背景
当初、
Chromiumはレンダリングエンジンとして
WebKitを利用していました。しかし、
WebKitを採用する他のウェブブラウザとは異なり、
Chromiumはタブや拡張機能、アプリケーションごとに独立したプロセスとして動作する「マルチプロセス」アーキテクチャを採用していました。このマルチプロセス構造が、
WebKitプロジェクトとの間で様々なコミュニティの複雑化を引き起こし、結果としてイノベーションの速度を低下させる要因となっていました。
Chromiumプロジェクト内では、この状況を打破し、より柔軟かつ迅速に開発を進める必要性が認識されていました。そこで、
WebKitから分岐し、
Chromiumに特化した最適化を施したレンダリングエンジンの開発に着手することになりました。これがBlink誕生の背景です。Blinkの開発目標は、
Chromiumプロジェクトのイノベーションを加速させ、長期的なウェブのエコシステムを健全に保つことにあります。
分岐の際、
WebKit側では、V8
JavaScriptエンジンの排除や、
JavaScriptCore以外の仕様の排除、描画ライブラリであるSkiaの排除、そして
GoogleのビルドシステムGYPの排除など、大きな変更が行われました。一方、Blink側では、描画ライブラリをSkiaのみに、ビルドシステムをGYPのみに絞り込むことで、約450万行にも及ぶソースコードを削除しました。
特徴
Blinkの最大の特徴の一つは、そのマルチプロセスアーキテクチャです。
Chromiumは、マルチプロセスを最も早く導入したブラウザの一つであり、アドオンごとにプロセスを開くことで、高速な動作を実現しています。
Chromiumの仕様書には、「シングルプロセスにすることは不可能ではないが推奨されない」と明記されており、
Chromiumをベースとしたブラウザは全てマルチプロセスを採用しています。アドオンの追加によってブラウザが遅くなるという問題は、開発者間でも課題として認識されていますが、現状ではBlinkが最も広く利用されているレンダリングエンジンです。
また、Blinkは
HTML5の互換性も高く、2019年9月19日時点のhtml5testでは535点を獲得し、トップの座を維持していました。PDF出力にはSkia/PDF m79 (PDF Version 1.4)が利用されており、高い描画性能を維持しています。
採用ブラウザ
Blinkは、
Google Chrome 28以降、
Opera 15以降、Android 4.4以降の標準ブラウザなど、多くの主要ブラウザで採用されています。これにより、Blinkはウェブの表現を支える重要な基盤技術となっています。
まとめ
Blinkは、ウェブブラウザのレンダリングエンジンとして、その革新的な開発手法と高いパフォーマンスで、ウェブの進化に大きく貢献しています。マルチプロセスアーキテクチャと最適化された設計により、高速で安定したブラウジング体験を提供し、ウェブの未来を支える重要な要素となっています。
[外部リンク]
Blinkのソース