亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

云智慧微課堂:移動(dòng)創(chuàng)業(yè)公司的IT性能優(yōu)化實(shí)例講解

xzavier / 3007人閱讀

摘要:大家好,我叫湯金城,今天和大家分享一下我在公司業(yè)務(wù)方面故障排查遇到的一些坑,以及進(jìn)行性能調(diào)優(yōu)的解決方法。性能的優(yōu)化在我看來,性能優(yōu)化和監(jiān)控是分不開的,現(xiàn)在關(guān)于優(yōu)化的配置非常多,適合自己的才是最好的。

本期主講:湯金城,多年從事移動(dòng)互聯(lián)網(wǎng)相關(guān)運(yùn)維工作,帶領(lǐng)團(tuán)隊(duì)維護(hù)數(shù)百臺服務(wù)器,擁有豐富的故障排查和性能優(yōu)化實(shí)戰(zhàn)經(jīng)驗(yàn),擅長業(yè)務(wù)拆分,高可用架構(gòu)設(shè)計(jì)。

大家好,我叫湯金城,今天和大家分享一下我在公司業(yè)務(wù)方面故障排查遇到的一些坑,以及進(jìn)行性能調(diào)優(yōu)的解決方法。記得剛來公司接手業(yè)務(wù)的時(shí)候,IT架構(gòu)亂的一塌糊涂,前任留下來很多坑:服務(wù)器資源緊張,初期架構(gòu)沒考慮擴(kuò)展性等等,不過對于初創(chuàng)企業(yè)來說這些問題都是正常的。

故障的及時(shí)發(fā)現(xiàn)與實(shí)時(shí)分析

首先來講下公司初期的一個(gè)需求,因?yàn)楣緦I(yè)務(wù)很重視,所以領(lǐng)導(dǎo)需要第一時(shí)間了解故障原因是什么以及怎樣做才能預(yù)防故障的再次發(fā)生。前期我考慮的就是監(jiān)控日志,通過實(shí)時(shí)分析日志發(fā)現(xiàn)問題,開始我們使用的是一款python寫的開源工具ganglia-logtailer,相當(dāng)于對log進(jìn)行tail實(shí)時(shí)獲取并截取想要的信息進(jìn)行監(jiān)控,但是一段時(shí)間后發(fā)現(xiàn)這種工具的效率不高,并且數(shù)據(jù)并不是很準(zhǔn)確。

然后就用了ELK,采用Logstash進(jìn)行數(shù)據(jù)采集,存入redis,再由logstash從redis獲取數(shù)據(jù),中間進(jìn)行一個(gè)過濾以及分析,存入到elasticsearch,通過kibana進(jìn)行數(shù)據(jù)展示,同時(shí)logstash還可以對獲取的數(shù)據(jù)進(jìn)行監(jiān)控以及郵件報(bào)警。

通過上面這種方式,確實(shí)能對后端服務(wù)器、存儲等設(shè)備的故障和系統(tǒng)信息進(jìn)行統(tǒng)計(jì),但很多業(yè)務(wù)故障并不單純是內(nèi)部IT系統(tǒng)問題造成的,我們經(jīng)常發(fā)現(xiàn)前端出現(xiàn)掉流量,掉訪問的現(xiàn)象,而后端運(yùn)行完全正常,通過這種內(nèi)部監(jiān)控是找不出原因的,這時(shí)候就需要考慮一些外部原因了。

下面給大家看一些故障排查案例:

實(shí)例1:服務(wù)器計(jì)算時(shí)長
有一段時(shí)間,每到晚上業(yè)務(wù)最高峰網(wǎng)站訪問都會變慢,從內(nèi)網(wǎng)并沒看出什么明顯訪問異常,那時(shí)候剛上了監(jiān)控寶,于是就部署上了監(jiān)控外部分析,白天都很正常,一到晚上業(yè)務(wù)高峰期報(bào)警就增多了。監(jiān)控寶的分析做的還不錯(cuò),是基于curl來做的監(jiān)控,curl本身就可以打印出相關(guān)連接時(shí)間 ,監(jiān)控寶的響應(yīng)時(shí)間報(bào)告包括一下參數(shù):

