成人无码嫩草影院免费-三级黄舔b在线观看视频-日本精品中文一区二区-精产一二三区av成人免费

Internet Develppment
互聯(lián)網(wǎng)開發(fā)& 推廣服務(wù)提供商

我們擅長商業(yè)策略與用戶體驗(yàn)的完美結(jié)合。

歡迎瀏覽我們的案例。

首頁 > 新聞中心 > 網(wǎng)站建設(shè) > 正文

分享高性能網(wǎng)站構(gòu)架的7個方面

發(fā)布時間:2022-06-08 10:19:29來源:A5


圖片來自網(wǎng)絡(luò)/侵刪
  一、優(yōu)化網(wǎng)站響應(yīng)時間的架構(gòu)方案:

  網(wǎng)站能不能留的住用戶,一方面是看內(nèi)容,另一方面是看響應(yīng)時間。通常有以下幾個方式來降低網(wǎng)站響應(yīng)時間:

  1、減少HTTP請求。包括合并css和javascript。減少圖片數(shù)量,比如利用css的偏移技術(shù)來在一個圖片中選擇不同的位置內(nèi)容。利用瀏覽器的Cache功能,我們可以在頭中聲明是否被瀏覽器緩存。

  2、動態(tài)內(nèi)容靜態(tài)化。比如永久生成HTML文件。生成靜態(tài)文件并設(shè)定生存時間,到期后查詢新的動態(tài)內(nèi)容進(jìn)行替換。

  3、優(yōu)化數(shù)據(jù)庫。數(shù)據(jù)庫的性能對于項(xiàng)目整體性能中是重中之重。設(shè)計良好的Mysql比亂糟糟的Mysql性能高出N個數(shù)量級,更別論再引入NOSQL了,比如Redis,MongoDB。

  4、使用負(fù)載均衡。將請求合理的分發(fā)到更多服務(wù)器。

  5、使用緩存。把花費(fèi)時間和資源成本高昂的計算結(jié)果取出緩存起來,避免重復(fù)計算。比如在Mysql前面擋一層Memcached。比如生成一個文件,使用的時候include進(jìn)來。再比如PHP中的OPCACHE等。

  二、壓力測試的架構(gòu)方案:

  吞吐率是指單位時間內(nèi)處理的請求數(shù),單位reqs/s。最大吞吐率是指單位時間內(nèi)能夠處理的最大請求出。模擬足夠多的人數(shù)和并發(fā)請求來測試最大吞吐率的方法叫做壓力測試。比如Apache自帶的ab(Apache Bench)。ab的參數(shù)很多,常用的有請求數(shù)(-n),并發(fā)用戶數(shù)(-c),超時時間(-t),長連接(-k),附件一個Cookie(-c name=value)

  $ab -c 10 -n 1000 http://localhost/

  三、長連接的架構(gòu)方案 : 每次請求都需要TCP的三次握手,握手完比表示連接正式聯(lián)通,之后再發(fā)送數(shù)據(jù)。那么,把N個請求,就需要3N次握手,傳遞N次數(shù)據(jù),得到N次響應(yīng),總共5N。如果把N個請求合成一個請求,就是3次握手,1次傳遞數(shù)據(jù),1次返回響應(yīng),共5次。但是,有時候我們需要上一次響應(yīng)的返回結(jié)果來發(fā)送新一輪的請求,在這個時候,合并請求并不好實(shí)現(xiàn),這就需要長連接。使用起來很簡單,在頭中包含如下:

  Connection: Keep-Alive

  客戶端和服務(wù)器端都可以設(shè)置長連接的最大時間,當(dāng)兩者不統(tǒng)一時以小的一方為準(zhǔn)。開啟長連接后進(jìn)行壓力測試:

  發(fā)現(xiàn)提升不止三五倍。本機(jī)是提升了8倍的性能。

  四、提高M(jìn)ysql的響應(yīng)速度的架構(gòu)方案 : Handlerocker是日本的一位架構(gòu)師開發(fā)。Mysql的一種插件。Handlerocker實(shí)現(xiàn)了繞過Mysql的SQL解析層。在Mysql5.1以上版本可以使用,詳情可以查看Mysql手冊。這里就不在闡述。

  五、Mysql主從復(fù)制的架構(gòu)方案 : 在分布式部署中,1臺主庫,N臺從庫。主庫只寫,從庫只查。主庫從庫數(shù)據(jù)需要實(shí)現(xiàn)統(tǒng)一,這就是主從復(fù)制。

  優(yōu)點(diǎn)是: 1、從庫備份時,主庫可以繼續(xù)處理更新。

  2、優(yōu)化響應(yīng)時間。 3、增加健壯性。主庫掛了可以切換到從庫作為備份。 主從復(fù)制的實(shí)現(xiàn)過程有三步,1個在主庫,2個在從庫:

  1、主庫服務(wù)器將用戶對數(shù)據(jù)庫更新的操作以二進(jìn)制格式保存到Binary Log日志文件。然后Binlog Dump線程將Binary Log日志文件傳輸給從庫服務(wù)器。

  2、從庫服務(wù)器通過一個I/O線程將主庫服務(wù)器的Binary Log日志文件中的更新操作復(fù)制到一個叫做Relay Log中的中繼日志文件中。

  3、從庫服務(wù)器通過另一個SQL線程Relay Log中繼日志文件中的操作依次在本地執(zhí)行,從而實(shí)現(xiàn)主從數(shù)據(jù)庫之間數(shù)據(jù)的同步。 本篇只是簡單的列出方案,詳細(xì)的配置和實(shí)現(xiàn)步驟將在另一篇中寫到。

  六、代理的架構(gòu)方案 : 讀取內(nèi)存的速度是讀取硬盤的100000-1000000倍。把訪問過的頁面緩存在內(nèi)存中,下次直接從內(nèi)存中讀取,可以有效加速。 1、傳統(tǒng)代理??蛻舳税l(fā)送請求給代理服務(wù)器,代理服務(wù)器向WEB服務(wù)器取到數(shù)據(jù)并返回給瀏覽器。代理服務(wù)器就是一個有大的存儲空間的Cache。 2、反向代理。和傳統(tǒng)代理原理類似,只是使用對象不同。傳統(tǒng)代理的使用對象是客戶端,反向代理的使用對象是服務(wù)器。用戶通過反向代理訪問Web服務(wù)器,Web服務(wù)器是隱藏起來的。不過用戶不關(guān)心這些,權(quán)把代理服務(wù)器當(dāng)作真實(shí)的Web服務(wù)器。反向代理有Vamish。

  七、異步計算的架構(gòu)方案 : 比較耗時的比如將用戶上傳的文件分發(fā)到多臺機(jī)器,比如裁剪圖片,視頻轉(zhuǎn)碼等??梢允褂卯惒椒桨?。讓用戶無須等待計算結(jié)束而是先行返回結(jié)果。代表產(chǎn)品有和Memcache同一家的Gearman。關(guān)于Gearman的使用可以查看PHP手冊。

