原创 2019年終總結-堅持的力量

摘要 上一次年終總結是2016-12-31。一晃3年過去了。我也從一個初出茅廬的新人變成了一個職場老鳥。年末了,總結一下過去,展望一下未來。 關鍵詞 瓶頸、底層思考能力、堅持的力量 瓶頸 年紀越大,越發覺得人生的艱難,每個年齡段都

原创 初級算法-動態規劃(2)

之前在初級算法-動態規劃 一文中少寫了動態規劃的另外一種解法就是矩陣解法 遞歸問題可以使用非遞歸的方式表達出來,時間複雜度是O(n),使用矩陣解法時間複雜度O(logn) public static int climbStairs

原创 DDD-CQRS的落地案例

摘要 在之前的文章DDD-CQRS能解什麼問題中,闡述了什麼是CQRS。但是並沒有業務需求可以應用CQRS。最近需要處理一個文本增量更新的業務,經過需求分析後,嘗試使用CQRS來解這個問題 問題分析 一個文本頁面編輯,對象很大,之

原创 身體是自己的

摘要 在我25歲以前,幾乎沒去過醫院,最近兩年不知道爲啥,一年總要去幾次醫院。以前我對就醫這件事的記憶一直停留在某年的流感時期,感冒後去診所掛個水,掛完3瓶,然後回校繼續上學。最近兩年,因爲身邊的人出了一些意外,不得已去了幾次醫院

原创 包管理原則

摘要 坊間傳聞java web開發人員寫了那麼多代碼,但是其實一半代碼都在處理NPE。總是在加班,卻大部分時間都在處理包衝突,類加載不了的bug。這些問題總是讓新老程序員都很抓狂,有很多的工具可以輔助我們解決這些問題(maven

原创 http服務端架構演進

摘要 在詳解http報文相關文章中我們介紹了http協議是如何工作的,那麼構建一個真實的網站還需要引入組件呢?一些常見的名詞到底是什麼含義呢? 什麼叫正向代理,什麼叫反向代理 服務代理與負載均衡的差別 有了nginx,爲啥還需要

原创 如何做一個職業的程序員-《麥肯錫方法》讀書筆記

摘要 這本書主要講的是如何系統的解決問題,也就是方法論這種玄乎的東西。那麼到底實不實用的呢,還是說只是頂着麥肯錫這個世界知名的諮詢公司的光環,來販賣知識了,這得看過才知道。 這本書講了什麼 這本書很薄,先根據目錄索引,瞭解下大致講

原创 完整剖析SpringAOP的自調用

摘要 spring全家桶幫助java web開發者節省了很多開發量,提升了效率。但是因爲屏蔽了很多細節,導致很多開發者只知其然,不知其所以然,本文就是分析下使用spring的一些註解,不能夠自調用的問題。因爲本身這類文章很多,所以

原创 深入分析Mybatis 使用useGeneratedKeys獲取自增主鍵

摘要 我們經常使用useGenerateKeys來返回自增主鍵,避免多一次查詢。也會經常使用on duplicate key update,來進行insertOrUpdate,來避免先query 在insert/update。用起

原创 微服務API通過ip可訪問,域名不可訪問問題分析

摘要 經常會有同學遇到api通過ip可以訪問,但是通過域名卻不可以訪問。本篇文章總結了造成這種情況可能的原因。 因爲與具體技術的選型、規則配置有關,所以沒有深入討論,只是列出可能性,僅供參考。 分析 問題 通過域名訪問不到的請求表

原创 深入分析Elastic Search的寫入過程

摘要 之前寫過一篇ElasticSearch初識之吐槽,不知覺竟然過去了兩年了。哎,時光催人老啊。最近又用到了ES,想找找過去的總結文檔,居然只有一篇,搞了半年的ES,遇到那麼多的問題,產出只有這麼點,真是說不過去啊。只好又重新撿

原创 以Spring Cache擴展爲例介紹如何進行高效的源碼的閱讀

摘要 日常開發中,需要用到各種各樣的框架來實現API、系統的構建。作爲程序員,除了會使用框架還必須要了解框架工作的原理。這樣可以便於我們排查問題,和自定義的擴展。那麼如何去學習框架呢。通常我們通過閱讀文檔、查看源碼,然後又很快忘記

原创 java基礎(1)-幾種獲取類的擴展方式

摘要 在日常開發過程中經常需要獲取類的擴展集。即獲取類的子類集(抽象類),或者接口實現類。比如說狀態模式中,狀態構建類,策略模式中的,策略構造方式。本文介紹幾種獲取方式。 實現 以策略模式爲例 定義了2種策略 @Getter @A

原创 可落地的DDD(5)-戰術設計

摘要 本篇是DDD的戰術篇,也就是關於領域事件、領域對象、聚合根、實體、值對象的討論。也是DDD系列的完結篇。 這一部分在我們團隊爭論最多的,也有很多月經貼,比如對資源庫的操作應該放在領域服務還是領域對象中。 聚合根應不應該暴露給

原创 SQL IN 一定走索引嗎?

摘要 IN 一定走索引嗎?那當然了,不走索引還能全部掃描嗎?好像之前有看到過什麼Exist,IN走不走索引的討論。但是好像看的太久了,又忘記了。哈哈,如果你也忘記了MySQL中IN是如何查詢的,就來複習下吧。 問題 問題要從之前的