版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、頁面靜態(tài)化技術(shù)第 1 章大型和他 11.1判斷大型的標(biāo)準(zhǔn)..41.1.5大型..4Pv(page views)1IP1UV1同時人數(shù)1數(shù)據(jù)庫(表)大小 T1以及常用的解決方案1架構(gòu)使用分層結(jié)構(gòu),同時使用服務(wù)器集群1Web 吞吐瓶頸的其它解決方法2數(shù)據(jù)庫瓶頸其它解決方法2使用緩存技術(shù)31.2第 22.12.2頁面靜態(tài)化技術(shù)4頁面靜態(tài)化的基本原理4幾個重要概念4章.22.2.3靜態(tài)4址5偽靜態(tài)52.3頁面靜態(tài)化的分類.2測試.22.4.3從形式看5從范圍看6效率的工具 AB.EX
2、E6基本用法6快速入門6如何調(diào)整最大并發(fā)數(shù)62.4 如何確定你的 apache 是使用什么 mpm7一些 SEO 的小建議92.5第 第 44.14.2頁面靜態(tài)化具體實現(xiàn)12的緩存機(jī)制12章關(guān)于在服務(wù)器的緩存機(jī)制的小結(jié)12看看 OB 緩存的幾個函數(shù)12管理系統(tǒng)15界面設(shè)計15數(shù)據(jù)庫設(shè)計15章4.34.4程序框架圖15實現(xiàn)階段16第 1 章判斷大型大型和他1.1的標(biāo)準(zhǔn)1.1.1Pv(page views)Page view 就是頁面: 一個在一天內(nèi),所有頁面被瀏覽的次數(shù)綜合.,上千萬的pv 值,百萬級的也勉強(qiáng)可以算.1.1.2IP一天內(nèi),有多少個獨立IP 來, 一般說 10
3、萬以上.1.1.3UVUv(unique visitor)獨立訪客.1.1.4同時人數(shù)同時人數(shù)超過 1 萬=并發(fā)1.1.5數(shù)據(jù)庫(表)大小 T表上T 就算是一個大表1.2大型以及常用的解決方案1.2.1架構(gòu)使用分層結(jié)構(gòu),同時使用服務(wù)器集群1.2.2Web 吞吐瓶頸的其它解決方法對數(shù)據(jù)進(jìn)行壓縮傳輸. Gzip 來壓縮, 這里可以通過配置apache 解決這個問題,這個后面會演示.盡量合理的優(yōu)化的大小., jpg,gif, 盡量使用背景圖, 盡量使用小圖.買帶寬(花錢 ) 1*2m*3000000*60=36000001.2.3數(shù)據(jù)庫瓶頸其它解決方法表的設(shè)計要合理, 符號 3NF, 為了防止數(shù)據(jù)冗
4、余創(chuàng)建適當(dāng)索引(主鍵索引|唯一索引|普通索引|全文索引|空間索引)創(chuàng)建使用的過程和觸發(fā)器,視圖優(yōu)化my.ini 配置 insert優(yōu)化本身sql 語句o 表名 values(,) values(“,”);分表技術(shù)(把一個海量表分成幾個小表, 水平分割,垂直分割)硬件和升級(64 位,使用 64)1.2.4使用緩存技術(shù)因為程序的執(zhí)行速度 內(nèi)存文件數(shù)據(jù)庫 ,如果可以減少對數(shù)據(jù)庫的訪問,這樣對的負(fù)載有提高, 分 文件緩存, 內(nèi)存緩存頁面靜態(tài)化Memcached 緩存技術(shù)(Redis)第 2 章頁面靜態(tài)化技術(shù)技術(shù)在什么地方使用傳統(tǒng)的方法解決不方便基本原理(基本用法)快速入門案例看細(xì)節(jié)(使用陷阱,怎樣使
5、用在是正確)實際案例項目2.1頁面靜態(tài)化的基本原理看一個實際的案例:2.2幾個重要概念2.2.1:靜態(tài)比如:就是靜態(tài).特點: 1. 不操作數(shù)據(jù)庫,因此速度快 2. 不接收參數(shù),因此安全性比較高,放在sql 注入loginAction.?Extarac($_GET);$id=isset($id)& is_numeric($id)? $id:0; If($id=0)Die(參數(shù)有誤);/對$id 要驗證. 1. 正則表達(dá)式(重點) 如何驗證 id 必須是一個整數(shù),不能以 0 開頭/1-9d*$/2. is_函數(shù). 這里我在強(qiáng)調(diào)一把,對sql 語句一定有過濾機(jī)制Union load_file out
6、file sleep benark表名 where id=$id”;$sql=”selectpwd,uname3. 利于 SEOfrom2.2.2址比如特點: 1.一般說,會操作數(shù)據(jù)庫, 速度慢注意 3. 不利于seo2. 接收參數(shù),所以有安全性問題,注意sql2.2.3偽靜態(tài)比如 :們希望這個&class=sport&id=2在實際開發(fā)中,我是這樣形式 HYPERLINK http:/l-sport-id2.html/ http:/l-sport-id2.html特點 1. 形式是是靜態(tài)收參數(shù),安全性較高 3.,但是實際是對應(yīng)一個動態(tài)地址,因此速度慢 2. 不接利于seo2.3頁面靜態(tài)化的分
7、類2.3.1從形式看真靜態(tài) , 把一個動態(tài)的頁面實實在在的對應(yīng)一個靜態(tài)頁面?zhèn)戊o態(tài) ,形式是是靜態(tài),但是實際是對應(yīng)一個動態(tài)地址2.3.2從范圍看全局靜態(tài), 這個頁面都是靜態(tài)的局部靜態(tài), 實現(xiàn)方法(1. 2. 使用 jquery 發(fā)出ajax 請求,然后服務(wù)器可以返回json, xml , 文本,然后瀏覽器得到數(shù)據(jù)后,在填充適當(dāng)位置)2.4測試效率的工具 ab.exe作用就是,可以測試頁面響應(yīng)速度的工具,同時可以測試最大并發(fā)人數(shù),這里可以講解 如何配置apache 最大并發(fā)數(shù), MPM 是什么?2.4.1基本用法cmdab.exe n 請求次數(shù) c 并發(fā)數(shù) 頁面的請求地址url2.4.2快速入門2
8、.4.3如何調(diào)整最大并發(fā)數(shù)默認(rèn)情況下,apache 最大并發(fā)是 150.步驟調(diào)整最大并發(fā)值, 首先確定當(dāng)前的apache 使用什么 MPMMpm(多路處理模塊), 通俗的說: apache 處理并發(fā)請求的方式., 了解.Perfork 原理說明:prefork 的工作原理是, 控制進(jìn)程在最初建立“StartServers”個子進(jìn)程后,為了滿足 MinSpareServers 設(shè)置的需要創(chuàng)建一個進(jìn)程,等待一秒鐘,繼續(xù)創(chuàng)建兩 個,再等待一秒鐘,繼續(xù)創(chuàng)建四個如此按指數(shù)級增加創(chuàng)建的進(jìn)程數(shù),最多達(dá)到每秒 32 個,直到滿足 MinSpareServers 設(shè)置的值為止。這就是預(yù) 派生(prefork)的
9、由來.這種模式可以不必在請求到來時再產(chǎn)生新的進(jìn)程,從而減小了系統(tǒng)開銷以增加性能。Worker 原理說明:worker 的工作原理是, 由主控制進(jìn)程生成“StartServers”個子進(jìn)程,每個子進(jìn)程中包含固定的 ThreadsPerChild 線程數(shù),各個線程獨立地處理請求。同樣,為了不在請求到來時再生成線程,MinSpareThreads 和 MaxSpareThreads 設(shè)置了最少和最 多的空閑線程數(shù);而 MaxC nts 設(shè)置了所有子進(jìn)程中的線程總數(shù).如果現(xiàn)有子進(jìn)程中的線程總數(shù)不能滿足負(fù)載,控制進(jìn)程將派生新的子進(jìn)程。 如何確定你的apache 是使用什么mpmcmdhttpd.exe
10、l說明: 參看 mpm_.c 這里的就是你的 mpm 方式. 修改httpd.conf 文件.# Servool management (MPM specific)Include conf/extra/httpd-mpm.conf 修改httpd-mpm.conf 文件這里,修改成并發(fā) 1000ThreadsPerChild MaxRequestsPerChild這里,請各位注意, 你的機(jī)器能否是說一定就可以并發(fā) 100010000并發(fā)到 1000, 還有取決于你的機(jī)器的cup ,內(nèi)存,不 重啟apache,測試 800 并發(fā)ok? 如何配置的并發(fā)值,比較好 ,我給一個參數(shù), 如果中型,建議給
11、的 1500-2500 間.ThreadsPerChild MaxRequestsPerChild20001000Linux 下配置參考值:因為在 linux 下,一般說采用的 MPM 是 perfork 模式,看看如何配置.StartServers MinSpareServers MaxSpareServers MaxCnts MaxRequestsPerChild55101500#并發(fā)量#一個進(jìn)程對應(yīng)的線程數(shù),對 worker 更用.給大家一個合理的建議配置. 對大部分,中型,配置:StartServers MinSpareServers MaxSpareServers ServerLim
12、itMaxCnts5#預(yù)先啟動51025002000#最大空閑進(jìn)程#用于修改apache 編程參數(shù)#最大并發(fā)數(shù)MaxRequestsPerChild 500最佳: 首先計算的內(nèi)存占用 一個并發(fā) 200k*并發(fā)數(shù)=總內(nèi)存-必須占用內(nèi)存.課后練習(xí) 關(guān)于ab.exe 程序的其它使用方法可以參考手冊2.5一些 seo 的小建議:1.2.3.url 長度不要超過 255靜態(tài)頁面不要給參數(shù). meta 信息.name=description content=培訓(xùn),下載,4.5.如果希望被抓取前端頁面不要使用框架 frame framesetseo.到時第 3 章頁面靜態(tài)化具體實現(xiàn)實現(xiàn)頁面靜態(tài)化有兩種方法
13、1. 使用的ob 緩存機(jī)制 2. 使用模板來實現(xiàn).3.1看一段代碼:的緩存機(jī)制3.21.2.關(guān)于在服務(wù)器的緩存機(jī)制的小結(jié)在服務(wù)器端有程序緩存,這個緩存必須有,程序員不能關(guān)閉.服務(wù)器端可以開啟 ob 緩存,有兩個方法 * 通過 ob_start() 開啟,頁面生效 * 可以在.ini 的配置文件中啟用ob;打開ob 緩存output_buffering = 4096只在當(dāng)前3.如果你沒有打開ob 緩存,echo 數(shù)據(jù)直接放入到程序緩存,如果你打開,就先把echo 數(shù)據(jù)放入ob 緩存.4.執(zhí)行到最后時,系統(tǒng)把 ob 數(shù)據(jù)刷新到程序緩存,然后交給當(dāng)?shù)腶pache,并組成成http 響應(yīng)包,發(fā)送給瀏覽
14、器3.3看看 ob 緩存的幾個函數(shù)看程序 ob1.Ob2.第 4 章管理系統(tǒng)系統(tǒng)開發(fā)流程需求分析(需求分析師)-設(shè)計階段(項目經(jīng)理,架構(gòu)師,設(shè)計文檔 ) 實現(xiàn)階段( 程序員碼農(nóng))測試階段( 測試工程師)實施階段( 實施工程師)階段(), 使用原型開發(fā)4.1界面設(shè)計4.2數(shù)據(jù)庫設(shè)計表:create table news(idunsigned primary key auto_increment, /*/title varchar(128) not null,/*標(biāo)題*/ content varchar(256) not null,/*內(nèi)容*/filename varchar(32) /*該對應(yīng)的
15、靜態(tài)頁面*/ engine=MyISAM charset utf8;測試數(shù)據(jù)insertinserts (title,content) values(s (title,content) values(o1,o2,你好);你好);4.3程序框架圖畫出有多個個文件,文件之間調(diào)用關(guān)系是什么?4.4實現(xiàn)階段代碼 到此基本寫好,分析問題. 每次 查看某個信息,都會去查詢數(shù)據(jù)庫,需要頁面靜態(tài)化。 這里使用到ob 實現(xiàn)頁面靜態(tài)化。代碼這里newsList.showNews.對程序思考: 發(fā)現(xiàn)問題1.2.總是要一個人去數(shù)據(jù)庫的,可以這樣解決,如果修改了,根據(jù)目前的代碼是看不到我可以給靜態(tài)文件設(shè)置一個有效時間
16、30s, 每 30s 就讓代碼自動去更新靜態(tài)頁面, 這里通過增加下面一個條件,就解決問題的但是不滿意,所以想一個更好的方法.:在管理員添加,修改,刪除某個時,就直接修改對應(yīng)的靜態(tài)頁面,這樣處理更好,這里會使用模板替換技術(shù)-修改程序框架圖整理代碼:newsList.addNews.html添加newion.,顯示.處理添加,修改,刪除模板文件 news.tmp對程序再思考1.在創(chuàng)建靜態(tài)頁面的時候,使用分目錄來存放,年/月日/靜態(tài)頁面, 怎么把這個的靜態(tài)頁面名包括路徑下來.2. 思路 分析示意圖給大家.首頁面靜態(tài)化來實現(xiàn)一下:整理代碼:前端全部是靜態(tài)頁,全部是靜態(tài)生成!:login.html 登錄
17、界面,自己寫loginAction.manage.驗證用戶.管理頁面addNews.htmlnewion.處理.news.tmp 模板文件沒有變化 ,newsList.頁面,用于生成index.html說明: 在cms 系統(tǒng), 將來模板會復(fù)雜些,但是整體的流程是這樣的.4.5真靜態(tài)的優(yōu)缺點分析優(yōu)點: 1. 利于seo 2. 生成一個靜態(tài)頁,因此不用查詢數(shù)據(jù)庫,速度快. 3. 不接受參數(shù),安全性高.缺點: 如果數(shù)據(jù)庫信息海量,那樣就會生成海量的靜態(tài)頁面,占用大量的磁盤空間。大家可以通過分目錄存放來解決查找靜態(tài)頁速度慢.哪些不適宜使用真靜態(tài).1.2.如果網(wǎng)頁數(shù)據(jù)變化非常頻繁, 不要使用真靜態(tài). 比如: 基金 ,黃金報價.如果數(shù)據(jù)庫信息海量,同時你生成靜態(tài)頁后,查看靜態(tài)頁次數(shù)很少,比如 電信,移動的話費查詢系統(tǒng). , 不要使用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖北省武漢市2024年中考一模數(shù)學(xué)試題含答案
- 遼寧大學(xué)《公共政策理論與應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 黃河交通學(xué)院《藝術(shù)實踐(2)》2023-2024學(xué)年第一學(xué)期期末試卷
- 江蘇海事職業(yè)技術(shù)學(xué)院《建筑工程進(jìn)度控制》2023-2024學(xué)年第一學(xué)期期末試卷
- 【物理】第七章 力 章末練習(xí) 2024-2025學(xué)年八年級下冊人教版物理
- 黑龍江財經(jīng)學(xué)院《醫(yī)藥學(xué)術(shù)推廣綜合實訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶三峽職業(yè)學(xué)院《大數(shù)據(jù)與數(shù)據(jù)分析》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶城市管理職業(yè)學(xué)院《消防工程綜合》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江育英職業(yè)技術(shù)學(xué)院《裝飾工程制圖及AutoCAD應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 體現(xiàn)漢字文化的有趣漢字故事
- 建筑工地節(jié)前停工安全檢查表
- 三年級下冊小猿口算題1000道
- QUALITY MANUAL質(zhì)量手冊(英文版)
- 決策的藝術(shù)課件
- 國際經(jīng)濟(jì)學(xué)國際貿(mào)易的標(biāo)準(zhǔn)理論
- 8D報告培訓(xùn)教材(PPT 47頁)
- -居民死亡醫(yī)學(xué)證明(推斷)書
- 糖尿病酮癥酸中毒病例討論-文檔資料
- 液相色譜質(zhì)譜質(zhì)譜儀LCMSMSSYSTEM
- 民辦非企業(yè)單位章程核準(zhǔn)表-空白表格
- 派克與永華互換表
評論
0/150
提交評論