2017-08-16 24 views
-1

做了「BBC新聞」谷歌的可奇怪的是往往顯示錯誤的圖像旁邊的標題,例如目前我有一張Steve Bannon的照片,旁邊是「假日製造商死於...被捕獲在肽中」爲什麼谷歌嵌入圖片,樣式等,而不是使用鏈接

該圖像不是通過href,它使用src =「data:image ...」

的問題是,爲什麼谷歌把樣式,腳本和圖像直接在頁面而不是使用環節上,這似乎是更有效?

我不知道這是否有差別,但我後面的那一刻工作代理

爲了使這更多的是問題,可以上嵌入一個網站的好處有人供電環節一切,而不是使用鏈接

+1

這是關於加載時間和HTTP1如何工作(檢查他們爲什麼建SPDY或HTTP2如何運作) – NeeL

+0

它是通過數據大集中加載時間。 通過將所有內容放入頁面,客戶端將只從谷歌服務器下載所有內容。如果資源是從原始服務器鏈接的,則會有很多加載時間差異,因爲單個Google頁面結果包含具有不同服務器功能的多個網站。 –

+0

最後一點不確定。我假設所有的圖片,JavaScript等將託管在Google的服務器上,這些服務器都很快速,而緩存的可能性將是巨大的。實際頁面大小將是原始大小的一小部分。只是要清楚,我不是爭論,這是谷歌,我相信他們是正確的 – tony

回答

1

谷歌的主要目標是提供儘可能最快的經驗,所以你會更多地使用谷歌。他們希望以儘可能最快的方式將所有數據推送給您,因此您的瀏覽器不必使用單獨的HTTP請求來提取圖像。如果獲得HTML的初始往返時間是200ms,則請求圖像會再增加200ms左右,這僅僅是由於網絡往返時間所致。每個外部資源都增加了這種往返;即使它們在某種程度上並行化,也會顯着增加時間,直到頁面「完成」加載。

既然你可能只會看到在搜索結果中的圖像非常幾次(他們不是一成不變的,進一步的搜索,你會做很可能會導致不同的圖像),有任何實體緩存中沒有真正的需要該圖像以備後用。 Google已經構建了基礎架構,可以讓他們立即將該映像烘焙到HTML頁面中,並且不需要關心HTTP /代理緩存。幾乎所有的搜索都是通過HTTPS進行的,無法進行代理緩存。由於搜索結果非常多樣化,所以不同用戶的區域緩存可能並不是很多。

TL; DR:圖像被烘焙到HTML以消除網絡往返時間,以使頁面載入作爲即刻越好。

+0

我認爲https評論是真正的答案,因爲它阻止了瀏覽器和Google之間的任何基礎架構的緩存 – tony

相關問題