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

redis阻塞分析-創(chuàng)新互聯(lián)

        redis是經(jīng)典的單線程架構(gòu),所有的讀寫(xiě)操作都是在一個(gè)主線程中完成的。當(dāng)redis處于高并發(fā)情況時(shí),如果出現(xiàn)阻塞,哪怕是很短的時(shí)間,對(duì)于應(yīng)用來(lái)說(shuō)都相當(dāng)嚴(yán)重,會(huì)出現(xiàn)大量的超時(shí)問(wèn)題,應(yīng)用出問(wèn)題。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、網(wǎng)絡(luò)空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、惠水網(wǎng)站維護(hù)、網(wǎng)站推廣。

1. redis的阻塞主要包括兩方面:

  1.1 內(nèi)在原因:不合理使用API或數(shù)據(jù)結(jié)構(gòu)、CPU飽和持久化阻塞

  1.2 外在原因:CPU競(jìng)爭(zhēng)、內(nèi)存交換、網(wǎng)絡(luò)問(wèn)題

    1.1內(nèi)在原因:

        1.1.1:如何發(fā)現(xiàn)慢查詢(xún):slowlog get [N] 選型:N,可選,代表獲取的日志條數(shù)

         1.1.2:如何發(fā)現(xiàn)大對(duì)象:redis-cli -h {ip} -p {port} --bigkeys

         1.1.3:CPU飽和問(wèn)題:?jiǎn)尉€程Redis 處理命令時(shí)只能使用一個(gè)CPU,而CPU飽和是指Redis把單核CPU使用率跑到接近100%。CPU飽和導(dǎo)致Redis無(wú)法處理更多命令,嚴(yán)重影響吞吐和應(yīng)用方的穩(wěn)定。

    如何發(fā)現(xiàn)CPU飽和:redis-cli -h {ip} -p {port} --stat

         1.1.4:持久化相關(guān)阻塞:

                a.fork阻塞: fork操作本身耗時(shí)過(guò)長(zhǎng),會(huì)導(dǎo)致主線程阻塞。
     通過(guò)info stats中的latest_fork_usec指標(biāo)確定(單位為微秒),表示最近一次fork操作耗時(shí),如果耗時(shí)很大,比如超過(guò)1秒,則需要做優(yōu)化調(diào)整,比如不使用過(guò)大內(nèi)存實(shí)例,或者規(guī)避fork緩慢的xen虛擬機(jī)。

               b.AOF刷盤(pán)阻塞:當(dāng)我們開(kāi)啟AOF持久化功能時(shí),文件刷盤(pán)的方式一般采用每秒一次,后臺(tái)線程每秒對(duì)AOF文件做fsync操作。當(dāng)硬盤(pán)壓力過(guò)大時(shí),fsync操作需要等待,直到寫(xiě)入完成。如果主線程發(fā)現(xiàn)距離上一次的fsync成功超過(guò)2秒,為了數(shù)據(jù)安全性它會(huì)阻塞直到后臺(tái)線程執(zhí)行fsync操作完成。這種阻塞行為主要是硬盤(pán)壓力引起。后臺(tái)日志會(huì)出現(xiàn)如下信息:

Asynchronous AOF fsync is taking too long (disk is busy). Writing the AOFbuffer without waiting for fsync to complete, this may slow down Redis.

    1.2 外在原因:

         1.2.1:CPU競(jìng)爭(zhēng):redis是經(jīng)典的CPU密集型應(yīng)用,不建議和其它的程序一起使用。可以使用top命令都為問(wèn)題;

         1.2.2:綁定CPU:優(yōu)化把Redis綁定到CPU上,降低CPU頻繁上下文切換。

                  注意:對(duì)于開(kāi)啟了持久化或參與復(fù)制的主節(jié)點(diǎn)不建議綁定CPU,防止父進(jìn)程與子進(jìn)程將產(chǎn)生激烈CPU競(jìng)爭(zhēng),影響Redis穩(wěn)定性。

         1.2.3:內(nèi)存交行:定位內(nèi)存交換方法:

                  a.查詢(xún)r(jià)edis進(jìn)程號(hào):redis-cli -p 6384 info server |grep process_id

                  b.根據(jù)進(jìn)程號(hào)查詢(xún)內(nèi)存交換信息:cat /proc/xxxx/smaps |grep Swap

                  c.如果交換都是0kb或者偶爾4kb屬于正?,F(xiàn)象

                  d. 降低系統(tǒng)使用swap優(yōu)先級(jí): 修改swappiness

         1.2.4:網(wǎng)絡(luò)問(wèn)題:

                  a. Redis連接拒絕:Redis通過(guò)maxclients參數(shù)控制客戶端大連接數(shù),默認(rèn)10000。查看info stats的rejected_connections統(tǒng)計(jì)指標(biāo)展示被拒絕的數(shù)量。客戶端訪問(wèn)盡量采用長(zhǎng)連接或者連接池方   式。進(jìn)程限制優(yōu)化:設(shè)置ulimit -n 65535 防止 Too many Open files
                  b.backlog隊(duì)列溢出:系統(tǒng)默認(rèn)backlog為128,優(yōu)化:使用echo 512>/proc/sys/net/core/somaxconn修改系統(tǒng)默認(rèn)參數(shù),如果懷疑是backlog隊(duì)列溢出,隊(duì)列溢出統(tǒng)計(jì):

                     netstat-s|grepoverflowed,查看是否有持續(xù)增長(zhǎng)的連接拒絕情況。

                  c.網(wǎng)絡(luò)延時(shí):網(wǎng)絡(luò)延時(shí)統(tǒng)計(jì):
                                  redis-cli -h {host} -p {port} --latency
                                 分別統(tǒng)計(jì):最小值、大值、平均值、采樣次數(shù)
                                 網(wǎng)絡(luò)延時(shí)一般發(fā)生在跨機(jī)房部署
                  d.網(wǎng)卡軟中斷:單個(gè)網(wǎng)卡隊(duì)列只能使用一個(gè)CPU,高并發(fā)下網(wǎng)卡數(shù)據(jù)集中在一個(gè)CPU下,導(dǎo)致無(wú)法利用多核CPU。網(wǎng)卡軟中斷瓶頸一般出現(xiàn)在網(wǎng)絡(luò)高流量吞吐場(chǎng)景,top的si指標(biāo)過(guò)高。

                     使用top 命令,按下1進(jìn)行排查。

                  

          

                    

       

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站標(biāo)題:redis阻塞分析-創(chuàng)新互聯(lián)
文章鏈接:http://jinyejixie.com/article26/ddeojg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷(xiāo)、自適應(yīng)網(wǎng)站、微信小程序、用戶體驗(yàn)網(wǎng)站導(dǎo)航、建站公司

廣告

聲明:本網(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)

h5響應(yīng)式網(wǎng)站建設(shè)
太和县| 永康市| 博湖县| 张家界市| 思南县| 崇文区| 桦南县| 平度市| 嘉善县| 临城县| 青海省| 达孜县| 儋州市| 大冶市| 吴江市| 离岛区| 望奎县| 彝良县| 五原县| 库尔勒市| 镇康县| 苏尼特左旗| 平阴县| 道真| 大余县| 且末县| 民和| 密山市| 惠州市| 肥乡县| 寿阳县| 鹿邑县| 新密市| 凤凰县| 福建省| 县级市| 安岳县| 上林县| 浮梁县| 昌黎县| 沙湾县|