最新資訊
? 2018 河北碼上網(wǎng)絡(luò)科技有限公司 版權(quán)所有 冀ICP備18021892號-1   
? 2018 河北碼上科技有限公司 版權(quán)所有.
一区二中文字幕在线看国产一区 | 美女人的逼免费观看| 麻豆国产欧美一区二区三区r| 欧美日韩国产这里只有精品| 伊人久久亚洲婷婷综合久久| 骚逼被操视频拳交| 亚洲狠狠插狠狠搞狠狠摸| 市长含着秘书的奶头| 东京热无码AV一区二区三区| 国产尤物蜜臀AV| 国精品午夜福利视频导航| 最是人间烟火色在线播放| 被下药强奷到舒服的视频| 久久久久精品无码专区喝奶| 快速了解国产一级a爱片| 热精品韩国毛久久久久久| 啊啊啊好爽高潮啦| 韩国精品视频一区二区在线观看| 瓯美在线免费视频笫一区第二区| 亚洲国产综合精品 在线 一区| 操小骚逼高潮视频| 伊人久久久久久久久香港| 最新的精品亚洲一区二区| 成人毛片一级特黄| 尤物性生活午夜在线视频| 91精品国产综合久久久蜜| 91久久高清国语自产拍| 成人黄色精品久久app| 亚洲高清无遮挡在线观看| 国产午夜福利视频第三区| 女人被男人操到高潮视频| 大鸡吧插美女嫩逼| 中文字幕日韩亚洲| 欧美亚洲另类天天综合网| 久久69精品久久久久免| 中文字幕精品字幕一区二区三区| 日本欧美一区二区三区| 妓女综合网在线观看| 爆乳喷奶水无码正在播放| 欧美日韩综合在线一区| 人妻在线系列一区二区三|