為了避免公司信息安全所以本文沒(méi)有放置截圖,內(nèi)網(wǎng)wiki包含截圖 問(wèn)題描述 從周中開(kāi)始偶爾收到線下Engine服務(wù)的jvm.fullgc.count報(bào)警,最新的gc數(shù)大于5次。...
為了避免公司信息安全所以本文沒(méi)有放置截圖,內(nèi)網(wǎng)wiki包含截圖 問(wèn)題描述 從周中開(kāi)始偶爾收到線下Engine服務(wù)的jvm.fullgc.count報(bào)警,最新的gc數(shù)大于5次。...
什么是設(shè)計(jì)模式原則 設(shè)計(jì)模式原則就是常見(jiàn)的六大原則(單一職責(zé),里氏替換,接口隔離,依賴倒置,迪米特,開(kāi)閉),各個(gè)職責(zé)的具體內(nèi)容網(wǎng)絡(luò)上查詢一下比比皆是,之前的博客也有相應(yīng)的內(nèi)容...
定義 開(kāi)閉原則的定義就是一個(gè)軟件實(shí)體如類、模塊和函數(shù)應(yīng)該對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉 含義 在設(shè)計(jì)時(shí)盡量適應(yīng)變化,已提高項(xiàng)目的穩(wěn)定性和靈活性 盡量通過(guò)擴(kuò)展軟件實(shí)體行為實(shí)現(xiàn)變化,而不...
定義 迪米特法則也叫最少知道原則,即一個(gè)對(duì)象應(yīng)該對(duì)其他對(duì)象有最少的了解,一個(gè)類對(duì)需要耦合的類知道的最少,也即高內(nèi)聚低耦合。 四層含義 只和朋友交流(類只和必須關(guān)聯(lián)的類去耦合)...
含義 將一段代碼組織在一起并放進(jìn)一個(gè)獨(dú)立函數(shù),并讓函數(shù)名稱解釋該函數(shù)的用途 簡(jiǎn)單例子 上面例子中將兩句打印信息的代碼提取到printDetails方法中 優(yōu)點(diǎn) 函數(shù)粒度小,容...
定義 程序間不依賴不需要的接口,且依賴最小的接口 兩種接口 實(shí)例接口實(shí)例接口書中的意思是java類中new關(guān)鍵字生成的實(shí)例,此java類就是實(shí)例類的接口(我個(gè)人理解是跟依賴倒...
味道 重構(gòu)中的味道是用來(lái)形容重構(gòu)時(shí)機(jī)的一些場(chǎng)景 常見(jiàn)壞味道 重復(fù)代碼(duplicated code)1:同一個(gè)類的兩個(gè)函數(shù)含有相同的表達(dá)式,需要將重復(fù)的代碼提煉出來(lái)2:互為...
定義 程序依賴于抽象接口,不依賴于具體實(shí)現(xiàn) 兩層含義 高層模塊不應(yīng)該依賴底層模塊,兩者都應(yīng)該依賴于抽象低層模塊:不可分割的原子邏輯實(shí)現(xiàn)就是低層模塊高層模塊:由原子邏輯實(shí)現(xiàn)再組...
本文及后續(xù)設(shè)計(jì)模式之禪主要參考《設(shè)計(jì)模式之禪》 定義 所有引用基類的地方必須能透明地使用其子類的對(duì)象,通俗點(diǎn)講就是只要父類出現(xiàn)的地方替換成子類不產(chǎn)生任何異?;蝈e(cuò)誤 四層含義 ...
重構(gòu)的定義 名詞:對(duì)軟件內(nèi)部結(jié)構(gòu)的一種調(diào)整,目的是在不改變軟件可觀察行為的前提下,提高其可理解性,降低修改成本 動(dòng)詞:使用一系列重構(gòu)手法,在不改變軟件可觀察行為的前提下調(diào)整其...
本文主要參考《重構(gòu):改善既有代碼的設(shè)計(jì)》 什么是重構(gòu) 重構(gòu)是在不改變代碼外在行為的前提下,對(duì)代碼做出修改,以改進(jìn)程序的內(nèi)部結(jié)構(gòu)的一個(gè)過(guò)程。 實(shí)例 上面很簡(jiǎn)單就是一個(gè)Custo...
原則內(nèi)容 開(kāi)閉原則(對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉) 我們時(shí)常遇到面向接口編程,多態(tài)策略模式等,這些正是開(kāi)閉原則的忠實(shí)踐行者。當(dāng)要寫新需求或者新的功能時(shí)不用去修改原來(lái)的對(duì)象,而是增加...
前言 git是我們常用的代碼分布式管理工具,windows上我是tortorisegit小烏龜和git命令行混合使用的,提交代碼等簡(jiǎn)單操作用git命令行,但是回滾,解決沖突使...
本文主要參考Jenkins入門[https://www.jenkins.io/zh/doc/book/installing/],Install Docker Engine o...
系統(tǒng)工作命令 echoecho [字符串 | $變量] 在終端輸出字符串或者變量提取后的值 datedate [選項(xiàng)] [+指定格式] 顯示或設(shè)置系統(tǒng)日期時(shí)間 reboot重...
背景 剛進(jìn)公司負(fù)責(zé)攻略老搜索的時(shí)候會(huì)經(jīng)常需要登到服務(wù)器上面進(jìn)行測(cè)試配置,服務(wù)重啟,修改JVM參數(shù)等操作,會(huì)涉及到一些linux的知識(shí),但是一直沒(méi)有系統(tǒng)完整的學(xué)習(xí),打算最近按照...
前言 從年初開(kāi)始整理學(xué)習(xí)文章已經(jīng)大半年了,也發(fā)現(xiàn)學(xué)習(xí)會(huì)有一個(gè)不斷深入的過(guò)程,最開(kāi)始只是想簡(jiǎn)單記錄工作上已經(jīng)使用的工具類以及使用優(yōu)化經(jīng)驗(yàn),后來(lái)就拓展到源碼學(xué)習(xí)等,然后又拓展到在...
背景 我們之前已經(jīng)學(xué)習(xí)了Redis的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)存儲(chǔ),性能的分析,最后我們學(xué)習(xí)下集群就算簡(jiǎn)單學(xué)習(xí)了Redis的整體功能與結(jié)構(gòu)了,那么我們就正式進(jìn)行安裝了 安裝步驟 下載Re...
總結(jié) 前面整理了差不多六篇Mysql的文章知識(shí),算是對(duì)日常公共中遇到的Mysql問(wèn)題以及原因的一個(gè)記錄和知識(shí)整理,后面會(huì)抽時(shí)間好好看看《MySQL技術(shù)內(nèi)幕》這本書,到時(shí)候也會(huì)...
背景 最近剛做了一個(gè)用戶簽到獲取獎(jiǎng)勵(lì)的需求,因?yàn)槭荰rip端即海外端,所以會(huì)需要考慮到時(shí)區(qū)的問(wèn)題,又用到了平時(shí)配置中會(huì)經(jīng)常使用到的關(guān)于生效時(shí)間問(wèn)題的LocalDate和Loc...