DNS域名解析時(shí)間:訪問網(wǎng)站的第一步就是DNS解析,如果這個(gè)時(shí)間消耗長,就得看看是不是DNS解析商那塊出了問題;

建立連接:TCP三次握手建立連接的時(shí)間,如果5秒內(nèi)無法建立連接,就會報(bào)無法連接服務(wù)器;
服務(wù)器計(jì)算:監(jiān)控服務(wù)器的處理能力;
內(nèi)容下載:網(wǎng)頁內(nèi)容下載到本地的時(shí)長;

通過以上報(bào)警可以看出訪問消耗在了服務(wù)器計(jì)算能力上,那么很明顯還是服務(wù)端的問題,于是又對服務(wù)器進(jìn)行了一次檢查,這次著重檢查了服務(wù)器配置,結(jié)果發(fā)現(xiàn)被入口的nginx給坑了,nginx有個(gè)worker_connections參數(shù),早期服務(wù)器沒什么訪問量的時(shí)候設(shè)置的比較低,只設(shè)置了8000,難怪每到晚上estab連接數(shù)最高就到32000左右,從未看到飆到32000以上,于是將worker_connections調(diào)到對應(yīng)的數(shù),這個(gè)問題就解決了,后面訪問量自然就漲上去了,相比以前訪問峰值PV漲了足足45%。

實(shí)例2:移動(dòng)用戶無法訪問網(wǎng)站

上面是4月21日交換機(jī)的入口出口圖,在20點(diǎn)整的時(shí)候出現(xiàn)一個(gè)流量的掉坑,根據(jù)這張圖可以很明顯的看到流量在進(jìn)來的時(shí)候就已經(jīng)減少了,這個(gè)時(shí)候內(nèi)部監(jiān)控系統(tǒng)卻沒發(fā)現(xiàn)有其他異常,下面再看下nginx的入口出口圖:

可以很明顯的看到流量進(jìn)來就減少了,造成出去的流量減少,那么問題肯定出在外部。

這是監(jiān)控寶的告警信息,可以很明顯的看到4月21日20點(diǎn)之后,持續(xù)25分鐘的移動(dòng)用戶節(jié)點(diǎn)無法訪問。

這時(shí)候就不是我們的問題,而是機(jī)房的事了,馬上打電話給機(jī)房反饋情況,機(jī)房幫我們做了路由優(yōu)化之后故障得到解決,整個(gè)過程持續(xù)了將近20分鐘。

性能的優(yōu)化
在我看來,性能優(yōu)化和監(jiān)控是分不開的,現(xiàn)在關(guān)于優(yōu)化的配置非常多,適合自己的才是最好的。我通常會在修改配置后,先進(jìn)行壓力測試,然后觀察內(nèi)部監(jiān)控、外部監(jiān)控的性能表現(xiàn)進(jìn)行調(diào)整。這里給大家推薦一些常用的系統(tǒng)參數(shù):
net.ipv4.tcp_fin_timeout = 30
net.core.somaxconn = 8196
net.ipv4.tcp_max_syn_backlog = 8196
net.ipv4.ip_local_port_range = 1024 65000

再強(qiáng)調(diào)一次,因?yàn)槊總€(gè)公司的業(yè)務(wù)場景都不一樣,只有了解了自己業(yè)務(wù)的真實(shí)需求才能針對性的進(jìn)行性能調(diào)優(yōu),千萬不要盲目對照別人的參數(shù)去調(diào)整配置,以上參數(shù)對我們的業(yè)務(wù)來說是最優(yōu)的,但可能在某些業(yè)務(wù)場景下反而會影響性能。所以建議大家先留一份原有參數(shù)的備份,如果調(diào)試有問題可以回滾。

