https://zhuanlan.zhihu.com/p/26222486 ****************************** 上文談到了像讀書一樣閱讀源碼的重要性,今天談談如何閱讀一份代碼。我所謂的一份代碼,其范圍可能從幾千行到數萬行,有時甚至可多達數十萬行。這些代碼作為一個有機體 ...
背景 公司有一個使用golang開發的采集模塊,負責調用多個外部系統采集數據 最近做了一次架構上的調整,將采集模塊分成api job兩個子模塊,並部署到容器中,拆分前部署在虛機上。 現象 部分采集任務在容器中的執行時間比虛機中執行時間要長, 倍左右,本地測試無異常 排查思路 調用外部接口耗時過長 只有部分任務執行時間長,懷疑容器調用那部分系統接口比較慢,於是在容器中curl外部接口接口,發現並不慢 ...
2021-01-21 08:03 0 439 推薦指數:
https://zhuanlan.zhihu.com/p/26222486 ****************************** 上文談到了像讀書一樣閱讀源碼的重要性,今天談談如何閱讀一份代碼。我所謂的一份代碼,其范圍可能從幾千行到數萬行,有時甚至可多達數十萬行。這些代碼作為一個有機體 ...
壹 ❀ 引 某一天,CSM日常找我反饋客戶緊急工單,說有一個私有部署客戶升級版本后,發現一個功能使用不太正常。因為我們公司客戶分為兩種,一種是SaaS客戶,客戶側使用的版本被動跟隨主版本變 ...
閱讀源代碼的能力算是程序員的一種底層基礎能力之一,這個能力之所以重要,原因在於: 不可避免的需要閱讀或者接手他人的項目。比如調研一個開源項目,比如接手一個其他人的項目。 閱讀優秀的項目源碼是學習他人優秀經驗的重要途徑之一,這一點我自己深有體會。 讀代碼與寫代碼是兩個不太一樣的技能,原因 ...
現在兩個線程,可以操作初始值為零的一個變量,實現一個線程對該變量加1,一個線程對該變量減1,實現交替,來10輪,變量初始值為零。 使用if判斷存在虛假喚醒情況,變量可能會變成2 ...
前言 在 Redis 中,有一種數據類型,當在存儲的時候會同時采用兩種數據結構來進行分別存儲,那么 Redis 為什么要這么做呢?這么做會造成同一份數據占用兩倍空間嗎? 五種基本類型之集合對象 Redis 中的集合對象是一個包含字符串類型元素的無序集合,集合中元素唯一不可重復。 集合對象 ...
一、前言 【閑話開篇】:這段時間項目接近尾聲,我終於閑了一點,又拿起了早先未看完的書《JAVA高並發程序設計》。看到其中介紹《無鎖的緩存框架:Disruptor》時,接觸到了一個概念——偽共享(fa ...
最近回顧了一下MVP框架,結合閱讀到的幾篇不錯的博客,自己整理了一份可用於實際工作的MVP框架示例代碼,這里做個記錄,也順便和網友們分享一下。 代碼示例演示的是一個輸入員工號查詢員工信息並顯示的場景,查詢后的界面如下: 本文以該場景舉例來搭建一個 ...