原创 SpringCloud源碼:Ribbon負載均衡分析
本文主要分析 SpringCloud 中 Ribbon 負載均衡流程和原理。 SpringCloud版本爲:Edgware.RELEASE。 一.時序圖 和以前一樣,先把圖貼出來,直觀一點: 二.源碼分
原创 解決Eureka Server高可用搭建時報錯無法註冊問題
本機測試搭建Eureka Server的高可用環境,啓動後報錯如下: com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: 拒絕連接
原创 SpringBoot源碼:啓動過程分析(一) 原 薦
本文主要分析 SpringBoot 的啓動過程。 SpringBoot的版本爲:2.1.0 release,最新版本。 一.時序圖 還是老套路,先把分析過程的時序圖擺出來:時序圖-SpringBoot2.10啓動分
原创 Manjaro入坑記 原
沒忍住,換了Manjaro系統,目前使用良好。對開發人員友好,使用Docker等工具,比在Windows下方便多了。 一.製作Linux引導盤 使用的Linux引導盤製作工具是:Rufus,上傳到了這裏。 先介紹使
原创 單體應用和微服務淺析 原
最近兩年,微服務架構盛行,出現了一些優秀的微服務框架,如SpringCloud等。近來工作需要,接觸了部分微服務的內容,和之前的傳統開發模式不相同,進行對比,有所感。 首先是看一張簡單總結畫的圖: 一.單體應用
原创 Spring使用RedisTemplate存儲鍵值亂碼解決方案 原
最近在學習 SpringBoot 和 Redis 的集成,使用的時候發現一個問題:通過RedisTemplate存儲進去的鍵值都是16進制的亂碼: 127.0.0.1:6379> keys * 1) "\xac\xed\x00\x
原创 SpringBoot源碼:WebJars 原
在啓動App的時候,控制檯會輸出下面一行: Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.reso
原创 RocketMQ中順序消息示例 原
本文主要介紹RocketMQ中順序消息的Demo。 一.Producer的代碼 Producer在發送消息的時候,實現了一個自定義消息隊列選擇器 - MessageQueueSelector,使用消息ID與隊列大小取模,選
原创 零拷貝I:用戶模式視角 原 薦
英文原文地址:http://www.linuxjournal.com/article/6345。內容是關於 Zero Copy(零拷貝) 的詳細介紹。在RocketMQ的Consumer 消費消息過程,使用了零拷貝技術。作用是即使被頻繁調
原创 RocketMQ源碼:Producer啓動分析 原
本文主要分析RocketMQ中Producer的啓動過程。 RocketMQ的版本爲:4.2.0 release。 一.時序圖 根據源碼,把Producer啓動過程的時序圖畫了一遍: 二.源碼分析
原创 Markdown常用語法 原
一.標題 1.使用=和-標記一級和二級標題 一級標題 == 二級標題 -- 效果: 一級標題 二級標題 2.使用#,可表示1-6級標題 # 一級標題 ## 二級標題 ### 三級標題 #### 四級標題 ##### 五級標題 ##
原创 RocketMQ中Topic、Tag、GroupName的設計初衷 原 薦
本文主要介紹RocketMQ中Topic、Tag、GroupName的概念、設計初衷以及使用方法。 一.Topic 首先看看官方的定義: Topic是生產者在發送消息和消費者在拉取消息的類別。Topic與生產者和
原创 比較字節數組是否相同-最佳實踐 原
比較兩個字節數組是否相同: public static boolean isEqual(byte[] dataa, byte[] datab) { if (dataa == datab) return tr
原创 MongoDB基本命令 原
本文爲 MongoDB 基本命令,用來記錄學習。 一.插入與查詢 1.選擇(創建)數據庫 數據庫不存在就會創建。 --格式: use 數據庫名稱 --示例: use localdb 2.插入數據 集合不存在就
原创 分頁查詢Page的getSize與getTotalElements使用對比 原
開始用到SpringData分頁,在跟着資料寫項目的時候,看到分頁的數量和返回的不一致。 一.使用Page.getSize @RequestMapping(value = "/search/{page}/{size}",