原创 獲取spring容器IOC核心容器

ApplicationContext的三個常用實現類 classPathXmlApplicationContext: 它可以加載路徑下的配置文件,要求配置文件必須在類路徑下。不在的話加載不了 FileSystemXmlAppli

原创 分佈式系統中BASE理論

BASE是對CAP中一致性和可用性權衡的結果,其來源於對大規模互聯網系統分佈式實踐的結論,是基於CAP定理逐步演化而來的,其核心思想是即使無法做到強一致性(Strong consistency),但每個應用都可以根據自身的業務特點

原创 jdk動態代理和cglib動態代理實現

1、JDK動態代理實現 代碼: 接口類 public interface IProductProducer { void saleProduct(Float money); } 實現類 public interf

原创 Spring的依賴注入 DI

依賴注入(DI)和控制反轉(IoC)是從不同的角度描述的同一件事情,就是指通過引入IoC容器,利用依賴關係注入的方式,實現對象之間的解耦 依賴注入方式: 1、構造方法注入 2、setter方法注入 3、接口注入 4、複雜類型(集合

原创 Spring純註解實現聲明式事務

實現Spring聲明式事務步驟: 以下爲具體代碼實現: 1、代碼結構 2、pom文件導入依賴jar包 <dependency> <groupId>org.springframework</groupId>

原创 分佈式事務解決方案以及常用框架

解決方案 兩階段提交(2PC/XA) 兩階段提交又稱2PC,2PC是一個非常經典的強一致、中心化的原子提交協議。 這裏所說的中心化是指協議中有兩類節點:一個是中心化協調者節點(coordinator)和N個參與者節點(part

原创 dubbo+zookeeper+hystrix整合springBoot

dubbo+zookeeper+hystrix整合springBoot 詳細環境搭建可以看我前兩篇文章,此文只簡單介紹下融合Hystrix 傳送門: dubbo+zookeeper環境搭建 dubbo+zookeeper整合spr

原创 Spring bean的創建方式 作用域 生命週期

創建對象的三種方式: 1、採用默認的構造函數創建 2、採用靜態工廠方法 1、寫一個靜態工廠方法類 public class HelloWorldFactory { public static HelloWorld getIn

原创 Spring事件監聽實現

1、代碼結構 2、pom文件引入必要jar包 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context<

原创 linux查詢日誌命令總結

linux查詢日誌命令總結 【背景】 排查線上環境問題,少不了去線上查日誌。而使用什麼命令,能快速準確地查到我們需要查找地日誌信息,也是我們需要掌握的一項技能。 【命令】 Linux查看命令有多種:tail,head,cat,ta

原创 Spring純註解實現AOP

1、pom文件中導入相關依賴 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifact

原创 IDEA創建SpringBoot項目過程

IDEA創建SpringBoot項目過程 1、點擊新建project 2、選擇spring Assistant創建項目 注:如沒有該選項,請在setting>plugins搜索Spring Assistant並instal

原创 全文搜索引擎ES的讀寫刪除過程

1、寫過程 ES一般是分佈式多實例部署,大概寫的過程如下圖: 1、當客戶端發送一條document過來時,會隨機找一個進程,被選中的進程會成爲協調節點; 2、協調節點將這條document路由到指定的節點,然後寫到primar

原创 全文檢索Lucene的使用

推薦一篇比較好的文章,我就不多贅述,看了就能入門 跳轉連接

原创 圖解MQ面試_死亡連環炮_再也不怕MQ了

面試題三:如何選型MQ 市面上的MQ有多種,如何選擇合適自己項目的MQ呢? 現在常用的的MQ有ActiveMQ,RabbitMQ,RocketMQ,ZeroMQ,Kafka。網上比較這幾種MQ的文章有很多,大家可以去參考下