国产女人喷水流白浆视频网站_日韩精品无码熟人妻色网视频_黄网在线观看视频国产9999_亚洲首页一区二区三区_国产尤物视频在线观看网站_免费国产一级片内射日本欧州_久久???级毛片免费看_huyaav最新永久网址发布页_欲求不満の人妻松下纱荣子_天堂网站www天堂资源在线

資訊

手機(jī)用華為 ? 推廣找展為

十年專注 提供有品質(zhì)的服務(wù) 15831995993

石家莊裕華區(qū)網(wǎng)站制作公司

專注:石家莊網(wǎng)站制作 | 咨詢 13933871212(同微信) 2020-12-12 14:13:55

石家莊裕華區(qū)網(wǎng)站制作公司我們是否發(fā)送響應(yīng)?通過流傳輸,在初始導(dǎo)航請求期間呈現(xiàn)的HTML可以充分利用瀏覽器的流HTML解析器。
您是否傳送回應(yīng)?
常常被遺忘和被忽視的,流的讀取或?qū)懭霐?shù)據(jù)的異步塊,其中只有一個子集的可能是內(nèi)存可在任何給定時間提供一個接口?;旧?,它們允許發(fā)出原始請求的頁面在第一塊數(shù)據(jù)可用時立即開始使用響應(yīng),并使用針對流進(jìn)行了優(yōu)化的解析器來逐步顯示內(nèi)容。
我們可以從多個來源創(chuàng)建一個流。例如,您可以讓服務(wù)工作者構(gòu)造一個流,其中外殼程序來自緩存,而主體來自網(wǎng)絡(luò),而不是提供一個空的UI Shell并讓JavaScript填充它。正如Jeff Posnick指出的那樣,如果您的網(wǎng)站制作應(yīng)用程序是由CMS驅(qū)動的,該CMS通過將部分模板拼接在一起來服務(wù)器呈現(xiàn)HTML,則該模型將直接轉(zhuǎn)換為使用流式響應(yīng),并在服務(wù)工作者(而不是服務(wù)器)中復(fù)制模板邏輯。杰克·阿奇博爾德(Jake Archibald)的“網(wǎng)絡(luò)流年”文章重點(diǎn)介紹了如何構(gòu)建它。性能提升非常明顯。
 
流傳輸整個HTML響應(yīng)的一個重要優(yōu)點(diǎn)是,在初始導(dǎo)航請求期間呈現(xiàn)的HTML可以充分利用瀏覽器的流HTML解析器。頁面加載后插入到文檔中的HTML塊(通過JavaScript填充的內(nèi)容很常見)無法利用此優(yōu)化。
 
瀏覽器支持?在Chrome,F(xiàn)irefox,Safari和Edge中獲得部分支持,從而支持所有現(xiàn)代瀏覽器都支持該API和Service Workers 。
 
考慮使您的組件具有連接意識。
數(shù)據(jù)可能會很昂貴,并且隨著有效負(fù)載的增加,我們需要尊重選擇訪問我們的網(wǎng)站或應(yīng)用程序時選擇節(jié)省數(shù)據(jù)的用戶。在保存,數(shù)據(jù)客戶端提示請求頭讓我們可以自定義應(yīng)用程序,并以具成本有效載荷和性能受限的用戶。實際上,您可以將對高DPI圖像的請求重寫為低DPI圖像,刪除網(wǎng)站制作字體,奇特的視差效果,預(yù)覽縮略圖和無限滾動,關(guān)閉視頻自動播放,服務(wù)器推送,減少顯示的項目數(shù)并降低圖像質(zhì)量,或者甚至改變您交付標(biāo)記的方式。蒂姆·韋里克(Tim Vereecke)發(fā)表了一篇關(guān)于數(shù)據(jù)平均(h)平均策略的非常詳細(xì)的文章 具有許多保存數(shù)據(jù)的選項。
當(dāng)前僅在Chromium,Android版Chrome或通過臺式機(jī)設(shè)備上的Data Saver擴(kuò)展程序支持標(biāo)頭。更后,您還可以使用Network Information API來根據(jù)網(wǎng)絡(luò)類型傳遞低/高分辨率圖像和視頻。網(wǎng)絡(luò)信息API和具體navigator.connection.effectiveType使用RTT,downlink,effectiveType值(和一些其他人),以提供連接的表示,并且用戶可以處理數(shù)據(jù)。
 
在這種情況下,Max Stoiber談到了連接感知組件,而Addy Osmani談到了自適應(yīng)模塊服務(wù)。。例如,使用React,我們可以編寫一個針對不同連接類型呈現(xiàn)不同內(nèi)容的組件。如Max所建議,新聞文章中的組件可能會輸出:
 
Offline:帶有alt文本的占位符,
2G/save-data模式:低分辨率圖像,
3G 在非視網(wǎng)膜屏幕上:中等分辨率的圖像,
3G 在Retina屏幕上:高分辨率Retina圖像,
4G:高清視頻。
Dean Hume使用服務(wù)工作者提供了類似邏輯的實際實現(xiàn)。對于視頻,我們可以默認(rèn)顯示視頻海報,然后在更好的連接上顯示“播放”圖標(biāo)以及視頻播放器外殼,視頻的元數(shù)據(jù)等。作為不支持的瀏覽器的備用,如果事件在2秒鐘內(nèi)未觸發(fā),我們可以監(jiān)聽canplaythrough事件并用于Promise.race()使源加載超時canplaythrough。
 