下面給大家分享幾篇干貨,都是關(guān)于time_wait tcp listen backlog這些受爭議的參數(shù),大家可以參考,然后自己做調(diào)整,記得先對照參數(shù)備份原有參數(shù),另外有些參數(shù)sysctl -p后生效時(shí)間可能要2到5分鐘。

http://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=403319808&idx=1&sn=ddae082f5b844d040b9ab23c9c0eb778&scene=23&srcid=0311SD5dPUGnPq7sTqzC2vHn#rd
http://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=403232978&idx=1&sn=4ed396ac1999add1c866419bd62b0e75&scene=23&srcid=0307e64zzFVkDViC4iDlvIbD#rd
http://dngood.blog.51cto.com/446195/988968
http://blog.hellosa.org/2011/04/21/tcp-kernel-nat.html
http://www.udpwork.com/item/6909.html
http://blog.csdn.net/largetalk/article/details/16863689
https://www.douban.com/note/178129553/
http://mp.weixin.qq.com/s?__biz=MjM5NzUwNDA5MA==&mid=201005717&idx=1&sn=74036633114ee6212e57ee4576dbfcbc&3rd=MzA3MDU4NTYzMw==&scene=6#rd
http://www.cnxct.com/something-about-phpfpm-s-backlog/

還有更多的干貨這里就不方便貼出了,有需要的可以找我要。以上就是今天的分享,如有不足之處請大家多多包涵。

問:你現(xiàn)在外部監(jiān)控是怎么做的?
答:目前外部監(jiān)控我們通過監(jiān)控寶監(jiān)控了靜態(tài)頁面和動(dòng)態(tài)頁面,靜態(tài)頁面監(jiān)控我的緩存服務(wù)器,動(dòng)態(tài)頁面監(jiān)控的后端服務(wù)器。我們主要是URL監(jiān)控,如果你們API使用比較多,也可以用監(jiān)控寶進(jìn)行API監(jiān)控。此外,監(jiān)控寶也提供內(nèi)部系統(tǒng)監(jiān)控的,采用agent方式對系統(tǒng)所關(guān)注的應(yīng)用組件性能做監(jiān)控,并不比zabbix差,而且還支持電話報(bào)警。

問:請問運(yùn)維和領(lǐng)導(dǎo)溝通有什么技巧嗎?
答:直接曬數(shù)據(jù)最有力,領(lǐng)導(dǎo)喜歡看數(shù)據(jù)報(bào)告,要把各個(gè)方面的性能圖和數(shù)據(jù)給他看,然后給他挑刺,用數(shù)據(jù)說話抵得上千言萬語。不過這需要做到全面的監(jiān)控,才可能獲取有說服力的完整數(shù)據(jù),特別是隨著業(yè)務(wù)的增長,以前遺留下的一些問題在量小的時(shí)候并不怎么明顯,訪問壓力大了才會爆發(fā)出來,這時(shí)候如果有前后的對比分析,就可以讓領(lǐng)導(dǎo)為業(yè)務(wù)增長買單。

問:那數(shù)據(jù)用什么樣的方式呈現(xiàn)比較好?
答:當(dāng)然是圖表,監(jiān)控寶提供一些基礎(chǔ)數(shù)據(jù)的圖表,如果希望根據(jù)自己的業(yè)務(wù)定制圖表,可以使用ganglia集群監(jiān)控,搭建方便,模塊多,圖形非常適合分析排查故障。

問:那能不能稍微總結(jié)下,對一個(gè)初創(chuàng)公司來說,有哪些工作是從一開始就必須要做的?
答:壓測和監(jiān)控是構(gòu)建彈性、高可用IT架構(gòu)的基礎(chǔ),云智慧的監(jiān)控寶、透視寶和壓測寶正好從不同的角度解決這個(gè)性能問題,而且SaaS模式也比較適合初創(chuàng)企業(yè),大家可以試試。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/39280.html

Failed to recv the data from server completely (SIZE:0/8, REASON:closed)