真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux高并發(fā)的概念是什么

本文小編為大家詳細(xì)介紹“l(fā)inux高并發(fā)的概念是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“l(fā)inux高并發(fā)的概念是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、汪清ssl等。為成百上千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢(xún)和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的汪清網(wǎng)站制作公司

在linux中,高并發(fā)是系統(tǒng)運(yùn)行過(guò)程中遇到的一種“短時(shí)間內(nèi)遇到大量操作請(qǐng)求”的情況,主要發(fā)生在web系統(tǒng)集中大量訪問(wèn)收到大量請(qǐng)求;該情況的發(fā)生會(huì)導(dǎo)致系統(tǒng)在這段時(shí)間內(nèi)執(zhí)行大量操作,例如對(duì)資源的請(qǐng)求,數(shù)據(jù)庫(kù)的操作等。

一 高并發(fā)概念

1.1 高并發(fā)概念

高并發(fā)(High Concurrency)是互聯(lián)網(wǎng)分布式系統(tǒng)架構(gòu)設(shè)計(jì)中必須考慮的因素之一,它通常是指,通過(guò)設(shè)計(jì)保證系統(tǒng)能夠同時(shí)并行處理很多請(qǐng)求。

高并發(fā)(High Concurrency)是一種系統(tǒng)運(yùn)行過(guò)程中遇到的一種“短時(shí)間內(nèi)遇到大量操作請(qǐng)求”的情況,主要發(fā)生在web系統(tǒng)集中大量訪問(wèn)收到大量請(qǐng)求(例如:12306的搶票情況;天貓雙十一活動(dòng))。該情況的發(fā)生會(huì)導(dǎo)致系統(tǒng)在這段時(shí)間內(nèi)執(zhí)行大量操作,例如對(duì)資源的請(qǐng)求,數(shù)據(jù)庫(kù)的操作等。

1.2 高并發(fā)相關(guān)指標(biāo)

  • 響應(yīng)時(shí)間(Response Time)

    • 系統(tǒng)對(duì)請(qǐng)求做出響應(yīng)的時(shí)間。例如系統(tǒng)處理一個(gè)HTTP請(qǐng)求需要200ms,這個(gè)200ms就是系統(tǒng)的響應(yīng)時(shí)間

  • 吞吐量(Throughput)

    • 單位時(shí)間內(nèi)處理的請(qǐng)求數(shù)量

  • 每秒查詢(xún)率QPS(Query Per Second)

    • 每秒響應(yīng)請(qǐng)求數(shù)。在互聯(lián)網(wǎng)領(lǐng)域,這個(gè)指標(biāo)和吞吐量區(qū)分的沒(méi)有這么明顯

  • 并發(fā)用戶數(shù)(User Concurrence)

    • 同時(shí)承載正常使用系統(tǒng)功能的用戶數(shù)量。例如一個(gè)即時(shí)通訊系統(tǒng),同時(shí)在線量一定程度上代表了系統(tǒng)的并發(fā)用戶數(shù)

1.3 高并發(fā)優(yōu)化方面

  • 單進(jìn)程最大打開(kāi)文件數(shù)限制

  • 內(nèi)核TCP參數(shù)方面

  • IO事件分配機(jī)制

二 提升系統(tǒng)的并發(fā)能力

2.1 垂直擴(kuò)展

  • 提升單機(jī)處理能力

    • 增強(qiáng)單機(jī)硬件性能,例如:增加CPU核數(shù)如32核,升級(jí)更好的網(wǎng)卡如萬(wàn)兆,升級(jí)更好的硬盤(pán)如SSD,擴(kuò)充硬盤(pán)容量如2T,擴(kuò)充系統(tǒng)內(nèi)存如128G

    • 提升單機(jī)架構(gòu)性能,例如:使用Cache來(lái)減少I(mǎi)O次數(shù),使用異步來(lái)增加單服務(wù)吞吐量,使用無(wú)鎖數(shù)據(jù)結(jié)構(gòu)來(lái)減少響應(yīng)時(shí)間

2.2 水平擴(kuò)展

  • 增加服務(wù)器數(shù)量,就能線性擴(kuò)充系統(tǒng)性能

2.3 常見(jiàn)互聯(lián)網(wǎng)分層架構(gòu)

(1)客戶端層:典型調(diào)用方是瀏覽器browser或者手機(jī)應(yīng)用APP

(2)反向代理層:系統(tǒng)入口,反向代理

(3)站點(diǎn)應(yīng)用層:實(shí)現(xiàn)核心應(yīng)用邏輯,返回html或者json

(4)服務(wù)層:如果實(shí)現(xiàn)了服務(wù)化,就有這一層

(5)數(shù)據(jù)-緩存層:緩存加速訪問(wèn)存儲(chǔ)

(6)數(shù)據(jù)-數(shù)據(jù)庫(kù)層:數(shù)據(jù)庫(kù)固化數(shù)據(jù)存儲(chǔ)

