Http 1.1 Etag と Last-Modified による PHP 効率の向上_PHP チュートリアル

WBOY
リリース: 2016-07-21 15:54:24
オリジナル
792 人が閲覧しました

ブログが人気の今日、一部の Web アプリケーションでは大量の RSS フィードを解析する必要があり、効率を向上させる方法は非常に重要な問題です。これは、MagpieRSS の機能にリストされています: HTTP 条件付き GETs Last-Modified と ETag を賢く使用して、帯域幅を節約し、ダウンロード時間を高速化します。 ここの Etag が私の注意を引きました。

Etagとは何ですか?

RFC 2616を読んで、Etagについて少し印象を持ちました:

ETag 応答ヘッダー フィールドは、要求されたバリアントのエンティティ タグの現在の値を提供します...エンティティ タグは通常「強力なバリデータ」ですが、プロトコルはエンティティ タグを「弱い」とタグ付けするメカニズムを提供すると考えることができます。強力なバリデーターはエンティティのビットが変更されるたびに変化するものであり、弱い値はエンティティの意味が変化するたびに変化します。あるいは、強力なバリデーターを特定のエンティティーの識別子の一部として考えることもできます。弱いバリデータは、意味的に同等のエンティティのセットの識別子の一部です。
上記のことから、Entity タグは本質的に「強力なバリデーター」であることが大まかにわかりますが、HTTP
プロトコルは Entity タグをタグ付けすることによって「弱い」メカニズムを提供します (

コンテンツ チェック コード と同様).この一節は後で 2 つの方法で説明されますが、まだ少しわかりにくいです。この文章を読んだ後、私は Etag の「E」が「Entity」を表していると結論付けました。 Magpie のホームページに記事が記載されていました:

RSS ハッカーのための HTTP 条件付き取得

それを読んだ後、より明確になりました。まず HTTP 条件付き GET の基本原理について説明します。それは非常に簡単です。つまり、Web サーバーからデータを取得するときに、ファイルが変更されていなければ、新しいファイルを渡すだけです。クライアントには変更がないことを伝えますが、ファイルを戻す必要はありません。これにより、ネットワーク帯域幅とリソースを大幅に節約できます。 Etag と Last-Modified は、HTTP

1.0 から HTTP

1.1 でのみ使用できる概念です。 Web サーバーからファイルを取得するときは、HTTP 応答ヘッダーの Etag フィールドと Last-Modified フィールドを読み取るだけで済みます。これら 2 つのフィールドの具体的な内容は気にしません (RFC は奇妙かもしれません。 2616 は Etag を気にしません(特定の値の定義はありません)、これら 2 つの値をローカルにキャッシュし、次回ファイルが更新されているかどうかを確認するときに 2 つの値を比較します。変化がない場合、サーバーの応答コードは HTTP 200 (OK) ではなく、304 になります。

上の写真のように。現在
OpenRSS
は40以上のフィードを購読していますが、応答速度は非常に良好です。 http.304.pngGregarius

(LilinaもETagを適用)を使用する過程で、FeedBurnrerによって書き込まれたほとんどすべてのフィードがEtagを使用していることがわかりました(そうしないとサーバーが麻痺する可能性があります、ほほ) もう一度HTTPをテストしましょうヘッダー。応答:そうです この期間中、ブログは更新されていませんでした。このようにして、Last-Modified と ETag は同じ値を返します。Gregarius は再解析する必要がありません。国内の GreatNews は

HTTP

条件付き GET をサポートしており、さらに良いことに gzip/deflate エンコードもサポートしています。 。別の RSS 読み取りツール POPU (Zhou Botong) については知りません。 上記は私のメモです。誤解がある場合は修正してください。

http://www.bkjia.com/PHPjc/318539.html
www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/318539.html技術記事ブログが普及している現在、一部の Web アプリケーションでは大量の RSS フィードを解析する必要があり、効率を向上させることが非常に重要です。これは MagpieRSS の機能に記載されています:...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!