如果您想更深入一點(diǎn),這里有一些入門資源:
 
Addy Osmani展示了如何在React中實現(xiàn)自適應(yīng)服務(wù)。
React Adaptive Loading Hooks&Utilities提供了React的代碼片段,
Netanel Basel在Angular中探索了可感知連接的組件,
Theodore Vorilas分享了在Vue中使用Network Information API服務(wù)自適應(yīng)組件的工作方式。
考慮使您的組件設(shè)備知道內(nèi)存。
但是,網(wǎng)絡(luò)連接僅在用戶上下文方面為我們提供了一種視角。更進(jìn)一步,您還可以使用設(shè)備內(nèi)存API根據(jù)可用的設(shè)備內(nèi)存動態(tài)調(diào)整資源。返回設(shè)備有多少RAM(以GB為單位),四舍五入到更接近的2的冪。該API還具有報告相同值的“客戶端提示頭” 。navigator.deviceMemoryDevice-Memory
獎勵:Umar Hansa展示了如何通過動態(tài)導(dǎo)入來推遲昂貴的腳本,以基于設(shè)備內(nèi)存,網(wǎng)絡(luò)連接性和硬件并發(fā)性來改變體驗。
 
DevTools中的優(yōu)先級列
DevTools中的“優(yōu)先級”列。圖片來源:Ben Schwarz,關(guān)鍵請求
預(yù)熱連接以加快交付速度。
使用資源提示節(jié)省時間dns-prefetch(在后臺執(zhí)行DNS查找),preconnect(要求瀏覽器在后臺啟動連接握手(DNS,TCP,TLS)),prefetch(要求瀏覽器請求資源)和preload(它會在不執(zhí)行資源的情況下預(yù)取資源)。
還記得prerender嗎 資源提示用于提示瀏覽器在后臺構(gòu)建整個頁面以進(jìn)行下一次導(dǎo)航。實施方面的問題非常棘手,從巨大的內(nèi)存占用和帶寬使用到多個已注冊的分析命中數(shù)和廣告展示次數(shù),不等。
 
毫不奇怪,它已被棄用,但Chrome團(tuán)隊將其作為NoState Prefetch機(jī)制帶回了。實際上,Chrome會將prerender提示視為NoState預(yù)取,因此我們今天可以使用它。正如Katie Hempenius在那篇文章中解釋的那樣,“像預(yù)渲染一樣,NoState Prefetch會預(yù)先獲取資源;但是與預(yù)渲染不同,它不執(zhí)行JavaScript也不預(yù)先渲染頁面的任何部分。” NoState Prefetch僅使用?45MiB的內(nèi)存,并且將使用IDLENet Priority來獲取所獲取的子資源。從Chrome 69開始,NoState Prefetch會添加標(biāo)頭用途:對所有請求進(jìn)行預(yù)取,以使其與正常瀏覽區(qū)分開。
 
大多數(shù)時候,這些天,我們將使用至少preconnect和dns-prefetch,我們就可以用謹(jǐn)慎prefetch,preload和prerender; 僅當(dāng)您對用戶接下來需要哪些資產(chǎn)(例如,在購買渠道中)有信心時,才應(yīng)使用前者。
 
