前幾天公司新人小A跑來問我,說他的一個 ArrayList 無法進行 add 操作了,讓我幫他看看。原來他使用一個 ArrayList 作為文件下載進度的存放隊列,再使用另一個線程不停地取隊列的對象寫到數據庫,是一個典型的生產者-消費者模型。簡化的實現代碼是這樣的: 問題顯而易見,為了保證 ...
話說一個美滋滋的上午, 突然就出現大量報警, 接口大量請求都響應超時了. 排查過程 查看服務器的監控系統, CPU, 內存, 負載等指標正常 排查日志, 日志能夠響應的結果也正常. request.log 中響應時長高達數秒 查看數據庫, codis 監控, 各項指標正常 不得已, 只能打開線上 pprof 查看 Go 相關參數是否正常. 果真一下子就找到問題發生的原因 這是當時線上 pprof ...
2021-04-27 10:29 1 370 推薦指數:
前幾天公司新人小A跑來問我,說他的一個 ArrayList 無法進行 add 操作了,讓我幫他看看。原來他使用一個 ArrayList 作為文件下載進度的存放隊列,再使用另一個線程不停地取隊列的對象寫到數據庫,是一個典型的生產者-消費者模型。簡化的實現代碼是這樣的: 問題顯而易見,為了保證 ...
作用是在第一次發生OOM錯誤時候會打印dump內存信息),便開始通過dump文件開始查找問題。 ...
Cache類型 Cache封裝了一個cache類型,cache類型的參數解析: 1.defaultExpiration time.Duration 每個鍵值的默認過期時間。 2.items map[string]Item map類型。 3.mu sync.RWMutex map ...
生產環境,出現tomcat預警 OutOfMemoryError: Java heap space,出現此問題,經過排查,發現tomcat設置內存參數xmx為2G 經過評估,可能此值不夠大,經過服務整體情況評估,決定加大內存,加到到3G。(服務器資源緊張,沒有多余的資源),以為萬事大吉 ...
背景 公司的主打產品是一款跨平台的 App,我的部門負責為它提供底層的 sdk 用於數據傳輸,我負責的是 Adnroid 端的 sdk 開發。 sdk 並不直接加載在 App 主進程,而是隔離在一 ...
開心一刻 小羊:哎呀,前面有奶喝 狗媽:這誰呀,走開 小羊:我就喝點,能怎么的嘛 狗媽:你喝就喝,咋還上頭了呢? 小羊:真香! 狗媽:這羊犢子,真硬核! 問題背景 一天早上,樓主興致勃勃的逛着園子的時候,右下角的 QQ 頭像嘀嘀嘀的閃了起來,定睛一看 ...
前言 之前或多或少分享過一些內存模型、對象創建之類的內容,其實大部分人看完都是懵懵懂懂,也不知道這些的實際意義。 直到有一天你會碰到線上奇奇怪怪的問題,如: 線程執行一個任務遲遲沒有返回,應用假死。 接口響應緩慢,甚至請求超時。 CPU 高負載運行。 這類問題並不 ...
標題采自:英雄聯盟-瑞文:斷劍重鑄之日,騎士歸來之時! 斷劍 前兩天早上在擠地鐵的時候看到小組群里,主管發了好多消息,打開來一看,說是XX項目自從22號發版后,每天晚上就瘋狂Full GC ...