freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

讓javascript跑得更快-全文預(yù)覽

2025-09-08 17:00 上一頁面

下一頁面
  

【正文】 器發(fā)出請(qǐng)求。當(dāng)然,我們還可以改變配置,讓etag的生成只取決于文件大小,但這就意味著如果文件內(nèi)容變了而大小沒變,etag也不會(huì)變。很不幸,這導(dǎo)致了另一個(gè)問題(一樣能影響ifmodified since)。這很好,也是采用平衡負(fù)載的原因。在下載文件之前,瀏覽器會(huì)發(fā)送一個(gè)HEAD請(qǐng)求去檢查文件的etag。使用這個(gè)機(jī)制,能夠避免重復(fù)發(fā)送文件給瀏覽器,不過仍然導(dǎo)致了一個(gè)HTTP請(qǐng)求的消耗。 這樣,對(duì)于我們不想緩存的內(nèi)容來說已經(jīng)行了。 永遠(yuǎn)是改動(dòng)過的 header(LastModified: .gmdate(D, d M Y H:i:s). GMT)。在php中,以下兩行命令可以做到:?php header(CacheControl: private)。緩存是好東西當(dāng)用戶代理(如瀏覽器)向服務(wù)器請(qǐng)求一個(gè)資源時(shí),第一次請(qǐng)求過后它就會(huì)緩存服務(wù)器的響應(yīng),以避免重復(fù)之后的相同請(qǐng)求。命令如下:?php perl 做完這些簡(jiǎn)單的純文本優(yōu)化工作后,我們就能減少數(shù)據(jù)傳輸量多達(dá)50%了(這個(gè)量取決于你的代碼格式,可能更多)。 去除開始大括號(hào)后的空格 $data =~ s!。 去掉注釋 $data =~ s!s+! !g。open F, $ARGV[0] or die Can‘t open source file: $!。與javascript相比,css文件的壓縮相對(duì)簡(jiǎn)單一些。它使用rhino(mozilla的javascript引擎,是用java實(shí)現(xiàn)的)建立一個(gè)解析樹,然后將其提交給文件。不幸的是,大多數(shù)腳本效果并不理想,要么壓縮率相當(dāng)?shù)停茨撤N情形下會(huì)把代碼搞得一團(tuán)糟(或者兩者兼而有之)。(thincat友情提示:盡管壓縮存在一些瀏覽器不兼容的現(xiàn)象,由于這些不能很好的支持壓縮的瀏覽器數(shù)量現(xiàn)在已經(jīng)非常少了,我認(rèn)為這種由于瀏覽器導(dǎo)致的壓縮不正常的情況可以忽略不計(jì)。這還算簡(jiǎn)單的。?php mod_gzip_update_static Yes 可惜,事情沒那么簡(jiǎn)單。需要壓縮的文件通常很少(用不著壓縮圖片,因?yàn)椴⒉荒軠p小更多體積),只有css和js文件(和其他未壓縮的靜態(tài)內(nèi)容)。對(duì)于apache 1的用戶來說,可以建立一塊ram磁盤,讓mod_gzip在它上面寫臨時(shí)文件。但是,mod_gzip的工作方式是這樣的:先在磁盤上創(chuàng)建一個(gè)臨時(shí)文件,然后發(fā)送(給客戶端),最后刪除這個(gè)文件。它的原理很簡(jiǎn)單:瀏覽器請(qǐng)求資源時(shí),會(huì)發(fā)送一個(gè)header表明自己能接受的內(nèi)容編碼。采用這個(gè)方法,大多數(shù)頁面只需下載兩個(gè)css文件,而其中一個(gè)(指主樣式表)在頁面第一次請(qǐng)求時(shí)就會(huì)緩存。這樣就只有一個(gè)配置文件,避免了同步問題。 } $files = array_keys($files)。 $GLOBALS[‘config‘][‘js_source_map‘] = array( ‘‘ = ‘‘, ‘‘ = ‘‘, ‘‘ = ‘‘, )。這個(gè)例子里,因?yàn)樗鼈儙缀蹩偸且黄鹣螺d。在開發(fā)環(huán)境下,為使條理清晰,代碼可以分散為多個(gè)邏輯部分(logical ponents)。)替代方案是個(gè)折中的辦法:把css和js資源分散成多個(gè)子文件,按功能劃分、保持文件個(gè)數(shù)盡可能少。如果為了隨后頁面下載得更快而讓初始頁面下載得很慢,我們將發(fā)現(xiàn)更多用戶根本不會(huì)傻等著再去打開下一個(gè)頁面。也就是說,這段時(shí)間內(nèi)用戶在頁面上看不到圖片。每個(gè)請(qǐng)求都會(huì)在客戶端和服務(wù)器兩邊有個(gè)建立和消除的過程,導(dǎo)致請(qǐng)求和響應(yīng)header帶來開銷,還有服務(wù)器端更多的進(jìn)程和線程資源消耗(可能還有為壓縮內(nèi)容耗費(fèi)的cpu時(shí)間)。只需少許工作量,我們就能建立一舉多得的環(huán)境:它使開發(fā)變得簡(jiǎn)單,有極佳的終端性能,也不會(huì)改變現(xiàn)有的工作方式。而一旦改動(dòng),就需要客戶端重新下載,使本地緩存無效(保存在其他緩存里的版本也是如此)。建立了號(hào)稱“Web ”的應(yīng)用,也實(shí)現(xiàn)了富內(nèi)容(rich content)和交互,我們期待著css和javascript扮演更加重要的角色。我們會(huì)告訴你怎樣使這些應(yīng)用又快又靈。跟圖片相比,其源代碼很有可能頻繁改動(dòng)。所以我們青睞于那些能讓系統(tǒng)自動(dòng)處理優(yōu)化難題的方法。雖然代碼總字節(jié)數(shù)沒變,卻避免了多個(gè)HTTP請(qǐng)求造成的開銷。這就意味著,在我們等待下載2個(gè)js文件的同時(shí),將無法下載圖片資源。如果(不這么做,而是)把大塊內(nèi)容變成多個(gè)文件,下載開銷就分散到了多個(gè)頁面,同時(shí)緩解了會(huì)話中的速度壓力(或完全避免了某些開銷,這取決于用戶選擇的路徑)。分解之道(看來合并成大文件不太合適。對(duì)于有著不同開發(fā)和產(chǎn)品環(huán)境的應(yīng)用來說,用些簡(jiǎn)單的技術(shù)可以讓代碼更好管理。然后我們就命令build過程(build process)去把確定的文件合并起來。在build過程合并文件之后用這個(gè)圖找到j(luò)s的源文件。 foreach (explode(‘,‘, $args[‘files‘]) as $file){ $files[$GLOBALS[‘config‘][‘js_source_map‘][$file]]++。想更進(jìn)一步的話,可以把合并過程(merge process)寫在php里,然后使用同一個(gè)(合并文件的)配置去執(zhí)行。一個(gè)主樣式表控制應(yīng)用的所有樣式表,多個(gè)子樣式表控制不同的應(yīng)用區(qū)域。壓縮談到資源壓縮,大多數(shù)人馬上會(huì)想到mod_gzip(但要當(dāng)心,mod_gzip實(shí)際上是個(gè)魔鬼,至少能讓人做惡夢(mèng))。也算差強(qiáng)人意。它采用更合理的方式:在內(nèi)存里做壓縮。如果把壓縮添加在build過程,它就很透明了。不過在此之前,必須確認(rèn)apache有正確的權(quán)限去創(chuàng)建和覆蓋壓縮文件。所以要在服務(wù)器端探測(cè)代理類型,(如果是Netscape 4,就要)讓它們得到未壓縮的版
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1