Varnish-Cache 8.0 リリース。商標登録に伴うプロジェクト名変更

MD5crypt、GEOM、GBDE、FreeBSD Jailなどのシステムに貢献した著名なFreeBSD開発者、Poul-Henning Kamp氏が、HTTPアクセラレータとして機能するように設計された高性能キャッシュプロキシ「Varnish-Cache 8.0」をリリースしました。このプロジェクトはBSDライセンスの下で配布されており、これまでにFacebook、Wikimedia、Twitter、Vimeo、Tumblr、The New York Times、The Guardianなどで利用されています。

マルチスレッド、epoll/kqueue呼び出しによる接続多重化、そしてsendfileおよびmadviseシステムコールの使用により、高いパフォーマンスを実現しています。標準的なハードウェアでは、20Gbpsのストリームを処理し、リクエストレスポンスを300~1000倍高速化できます。キャッシュは仮想メモリに保存されます。Varnishのユニークな特徴は、返されたページをフロントエンドで段階的に組み立てる機能であり、ESI(Edge Side Included)言語を使用して組み立てロジックを定義します。

Varnishは、C言語による挿入を使用できる柔軟な設定システムも提供しています。設定は専用のVCL言語を使用して行われ、実行可能なバイナリコードにコンパイルされます。VCLでは、リクエスト処理ポリシーを記述できます。処理するコンテンツ、その取得元、そして配信前の変換方法を定義します。基本機能はモジュールを通じて拡張可能です。負荷分散、状態管理、バックエンドの応答時間に関するメカニズムも含まれています。サーバー.

新バージョンの発表と同時に、プロジェクトの名称変更が発表されました。次期リリース以降、「Varnish Cache」は「Vinyl Cache」に改名されます。これは、オープンソースのVarnish Cacheプロジェクトに貢献し、資金提供も行ってきたVarnish Software社が登録しているVarnish商標に関するクレームを受けたためです。22年前、Varnish Cacheの開発はノルウェーの新聞社Verdens Gangの資金提供を受け、同社はPoul-Henning Kamp氏をコード開発に、Linpro社をメンテナンスに起用しました。Linpro社は後にVarnish Software社を設立しました。Varnish Cacheという名称はオープンソースプロジェクトと、Varnish Softwareという名称は商用企業と結び付けられるようになりました。

オープンソースプロジェクトにおけるVarnishの名称の使用は口頭合意によって許可されており、Poul-Henning Kamp氏は書面による合意を主張していませんでした。最近まで、同社とオープンソースプロジェクトは平和的に共存していましたが、その後、知的財産権弁護士が介入し、Varnish Cacheの名称は明示的な許可なしにいかなる状況においても使用できないと主張しました。

Varnish Softwareからの許可を得る必要があるため、一部の参加者が開発に参加できなかったため、合意に至る試みがなされました。しかし、弁護士らは依然として、Varnish Cacheの名称はVarnish Softwareの所有物であり、一定の制限と拒否権の下でオープンソースプロジェクトによる使用を認めると主張しています。Varnish Cacheは独立したプロジェクトとして開発を継続する意向であるため、これらの制限に同意する用意はありません。

改名後、開発の調整をさらに進めるため、デンマークの管轄下で運営される非営利パートナーシップが設立されます。憲章では、組織は資金を所有または管理できないことが規定されています。その目標には、ソフトウェアの開発、保守、配布が含まれます。既存のメンバーの承認があれば、誰でも組織に参加できます。ガバナンスのために、メンバーによって選出された委員会が設置されます。

Varnish-Cache 8.0 の主な革新:

  • クライアントからのリクエストを受け入れ、リクエストをバックエンドに渡し、応答をキャッシュする varnishd バックグラウンド プロセスは、キャッシュ不可としてマークされたオブジェクトの有効期間 (TTL) を決定するために「uncacheable_ttl」パラメータを実装します。
  • ban_any_variant パラメータのデフォルトは 0 に設定されており、一致するオブジェクト バリアントにのみブロック リストが適用されます。
  • 停止コマンドを発行すると、実行中のすべてのトランザクション (VCL ハンドラー) が完了を待機するようになりました。
  • 「param」を使用して VCL コードから一部のランタイム パラメータにアクセスするためのサポートが追加されました。 「」。
  • 「304 Not Modified」応答を生成するロジックをオーバーライドする機能を追加しました。
  • 非推奨のVMOD関数 std.real2integer()、std.real2time()、std.time2integer()、std.time2real() は削除されました。代わりに「std.integer(real=std.round(…), fallback=…)」または「std.integer(time=…, fallback=…」という構文を使用してください。format_rfc1123() 関数は cookie.format_date() に名前が変更されました。
  • VUT と varnishtest はクラッシュ後にスタック トレースを記録するようになりました。
  • varnishadm ユーティリティは「obj.last_hit」変数で更新されました。これを使用すると、長期間アクセスされていないオブジェクトをキャッシュから削除する処理を整理できます。
  • 新しい統計カウンタ VCP.ref_hit、VCP.ref_miss、transit_stored、および transit_buffered が varnishstat ユーティリティに追加されました。

出所: オープンネット.ru

DDoS 保護機能を備えた信頼性の高いサイト用ホスティング、VPS VDS サーバーを購入する 🔥 DDoS攻撃対策付きの信頼性の高いウェブサイトホスティング、VPS/VDSサーバーを購入しましょう | ProHoster