原创 Dubbo 自適應擴展機制-Adapative

簡介 在 Dubbo 中,很多拓展都是通過 SPI 機制進行加載的,比如 Protocol、Cluster、LoadBalance 等。有時,有些拓展並不想在框架啓動階段被加載,而是希望在拓展方法被調用時,根據運行時參數進行加載。這聽起來

原创 Dubbo 註冊中心

RegistryService /** * RegistryService. (SPI, Prototype, ThreadSafe) * * @see com.alibaba.dubbo.registry.Registry *

原创 Dubbo XML解析

Dubbo XML文件解析器主要DubboNamespaceHandler 完成。 public class DubboNamespaceHandler extends NamespaceHandlerSupport { sta

原创 Dubbo SPI機制

SPI簡介 站在一個框架作者的角度來說,定義一個接口,自己默認給出幾個接口的實現類,同時 允許框架的使用者也能夠自定義接口的實現。現在一個簡單的問題就是:如何優雅的根據一個接口來獲取該接口的所有實現類呢? JDK SPI 正是爲了優雅解決

原创 MySQL幻讀 以及GAP、Next-Key Locking

什麼是幻讀 phantom The so-called phantom problem occurs within a transaction when the same query produces different sets

原创 RocketMQ——NameServer 路由規則

RocketMQ路由註冊是通過Broker與NameServer的心跳功能實現。Broker啓動時向集羣中所有的NameServer發送心跳包,每隔30秒向集羣中的所有NameServer發送心跳,NamerServer收到心跳包會更新b

原创 InnoDB ACID模型

文檔:https://dev.mysql.com/doc/refman/5.7/en/mysql-acid.html ACID 模型是設計數據庫的基本原則。MySQL包含各種組件,比如InnoDB引擎,實現了ACID引擎,有效避免

原创 Java Agent基本簡介和使用

javaagent簡介 javaagent是一種能夠在不影響正常編譯的情況下,修改字節碼。java作爲一種強類型的語言,不通過編譯就不能能夠進行jar包的生成。而有了javaagent技術,就可以在字節碼這個層面對類和方法進行修改。同時,

原创 raft協議

資料 官方網站 https://raft.github.io/ 動畫示例 http://thesecretlivesofdata.com/raft/ 網易雲知乎 https://zhuanlan.zhihu.com/p/30706

原创 RocketMQ分佈式事務簡介

轉載 https://www.infoq.cn/article/2018/08/rocketmq-4.3-release 爲什麼需要分佈式事務 在微服務架構中,隨着服務的逐步拆分,數據庫私有已經成爲共識,這也導致所面臨的分佈式事

原创 容器化後 部署RocketMQ consumer instanceName重複?

現象 容器化後,不同的RocketMQ的consumer部署在同一個容器。某開發小年輕和我說會導致client的InstanceName重複。 解決 查看代碼 DefaultMQPushConsumerImpl#start if (t

原创 Dubbo 註冊遠程暴露服務

本地暴露和遠程暴露 dubbo官方針對本地暴露和遠程暴露的解釋文章較爲詳細。 簡答 總結如下: 從 2.2.0 版本開始,Dubbo 默認在本地以 injvm 的方式暴露服務,這樣的話,在同一個進程裏對這個服務的調用會優先走本地調用。 默

原创 RocketMQ——NameServer啓動流程

NameServer負責MQ消息的路由。生產者發送消息前,先從NameServer獲取broker列表,然後根據負載均衡算法,找到broker發送消息。 NameServer本地啓動流程 查看mqnameserv.sh腳本,我們看下核心的

原创 RocketMQ——消息發送

概述 RocketMQ消息發送方式:同步(sync)、異步(async)、單向(oneway) 消息Message簡介 org.apache.rocketmq.common.message.Message public class Me

原创 RocketMQ 同一JVM實例啓動多個不同NameServer 對應的Producer導致NameServer只連上一個的問題...

https://blog.csdn.net/doctor_who2004/article/details/83120396 https://blog.csdn.net/u012477338/article/details/81475659