成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何提高服務(wù)器并發(fā)處理能力,有這幾點(diǎn)我們要注意

2021-01-28    分類: 網(wǎng)站建設(shè)

什么是服務(wù)器并發(fā)處理能力

一臺(tái)服務(wù)器在單位時(shí)間里能處理的請(qǐng)求越多,服務(wù)器的能力越高,也就是服務(wù)器并發(fā)處理能力越強(qiáng)。

服務(wù)器的本質(zhì)工作就是,爭(zhēng)取以最快的速度將內(nèi)核緩沖區(qū)中的用戶請(qǐng)求數(shù)據(jù)一個(gè)不剩地都拿出來(lái),然后盡快處理,再將響應(yīng)數(shù)據(jù)放到一塊又能夠與發(fā)送數(shù)據(jù)的緩沖區(qū)中,接著處理下一撥請(qǐng)求。

而服務(wù)器并發(fā)處理能力,可以通過(guò)吞吐率來(lái)觀察,吞吐率,單位時(shí)間里服務(wù)器處理的大請(qǐng)求數(shù),單位req/s。可以利用Jmeter工具進(jìn)行測(cè)試服務(wù)器服務(wù)器并發(fā)處理能力。

例如服務(wù)器的性能,web程序的并發(fā)能力,代碼,數(shù)據(jù)庫(kù)等等,這里以一個(gè)Web程序?yàn)槔?,說(shuō)明一下提高服務(wù)器處理并發(fā)能力的。


服務(wù)性能提高

服務(wù)器之所以可以同時(shí)處理多個(gè)請(qǐng)求,在于操作系統(tǒng)通過(guò)多執(zhí)行流體系設(shè)計(jì)使得多個(gè)任務(wù)可以輪流使用系統(tǒng)資源,這些資源包括CPU,內(nèi)存以及I/O. 這里的I/O主要指磁盤(pán)I/O, 和網(wǎng)絡(luò)I/O。

服務(wù)器的性能也可能是性能的瓶頸,這個(gè)時(shí)候,就需要更好的服務(wù)器。比如單核CPU提高到多核,內(nèi)存也需要增加。


web程序的并發(fā)能力

web程序員并發(fā)能力,web在相同時(shí)間內(nèi)處理更多的請(qǐng)求,多線程處理最為關(guān)鍵。比如SpringBoot默認(rèn)使用Tomcat,而tomcat的默認(rèn)線程為200,即在同一時(shí)刻,只能處理200個(gè)請(qǐng)求,而其他需要排隊(duì)等待,在服務(wù)器性能足夠好的情況,就需要將Tomcat的處理線程增加到合適的大小。

線程的增加,需要經(jīng)過(guò)性能測(cè)試,才能知道多少合適,線程的切換也是需要資源和時(shí)間的,因此不能無(wú)限擴(kuò)大。

多個(gè)web同時(shí)處理。通過(guò)對(duì)web的集群,讓web處理的并發(fā)增加。如圖:


使用nginx作為轉(zhuǎn)發(fā),web服務(wù)器集群是的處理的請(qǐng)求數(shù)增加。

代碼

1. 優(yōu)化代碼處理的速度,一空間換時(shí)間,對(duì)于執(zhí)行的慢的程序,可以通過(guò)消耗內(nèi)存(即構(gòu)造新的數(shù)據(jù)結(jié)構(gòu))來(lái)進(jìn)行優(yōu)化。

2. 利用池化技術(shù)復(fù)用,池化技術(shù)能夠減少資源對(duì)象的創(chuàng)建次數(shù),提高程序的性能,特別是在高并發(fā)下這種提高更加明顯。簡(jiǎn)單點(diǎn)來(lái)說(shuō),就是提前保存大量的資源,以備不時(shí)之需。線程的創(chuàng)建是非常耗時(shí)和消耗資源的,通過(guò)池化池化技術(shù)解決這一點(diǎn)。

3. 減少使用不必要的鎖。服務(wù)器處理大量并發(fā)請(qǐng)求時(shí),多個(gè)請(qǐng)求處理任務(wù)時(shí)存在一些資源搶占競(jìng)爭(zhēng),這時(shí)一般采用“鎖”機(jī)制來(lái)控制資源的占用,當(dāng)一個(gè)任務(wù)占用資源時(shí),我們鎖住資源,這時(shí)其它任務(wù)都在等待鎖的釋放,這個(gè)現(xiàn)象稱為鎖競(jìng)爭(zhēng)。

通過(guò)鎖競(jìng)爭(zhēng)的本質(zhì),我們要意識(shí)到盡量減少并發(fā)請(qǐng)求對(duì)于共享資源的競(jìng)爭(zhēng)。比如在允許情況下關(guān)閉服務(wù)器訪問(wèn)日志,這可以大大減少在鎖等待時(shí)的延遲時(shí)間。要大程度減少無(wú)辜的等待時(shí)間。


數(shù)據(jù)庫(kù)

數(shù)據(jù)庫(kù)往往成為程序的瓶頸,程序多數(shù)都需要查詢數(shù)據(jù)庫(kù),而數(shù)據(jù)庫(kù)的查詢插入都是有一定性質(zhì),特別是在數(shù)據(jù)量特別大的時(shí)候。

1. SQL優(yōu)化以提升SQL執(zhí)行效率;優(yōu)化那些查詢慢的語(yǔ)句,并通過(guò)創(chuàng)建索引等手段來(lái)優(yōu)化。

2. 數(shù)據(jù)庫(kù)讀寫(xiě)分離避免讀、寫(xiě)鎖帶來(lái)的性能開(kāi)銷;Mysql實(shí)現(xiàn)主動(dòng),主插入操作,而查詢使用從數(shù)據(jù)庫(kù)。

網(wǎng)站題目:如何提高服務(wù)器并發(fā)處理能力,有這幾點(diǎn)我們要注意
標(biāo)題鏈接:http://jinyejixie.com/news/97911.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司網(wǎng)站設(shè)計(jì)、App開(kāi)發(fā)動(dòng)態(tài)網(wǎng)站、建站公司、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司
苍山县| 油尖旺区| 天津市| 绥芬河市| 务川| 英德市| 张北县| 汝阳县| 海口市| 洛浦县| 抚宁县| 澎湖县| 岳普湖县| 宣武区| 开鲁县| 乌兰浩特市| 石棉县| 北海市| 梨树县| 洛浦县| 南靖县| 宿迁市| 囊谦县| 五常市| 河源市| 武山县| 沁阳市| 南川市| 彰化市| 朝阳市| 上林县| 马公市| 玛纳斯县| 石首市| 泸溪县| 铁岭市| 明光市| 井研县| 仲巴县| 西盟| 阳曲县|