6月11日
第一次發(fā)版,配合運(yùn)維解決線上環(huán)境問(wèn)題泊业。
操作步驟:
wget https://ftp.gnu.org/gnu/gcc/gcc-9.1.0/gcc-9.1.0.tar.gz
sudo yum install libmpc-devel mpfr-devel gmp-devel
sudo yum install zlib-devel*
tar xf gcc-9.1.0.tar.gz
cd gcc-9.1.0
./configure --with-system-zlib --disable-multilib --enable-languages=c,c++
make -j24
sudo make install
export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib64:$LD_LIBRARY_PATH
6月12日
服務(wù)器擴(kuò)容把沼,新增2臺(tái)機(jī)器。
新增機(jī)器之后吁伺,開(kāi)放 CPU 限制導(dǎo)致饮睬,由于 login 消息積壓,導(dǎo)致 CPU 一直滿載篮奄。
ncpu := runtime.NumCPU()
if ncpu > 2 {
runtime.GOMAXPROCS(int(ncpu) - 2)
}
MQ 消費(fèi)問(wèn)題捆愁,如何能更自然的解決積壓?jiǎn)栴},還有積壓告警
問(wèn)題:
如果沒(méi)有消費(fèi)者窟却,生產(chǎn)者持續(xù)生成昼丑,數(shù)據(jù)會(huì)存到硬盤,過(guò)期策略夸赫,等到消費(fèi)者上線會(huì)產(chǎn)生積壓菩帝,要是新增一個(gè)消費(fèi)者,之前的數(shù)據(jù)怎么搞憔足,那不是都有積壓胁附,哈?
6月13日
四臺(tái)機(jī)器消費(fèi)能力正常滓彰,增加大數(shù)據(jù)提供的線上接口之后出現(xiàn)另外的問(wèn)題,機(jī)器有16G的內(nèi)存州袒,基本一小時(shí)內(nèi)打滿揭绑。
分析原因是當(dāng)前版本 resty 的遺留問(wèn)題,針對(duì)類似參數(shù)多變的 URL 會(huì)進(jìn)行 Metric 監(jiān)控采集郎哭,由于 QPS 晚高峰達(dá)到 5000+ 情況下他匪,大數(shù)據(jù)接口產(chǎn)生數(shù)據(jù)延時(shí)以及報(bào)錯(cuò),導(dǎo)致 timer 時(shí)延進(jìn)而內(nèi)存堆積夸研。
升級(jí) resty 解決邦蜜。
增加自定義 Metric
func SetMetric(typeStr string) {
EncryptImp.metric.Counter(typeStr, map[string]string{
"ctype": typeStr,
}).Inc(1)
}
服務(wù)上線前對(duì)大數(shù)據(jù)的接口沒(méi)有進(jìn)行壓測(cè),線下沒(méi)發(fā)現(xiàn)這個(gè)問(wèn)題亥至。
調(diào)整之后目前線上服務(wù)穩(wěn)定悼沈。
總結(jié)
- MQ 消費(fèi)服務(wù)上線注意積壓?jiǎn)栴}贱迟,準(zhǔn)備解壓方案
- 對(duì)于 QPS 較高的服務(wù)進(jìn)行完整性壓測(cè)