2.4 水平擴(kuò)展架構(gòu)

  • 反向代理層的水平擴(kuò)展

  • 當(dāng)nginx成為瓶頸的時(shí)候,只要增加服務(wù)器數(shù)量,新增nginx服務(wù)的部署,增加一個(gè)外網(wǎng)ip,就能擴(kuò)展反向代理層的性能,做到理論上的無(wú)限高并發(fā)

  • 通過(guò)“DNS輪詢(xún)”實(shí)現(xiàn)的:dns-server對(duì)于一個(gè)域名配置了多個(gè)解析ip,每次DNS解析請(qǐng)求來(lái)訪問(wèn)dns-server,會(huì)輪詢(xún)返回這些ip

  • 站點(diǎn)層的水平擴(kuò)展

    • 通過(guò)“nginx”實(shí)現(xiàn)的。通過(guò)修改nginx.conf,可以設(shè)置多個(gè)web后端

    • 當(dāng)web后端成為瓶頸的時(shí)候,只要增加服務(wù)器數(shù)量,新增web服務(wù)的部署,在nginx配置中配置上新的web后端,就能擴(kuò)展站點(diǎn)層的性能,做到理論上的無(wú)限高并發(fā)

  • 服務(wù)層的水平擴(kuò)展

    • 通過(guò)“服務(wù)連接池”實(shí)現(xiàn)的

    • 站點(diǎn)層通過(guò)RPC-client調(diào)用下游的服務(wù)層RPC-server時(shí),RPC-client中的連接池會(huì)建立與下游服務(wù)多個(gè)連接,當(dāng)服務(wù)成為瓶頸的時(shí)候,只要增加服務(wù)器數(shù)量,新增服務(wù)部署,在RPC-client處建立新的下游服務(wù)連接,就能擴(kuò)展服務(wù)層性能,做到理論上的無(wú)限高并發(fā)

  • 數(shù)據(jù)層的水平擴(kuò)展

    • user0庫(kù),存儲(chǔ)偶數(shù)uid數(shù)據(jù)

    • user1庫(kù),存儲(chǔ)奇數(shù)uid數(shù)據(jù)

    • user0庫(kù),存儲(chǔ)uid范圍1-1kw

    • user1庫(kù),存儲(chǔ)uid范圍1kw-2kw

    • 數(shù)據(jù)層(緩存,數(shù)據(jù)庫(kù))涉及數(shù)據(jù)的水平擴(kuò)展,將原本存儲(chǔ)在一臺(tái)服務(wù)器上的數(shù)據(jù)(緩存,數(shù)據(jù)庫(kù))水平拆分到不同服務(wù)器上去,以達(dá)到擴(kuò)充系統(tǒng)性能的目的。

    • 存儲(chǔ)一定范圍的數(shù)據(jù)

    • 按照哈希水平拆分

三 單臺(tái)Linux服務(wù)器提升并發(fā)

3.1 iptables相關(guān)

  • 關(guān)閉iptables防火墻,阻止kernel加載iptables模塊

  • 單進(jìn)程最大打開(kāi)文件數(shù)限制(默認(rèn)單個(gè)進(jìn)程最大打開(kāi)1024個(gè)文件)

    ulimit –n 65535
  • 修改Linux系統(tǒng)對(duì)用戶的打開(kāi)文件數(shù)的軟限制和硬限制

    vim /etc/security/limits.conf
    * soft nofile 65535   #'*'表示修改所有用戶的限制
    * hard nofile 65535
  • #用戶完成系統(tǒng)登錄后讀取/etc/security/limits.conf文件
    vim /etc/pam.d/login
    sessionrequired /lib/security/pam_limits.so

3.2 內(nèi)核TCP參數(shù)

TIME_WAIT狀態(tài)

  • TCP連接斷開(kāi)后,會(huì)以TIME_WAIT狀態(tài)保留一定的時(shí)間,然后才會(huì)釋放端口。當(dāng)并發(fā)請(qǐng)求過(guò)多的時(shí)候,就會(huì)產(chǎn)生大量的TIME_WAIT狀態(tài)的連接,無(wú)法及時(shí)斷開(kāi)的話,會(huì)占用大量的端口資源和服務(wù)器資源

#查看TIME_WAIT狀態(tài)連接
netstat -n | grep tcp | grep TIME_WAIT |wc -l
# vim /etc/sysctl.conf
net.ipv4.tcp_syncookies= 1 #表示開(kāi)啟SYNCookies。當(dāng)出現(xiàn)SYN等待隊(duì)列溢出時(shí),啟用cookies來(lái)處理,可防范少量SYN攻擊,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_tw_reuse= 1 #表示開(kāi)啟重用。允許將TIME-WAITsockets重新用于新的TCP連接,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_tw_recycle= 1 #表示開(kāi)啟TCP連接中TIME-WAITsockets的快速回收,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_fin_timeout= 30  #修改系統(tǒng)默認(rèn)的TIMEOUT 時(shí)間。

讀到這里,這篇“l(fā)inux高并發(fā)的概念是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


新聞名稱(chēng):linux高并發(fā)的概念是什么
文章位置:http://weahome.cn/article/iiejec.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部