Wann sollten Sie Etags verwenden und nicht?

10

Ich habe mir gerade unsere Website auf WebPageTest.org angesehen und eine ihrer Empfehlungen zur Beschleunigung einer Website lautet:

ETag-Header sollten im Allgemeinen nicht verwendet werden, es sei denn, Sie haben einen expliziten Grund, sie zu benötigen

Ich habe mich gefragt, was das bedeutet. Bedeutet dies, dass statische Inhalte, von denen Sie wissen, dass sie sich nicht ändern, sie nicht haben sollten, oder bedeutet dies, dass Inhalte, von denen Sie wissen, dass sie sich regelmäßig ändern, sie nicht haben sollten, oder bedeutet dies, dass Sie sie nicht generell verwenden sollten, es sei denn, Sie haben eine spezifischer Bedarf.

Wenn es das letztere ist, wann ist der richtige Zeitpunkt, sie zu verwenden?

Django Reinhardt
quelle

Antworten:

11

Das Hauptargument, das ich gegen sie gesehen habe, ist, dass Dateien, die vielen Servern gemeinsam sind, vom Client immer wieder abgerufen werden müssen. Besser ist es, eine Versionszeichenfolge in den Namen der Datei selbst aufzunehmen.

Wenn Sie beispielsweise einen Round-Robin-Lastausgleich für Ihre Webserver durchführen, generiert jeder Server ein eigenes ETag, wodurch der Client es mehrmals abruft.

Weitere Informationen finden Sie auf dem Blog der Yahoo High Performance Website. Die Zusammenfassung davon ist, dass Sie es zum Laufen bringen können, aber Sie haben die Zeit damit verbracht, es richtig zu konfigurieren.

Kyle Brandt
quelle
Dieser Link beantwortet fast meine Fragen, danke!
Django Reinhardt
5
tldr für den Blog-Artikel: Die Webserver enthalten die Inode-Nummer im ETag, wodurch sie für die Maschine eindeutig ist.
user123444555621
Ein bisschen spät, aber dies ist auch ein nützlicher (wenn auch alter) Artikel von Yahoo: web.archive.org/web/20120919000911/http://developer.yahoo.com/…
Django Reinhardt