原创 提高web性能之--使用JSON格式來進行數據交換

基本原理: JSON是一種輕量級的數據交換格式,採用完全獨立於語言的文本格式,是理想的數據交換格式。同時,JSON是 JavaScript原生格式,這意味着在 JavaScript 中處理 JSON數據不需要任何特殊的 API 或工具

原创 提高web性能之--減少對DOM的操作和訪問

基本原理: 對DOM操作的代價是高昂的,這在網頁應用中的通常是一個性能瓶頸。 天生就慢。在《高性能JavaScript》中這麼比喻:“把DOM看成一個島嶼,把JavaScript(ECMAScript)看成另一個島嶼,兩者之間以一座

原创 java性能優化開發之--適當的方法體長度

JVM一開始是以解釋方式執行字節碼的,當一個方法片段執行的一定次數時,就會 被動態優化編譯爲機器碼執行,速度大大加快,這就是所有的JIT編譯 在JVM默認的情況下,8k字節以上的方法無論執行多少次,始終是不會被編譯成機器碼執行 可以通過“

原创 提高web性能之--正確理解 Repaint 和 Reflow

基本原理: Repaint(重繪)就是在一個元素的外觀被改變,但沒有改變佈局(寬高)的情況下發生,如改變visibility、outline、背景色等等。 Reflow(重排)就是DOM的變化影響到了元素的幾何屬性(寬和高),瀏覽器

原创 提高web性能之--高效使用HTML標籤和CSS樣式

基本原理: HTML是一門用來描述網頁的一種語言,它使用標記標籤來描述網頁,作爲一名合格的前端開發,你有必要去知道其常用標籤代表的含義(SEO)和屬性(表現形式)。 CSS指層疊樣式表 (Cascading Style Sheets

原创 java性能優化設計之--消除靜態集合

在企業信息化系統中,由於操作系統的限制或爲了均衡gc的性能損耗,單個JVM進程常常被設置爲1.5-2.0G之間, 也就是說無論硬件擁有多大內存,單個java進程能用的內存是有限的。 靜態變量在class的加載期間就會被初始化,然後被存儲

原创 提高web性能之--添加expires頭

頁面包含了大量的組件,可以使用expires頭將組件緩存下來 web服務器使用expires頭告訴web客戶端它使用一個組件的當前副本,直到制定的時間爲止。 但是expires嚴格要求客戶端和服務端的系統時間保持一致。  使用 cach

原创 提高 web 應用性能之 JavaScript 性能調優

簡介: JavaScript 是一個比較完善的前端開發語言,在現今的 web 開發中應用非常廣泛,尤其是對 Web 2.0 的應用。隨着 Web 2.0 越來越流行的今天,我們會發現:在我們的 web 應用項目中,會有大量的 JavaS

原创 java性能優化設計之--按需取數

取數,無論從DB,磁盤,還是緩存,只獲取自己需要的部分,取數代價比較高,系統處理耗費,傳輸佔用,內存消耗 獲取無用的數據是J2EE的大敵,對J2EE每個環節都造成浪費

原创 java性能優化開發之--使用靜態變量

在JVM中,靜態變量之存在一份,虛擬機在加載類的過程中對靜態變量進行了初始化,靜態變量存儲於code cache去,被所有的實例共享,避免了成員變量的多存儲, 減少jvm年輕代的GC頻率 靜態變量通常用於定義不會修改的值,通常和fina

原创 提高web性能之--使用內容發佈網絡

將組件服務器分離,如圖片,javascript,css發佈到CDN CDN 是一組分佈在多個不同地理位置的 web服務器。 服務器離用戶越近,訪問速度越快。

原创 java性能優化開發之--循環內進行代碼控制

循環內應: 減少對象創建 減少try catch 避免I/O資源的開關

原创 提高web性能之--減少http請求

80%的時間是下載組件 css sprites 將圖片合併,減少http請求,用css 的background-position 來制定圖片的偏移量 內聯圖片 使用data:url 內聯圖片,不需要額外的http請求 合併腳本和樣式表

原创 提高web性能之--將CSS和JS放到外部文件中引用,CSS放頭,JS放尾

基本原理: 注:這個是很基礎且必須遵循的知識點,可是爲了文章的完整性勉爲其難加進來吧,嘿嘿。 引入外部文件好處是顯而易見的,而且是項目稍稍複雜一點的時候就有必要了這樣做了。 易維護、易擴展,方便管理和重複利用。 正確的方式:

原创 提高web性能之--壓縮組件

請求中使用accept-encoding來表示對壓縮的支持 例如:accept-encoding: gzip,deflate web服務器通過 content-encoding來通知web客戶端 壓縮 js,css,json文本 不應該