一、靜態網頁資源
1.靜態網頁資源介紹
在網頁設計上,純粹HTML格式的網頁(可以包含圖片、視頻、JS(前端功能實現)、CSS(樣式)等)通常被稱為“靜態網頁”,早期的網站大多都是靜態網頁制作的。靜態網頁是相對于動態網頁而言的,是指沒有后臺數據庫、不含程序(如php、jsp、asp)和可交互的網頁。
2.靜態網頁資源特點
靜態網頁資源的特點是,開發者編寫的是什么,它顯示的就是什么、一旦編寫完成,就不會有任何改變。靜態網頁的維護和更新相比較麻煩,每個不同的網頁都需要單獨編輯更新,靜態網頁一般適用于更新較少的宣傳展示型網站,是早起(2000年以前)很多中小網站展示的形式。
靜態網頁資源的對應程序及資源文件的常見擴展名為:
純文本類程序或文件:如htm、html、xml、shtml、js、css等。
圖片類文件或數據文檔,如jpg、gif、png、bmp、txt、doc、ppt等。
視頻類流媒體文件,如mp4、swf、avi、wmv、flv等。
靜態網頁資源有幾個重要的特征:
(1)每個頁面都有一個固定的URL地址,且URL一般以.htm、.html、.shtml等常見形式為后綴,而且地址中不含有問號“?”或“&”等特殊符號。
(2)網頁內容一經發布到網站服務器上,無論是否有用戶訪問,每個網頁的內容都是保存在網站服務器文件系統上的,也就是說,靜態網頁是實實在在保存在服務器上的文件實體,每個網頁都是一個獨立的文件。
(3)網頁內容是固定不變的,因此,容易被搜索引擎收錄(容易被用戶找到)(優點)
(4)網頁沒有數據庫的支持,在網站制作的維護方面工作面比較大,因此當網站信息很大時完全依靠靜態網頁制作的方式比較困難(缺點)。
(5)網頁的交互性較差,在程序功能實現方面有較大的限制(缺點)。
(6)網頁程序在用戶瀏覽器端解析,并且不需要讀取數據庫,因此服務器端可以接受更多的并發訪問。當客戶端向服務請求數據時,服務器直接把數據從磁盤文件系統上返回(不作任何解析),待客戶端拿到數據后,在瀏覽器端解析展現出來(優點)。
3.靜態網頁語言
常見的靜態網頁語言有html、js、css、xml、shtml等。
二、動態網頁資源
1.動態網頁資源介紹
所謂的動態網頁是與靜態網頁相對而言的,也就是說,動態網頁的URL后綴不是.htm、.html、.shtml、.xml、.js、.css等靜態網頁常見的后綴擴展名形式,而是以.asp、.aspx、.php、.js、.do、.cgi等形式作為后綴的,并且一般在動態網頁網址中會有標志性的符號——“?,&”,此外,在大多數情況下后綴都需要有數據庫的支持等。
2.動態網頁資源特點
(1)網頁擴展名后綴常見為:.asp、.aspx、.php、.jsp、.do、.cgi等。
(2)網頁一般以數據庫技術為基礎,大大降低了網站維護的工作量。
(3)采用動態網頁技術的網站可以實現更多的功能,如用戶注冊、用戶登錄、在線調查、投票、用戶管理、訂單管理、發博文等 。
(4)動態網頁并不是獨立存在于服務器上的網頁文件,當用戶請求服務器上的動態程序時,服務器解析這些程序并可能讀取數據庫返回一個完整的網頁內容。
(5)動態網頁中的“?”在搜索引擎的收錄方面存在一定的問題,搜索引擎一般不會從一個網站的數據庫中訪問全部網頁,或者出于技術等方面的考慮,搜索蜘蛛一般不會去抓取網址中的“?”后面的內容,因此在企業通過搜索引擎進行推廣時,需要針對采用動態網頁的網站做一定的技術處理(偽靜態技術),以便適應搜索引擎的抓去要求。
(6)程序在服務器端解析,這相當于顧客點餐,飯店廚師做飯做菜,耗時長,效率低。由于程序在服務端解析,因此,會消耗大量的CPU和內存、I/O等資源,并且多數還要讀取數據庫等服務,因此,其訪問效率遠不如靜態網頁。
(7)在服務端解析動態程序的服務常見的有PHP引擎,Java容器(Tomcat、resin、Jboss、weblogic)。
三、偽靜態網頁
1.偽靜態網頁介紹
偽靜態就是某些技術把動態網頁的URL地址偽裝成靜態網頁URL地址,但實質上用戶訪問的還是動態網頁,只不過給用戶看起來URL地址是符合靜態網頁地質特征的,因此,用戶及某些搜索引擎會誤認為是靜態網頁。
2.偽靜態網頁特點
從網站的URL地址看,偽靜態表面上看起來是靜態內容,這是通過rewrite規則來實現的URL地址重寫。改寫后的URL地址規范、美觀,有利于搜索引擎抓取,以及提升用戶訪問體驗。從表面看,兩個地址都是偽靜態的,因為偽靜態網頁還是動態網頁,從性能上考慮,偽靜態功能不但沒有提升網站性能,反而會降低網站的性能。
3.偽靜態網頁作用
由于搜索引擎無法正確讀取帶參數的動態網頁內容,造成網頁中很多具有豐富信息的頁面無法被搜索引擎收錄,因此才有了偽靜態技術,它的作用是把動態網頁URL改成靜態網頁的URL,雖然同樣是消除了動態網頁中的參數,但是并不需要生成任何網頁,僅僅是改變了網頁地址路徑,找我養的主要目的有兩個,一是讓搜索引擎收錄網站內容,實現更多的用戶訪問企業網站內容,二是提升用戶訪問體驗,動態地址帶特殊符號等的URL看起來也不知道看著靜態網頁地址舒服。
4.偽靜態網頁的缺點
動態網頁偽裝靜態網頁,雖然可以讓搜索引擎收錄,并且可以提升用戶訪問體驗,但偽靜態網頁并不能提示我那個網站的訪問效率性能,從理論上說還會降低網站的性能,沒有動態轉靜態網頁效率高,但是對于一些并發不是超大的情況來說,或者是硬件資源充足的情況來說偽靜態還是一個不錯的實用功能,因為,要把動態網頁真正轉成靜態網頁,不是一朝一夕的事,需要技術團隊同力配合才能行。
現在很多的大型網站都采用了動態網頁生成靜態網頁的技術,消除動態網頁中的參數,使搜索引擎收錄更多的內容,達到優化網站的效果。當網站遇到訪問瓶頸時,如果有技術力量將動態網頁轉化成靜態網頁,那就再好不過了,但是,有些更新頻率很快的業務并不適合這么做,或者將動態轉為靜態有很大難度,這時就可以可考慮設置偽靜態了。
5.偽靜態網頁小結
利用rewrite技術將動態偽裝成靜態網頁(URL地址改寫)。
便于搜索引擎收錄提升用戶訪問量以及用戶體驗。
訪問性能沒有提升,并且轉為偽靜態網頁會消耗資源,因此性能反而會下降。
如果為了性能,就盡可能將動態網頁轉換成真正的靜態網頁。
并發量不是很大或者動態更新過于頻繁的時候,用rewrite實現偽靜態也是不錯的。
偽靜態網頁的實現過程,一般是由運營產品提出要求,開發和運維共同實現的。
四、生產Web架構優化實戰方案
1.門戶新聞業務
新聞的特點是一旦發布完成,幾乎不會再改動網頁內容。因此,對于新聞業務內容的靜態化相比較簡單。
第一步:程序要支持發布動態內功轉成靜態功能。
第二步:運營編輯人員發布新聞網頁(內容進數據庫,圖片、視頻進入存儲)后,后臺程序立刻將動態網頁生成靜態文件。
第三部:運維人員通過發布或事件觸發把運營編輯生成的靜態網頁發布到時間搭建好好的公司緩存集群服務器上,或者把靜態內容同步到購買的全國所有CDN服務器節點上,然后,再提供給用戶訪問瀏覽。
2.視頻網站業務
視頻網站和新聞網站類似,特點都是一旦發布完成,幾乎不會再改動網頁內容。因此,實現視頻業務網站高效訪問也很簡單。
以優酷視頻網為例,用戶在上傳視頻時,需要經歷轉碼—>審核的過程(大約一個小時),然后一些熱點視頻也可能會被提前推送同步到CDN的核心節點或全國所有CDN服務器節點,用戶訪問時才會更快。
3.Blog/BBS/SNS/微博社區業務/電商(如淘寶、京東)
五、網站流量度量術語
1.IP(Internet Protocol)
這里指獨立的IP數,獨立IP書是指不同IP地址的計算機訪問網站時被計算的總次數。獨立IP是衡量網站流量的一個重要指標。一般一天內相同IP地址的客戶端訪問網站頁面只被計算一次,記錄獨立IP的時間可為一天過一個月,目前通用的標準為“一天”。
獨立的IP地址不是很準確,卻是IT技術人員比較關心的一個衡量網站的指標。
2.PV(Page View)
中文翻譯為頁面瀏覽,即頁面瀏覽量或點擊量,不管客戶端是不是相同,也不管IP是不是相同,用戶每次訪問一個網站頁面都會被計算一個PV。
用PV衡量網站時,PV數反映的是瀏覽某網站的頁面數量,每刷新一次頁面也算一次。因此,可以說PV數與來訪用戶的數量成正比,但PV數并不是真正的頁面來訪者數量,而是網站被訪問的頁面數量,因為一個來訪者可能產生多個PV。
3.UV(Unique Visitor)
UV(獨立訪客),同一臺客戶端(PC或移動端)訪問網站被計算為一個訪客,一天內相同的客戶端訪問同一個網站只計算一次UV。UV一般是以客戶端Cookie等技術作為統計依據的,實際統計會有誤差。
考慮到一臺客戶端電腦可能會有多人 使用的情況,因此,UV(獨立訪客)實際上并不一定是獨立的自然人訪問。
六、企業網站對IP、PV、UV的度量
1.對IP的度量:
分析所有的Web服務器的訪問日志,對IP地址去重后技術,這是IT人員的基本計算手段。
在網站額每一個頁面結尾,嵌入JS等統計程序代碼,待用戶加載網頁后,IP即傳給統計IP的服務器,這種方法一般被第三方統計公司或企業內部開發日志分析程序時使用。
用第三方大家比較信任的統計工具例如:谷歌的統計(GA)。
IP的統計方法簡單、易用,因此,成為了多數網站衡量網站流量的重要指標之一。
2.對PV的度量:
分析Web服務的訪問日志(需要排除js、css及各種圖片的 日志信息),只計算HTML、PHP結尾等頁面數量。
在網站的每一個頁面結尾,嵌入JS等統計程序代碼,待用戶加載網頁后,訪問數量即傳給統計PV服務器,這種方法一般被第三方公司或企業內部開發日志分析程序時使用。
用第三方大家比較信任的統計工具例如:谷歌的統計(GA)。
3.對UV的度量:
通過客戶端HTTP請求報文分析
通過Cookie鑒別
UV的度量相對IP和PV來說,不但麻煩,而且要開發比較復雜的程序系統才能得到期望的結果,因此,在Linux運維領域大家提及的較少,一般企業級運營人員可能會關注網站的UV。