請注意,即使使用preconnect和dns-prefetch,瀏覽器在并行查找/連接的主機(jī)數(shù)量上也有限制,因此可以安全地根據(jù)優(yōu)先級對主機(jī)進(jìn)行排序(感謝Philip Tellis?。?。
 
實際上,使用資源提示可能是提高性能的更簡單方法,并且確實效果很好。什么時候使用什么?正如Addy Osmani解釋的那樣,更好預(yù)加載我們非常有信心將在當(dāng)前頁面上使用的資源。預(yù)取資源可能會用于將來跨多個導(dǎo)航邊界進(jìn)行導(dǎo)航,例如用戶尚未訪問的頁面所需的網(wǎng)站制作pack捆綁包。
 
Addy的文章“在Chrome中加載優(yōu)先級”顯示了Chrome如何正確解釋資源提示,因此,一旦確定了哪些資源對于渲染至關(guān)重要,就可以為其分配高優(yōu)先級。要查看請求的優(yōu)先級,可以在Chrome DevTools網(wǎng)絡(luò)請求表(以及Safari)中啟用“優(yōu)先級”列。
 
細(xì)分顯示了Chrome 46及更高版本如何在Blink中區(qū)分不同資源的優(yōu)先級
(圖片來源:Pat Meenan)(大預(yù)覽)
由于字體通常是頁面上的重要資產(chǎn),因此有時更好要求瀏覽器使用來下載關(guān)鍵字體 preload。但是,請仔細(xì)檢查它是否確實對性能有所幫助,因為在預(yù)加載字體時會優(yōu)先考慮優(yōu)先順序:正如preload人們所認(rèn)為的那樣,它可能會越過諸如關(guān)鍵CSS之類的更為關(guān)鍵的資源,就顯得尤為重要。(謝謝,巴里?。?/div>
 
您還可以動態(tài)加載JavaScript,有效地延遲執(zhí)行。另外,由于接受media屬性,因此您可以選擇根據(jù)查詢規(guī)則有選擇地對資源進(jìn)行優(yōu)先級排序@media。
 
需要牢記的一些陷阱:preload有利于移動資產(chǎn)的開始下載時間較接近初始請求,但預(yù)加載的資產(chǎn)位于與請求頁面相關(guān)的內(nèi)存緩存中。preloadHTTP緩存可以很好地發(fā)揮作用:如果HTTP緩存中已存在該項目,則永遠(yuǎn)不會發(fā)送網(wǎng)絡(luò)請求。
 
因此,它對于后期發(fā)現(xiàn)的資源,通過背景圖像加載的英雄圖像,內(nèi)聯(lián)關(guān)鍵CSS(或JavaScript)以及預(yù)加載其余CSS(或JavaScript)非常有用。同樣,preload只有在瀏覽器已從服務(wù)器接收到HTML并且超前解析器已找到preload標(biāo)簽后,標(biāo)簽才能啟動預(yù)加載。
 
通過HTTP標(biāo)頭進(jìn)行預(yù)加載可能會更快一些,因為我們不必等待瀏覽器解析HTML來啟動請求(盡管有人對此進(jìn)行了辯論)。早期的提示將有助于進(jìn)一步,使預(yù)緊力踢了HTML的響應(yīng)報頭被發(fā)送之前就(在路線圖鉻,火狐)。另外,優(yōu)先級提示將幫助我們指示腳本的加載優(yōu)先級。
 
當(dāng)心:如果您正在使用preload,則as 必須進(jìn)行定義或不加載任何內(nèi)容,加上不帶該 屬性的預(yù)加載字體會導(dǎo)致兩次獲取。crossorigin
 
使用服務(wù)人員進(jìn)行緩存和網(wǎng)絡(luò)后備。
網(wǎng)絡(luò)上的任何性能優(yōu)化都無法比用戶計算機(jī)上本地存儲的緩存快。如果您的網(wǎng)站通過HTTPS運(yùn)行,請使用“實用程序服務(wù)工作者指南”在服務(wù)工作者緩存中緩存靜態(tài)資產(chǎn),并存儲脫機(jī)后備(甚至脫機(jī)頁面),并從用戶的計算機(jī)中檢索它們,而不是去網(wǎng)絡(luò)。 。另外,請查看Jake的“離線食譜”和免費(fèi)的Udacity課程“離線網(wǎng)站制作應(yīng)用程序”。
瀏覽器支持?如上所述,它得到了廣泛的支持,無論如何,后備是網(wǎng)絡(luò)。它有助于提高性能嗎?哦,是的。而且它正在變得越來越好,例如通過Background Fetch允許服務(wù)人員后臺上傳/下載。
 
服務(wù)工作者有許多用例。例如,您可以實現(xiàn)“離線保存”功能,處理損壞的圖像,在選項卡之間引入消息傳遞或基于請求類型提供不同的緩存策略。通常,一種常見的可靠策略是將應(yīng)用程序外殼以及一些關(guān)鍵頁面(例如脫機(jī)頁面,首頁和其他可能對您重要的內(nèi)容)存儲在服務(wù)工作者的緩存中。
 
但是要記住一些陷阱。配備服務(wù)人員后,我們需要提防Safari中的范圍請求(如果您將Workbox用于服務(wù)人員,則它具有范圍請求模塊)。如果您偶然在DOMException: Quota exceeded.瀏覽器控制臺中發(fā)現(xiàn)錯誤,請參閱Gerardo的文章何時7KB等于7MB。
 
正如Gerardo所說:“如果當(dāng)服務(wù)工作者緩存從CDN提供的靜態(tài)資產(chǎn)時,如果您正在構(gòu)建一個漸進(jìn)式網(wǎng)站制作應(yīng)用程序,并且正在經(jīng)歷cache腫的緩存存儲,請確??缬蛸Y源存在正確的CORS響應(yīng)標(biāo)頭,那么您就不會緩存不透明的響應(yīng)與服務(wù)人員無意間,您可以通過將crossorigin屬性添加到標(biāo)簽來選擇跨域圖像資產(chǎn)進(jìn)入CORS模式。”
 
使用Service Worker的一個很好的起點(diǎn)是Workbox,這是專門為構(gòu)建漸進(jìn)式網(wǎng)站制作應(yīng)用程序而構(gòu)建的一組Service Worker庫。
 
多年短視頻拍攝剪輯運(yùn)營推廣經(jīng)驗

讓您每一分投入都有更多回報!

聯(lián)系展為,馬上獲得專屬免費(fèi)推廣方案

咨詢相關(guān)問題或預(yù)約面談,可以通過以下方式與我們聯(lián)系

業(yè)務(wù)熱線:15831995993 固定電話:0311-80836913 微信:9196389

15831995993 馬上咨詢