原创 RPC接口超時分析

在使用dubbo時,通常會遇到timeout這個屬性,timeout屬性的作用是:給某個服務調用設置超時時間,如果服務在設置的時間內未返回結果,則會拋出調用超時異常:TimeoutException,在使用的過程中,我們有時會對provi

原创 Dubbo使用入門

一、SOA和RPC介紹 1、SOA 隨着互聯網的發展,應用規模不斷擴大,應用之間的交互不可避免,這時將核心業務抽取出來,作爲獨立的服務,用於提高業務複用及整合,逐漸形成了分佈式服務架構。 當服務越來越多,容量的評估,小服務資源的浪費等問

原创 Dubbo SPI擴展機制

引言 SPI 全稱爲 Service Provider Interface,是一種服務發現機制。SPI 的本質是將接口實現類的全限定名配置在文件中,並由服務加載器讀取配置文件,加載實現類。這樣可以在運行時,動態爲接口替換實現類。正因此特性

原创 SpringBoot+Dubbo構建微服務

隨着互聯網的發展,網站應用的規模不斷擴大,常規的垂直應用架構已無法應對,分佈式服務架構以及流動計算架構勢在必行,亟需一個治理系統確保架構有條不紊的演進。 一、先來一張圖 說起 Dubbo,相信大家都不會陌生!阿里巴巴公司開源的一個高性能優

原创 IDEA設置默認Maven

idea設置默認maven配置, 避免每次設置maven Step 1:Other Setting--->Default Settings--->設置maven--->Apply--->OK                        

原创 ThreadLocal技術分享

學習一個東西首先要知道爲什麼要引入它,就是我們能用它來幹什麼。所以我們先來看看ThreadLocal對我們到底有什麼用,然後再來看看它的實現原理。 ThreadLocal如果單純從名字上來看像是“本地線程"這麼個意思,只能說這個名字起的確

原创 Spring Boot基於JUint5實現單元測試

本文介紹 Spring Boot 2 基於 JUnit 5 的單元測試實現方案。 目錄 簡介 JUnit 4 和 JUnit 5 的差異 忽略測試用例執行 RunWith 配置 @Before、@BeforeClass、@After、@

原创 Dubbo問題總結

一、Dubbo是什麼? Dubbo是阿里巴巴開源的基於 Java 的高性能 RPC(一種遠程調用) 分佈式服務框架(SOA),致力於提供高性能和透明化的RPC遠程服務調用方案,以及SOA服務治理方案。 二、爲什麼要用Dubbo? 因爲是阿

原创 IntelliJ IDEA創建SpringBoot工程

本文介紹了 IntelliJ IDEA (Version 2017.3.3) 創建 Spring Boot 工程的過程。 1 創建新項目,在 IntelliJ IDEA 歡迎界面點擊 Create New Project   2 在 N

原创 MySQL啓動服務提示系統找不到指定文件

Mysql啓動服務: C:\Windows\system32>net start mysql 發生系統錯誤 2。 系統找不到指定的文件。 怎麼還是報這個錯?難道不是由於配置的原因?對,不是由於上面的配置的問題,但上面的配置添加後也沒有錯。

原创 經典的數據庫問題

一、爲什麼用自增列作爲主鍵 1、如果我們定義了主鍵(PRIMARY KEY),那麼InnoDB會選擇主鍵作爲聚集索引、如果沒有顯式定義主鍵,則InnoDB會選擇第一個不包含有NULL值的唯一索引作爲主鍵索引、如果也沒有這樣的唯一索引,則I

原创 如何利用http緩存機制

Web 緩存大致可以分爲:數據庫緩存、服務器端緩存(代理服務器緩存、CDN 緩存)、瀏覽器緩存。 瀏覽器緩存也包含很多內容:HTTP 緩存、indexDB、cookie、localstorage 等等。這裏我們只討論 HTTP 緩存相關內

原创 SpringAOP實現方式

一、AOP是什麼? AOP(Aspect Orient Programming),我們一般稱爲面向方面(切面)編程,作爲面向對象的一種補充,用於處理系統中分佈於各個模塊的橫切關注點,比如事務管理、日誌、緩存等等。AOP實現的關鍵在於AOP

原创 Mysql慢查詢優化

開啓 MySQL 慢查詢日誌 一個起步就不簡單的原因是,我們如何才能定位到那些真正形成瓶頸的慢查詢。一個普通項目中的 SQL 可能就有大幾十甚至上百個,而「兇手們」就藏匿其中。 一個樸素的想法是在項目中每一個 SQL 執行前後打上時間戳來

原创 ActiveMQ:設置多個並行的消費者

消息隊列本來就是一種經典的生產者與消費者模式。生產者向消息隊列中發送消息,消費者從消息隊列中獲取消息來消費。     消息的傳送一般由一個代理來實現的,那就是Message broker(即消息代理)。Message broker有兩大職