資料介紹
軟件簡介
Spring Cloud RabbitRpc 是基于 spring cloud 的微服務 rpc 調用。
組件介紹
目前微服務應用和開發已經成為主流,遠程調用,服務治理方面我們通常有兩個選擇,spring cloud 和 ali 的dubbo,spring cloud 提供了非常容易上手的全家桶模式,也是目前很多公司的選擇,在遠程調用方面基于openfeign實現,底層邏輯是 http 協議,所以被一些人稱為偽 rpc,而選用 dubbo吧,生態不是很完整,ali 內部更多卻在使用HSF 和 dubbo從遠程調用方面和服務治理方面 HSF的用戶多一些,但是HSF沒有開源,ali 也出了 spring cloud alibaba 版本。但是在一些需求上面趨向于商業化,很多公司不想上船,在并發要求不是很高的環境下,基于 http 協議的遠程調用無可厚非,但是如果要構建高并發應用,http 協議的解析效率低,同步等待問題就成了遠程調用的性能瓶頸。很多公司為了滿足需求,也有spring cloud 和 dubbo并存的奇葩方案。
rabbitrpc 為解決這一需求而設計,既有dubbo的性能又能滿足在 spring cloud生態里輕松集成使用。
v1.0.0 版本 的 features。
1 支持與spring cloud 集成。
2 支持異步請求。
3 支持 eureka 注冊中心。
4 自定義 rabbit 協議,請求頭只有15個字節。
5 序列化 支持 hessian,后續會加入protolbuf實現
6 支持SPI 動態加載機制。
7 支持一個應用雙端口,支持rabbit,http雙協議,根據需要來選擇。
quick start
maven 引入 rabbitrpc-spring-boot-starte
com.yixiu.rabbitrpc
rabbitrpc-spring-boot-starter
1.0.0-SNAPSHOT
如果是服務端 1 需要提供api,需要定義如下,在提供的接口上添加注解配置。
@RabbitRpcClient(facadeId = "userService",facadeType = "com.yixiu.server.api.facade.UserFacade",name = "rabbitrpc-user-server",group = "rabbit")
public interface UserFacade {
/**
* 根據id 獲取一個用戶
* @param id
* @return
*/
User getUser(Long id);
}
一般常用配置解釋 facadeId:接口id facadeType:接口類型 name:服務名稱 group:分組名稱
2 在properties 文件添加如下配置
protocol.name=rabbit
protocol.port=20918
protocol.name 定義 rabbitrpc 要使用的協議,protocol.por 服務端開放監聽的端口號。
3 在spring boot 啟動入口,添加如下注解配置 @EnableRabbitRpcServices
@EnableEurekaClient
@EnableDiscoveryClient
@SpringBootApplication
@EnableRabbitRpcServices(basePackages = "com.yixiu.server.api")
public class RabbitRpcServerApplication {
public static void main(String[] args) {
SpringApplication.run(RabbitRpcServerApplication.class);
}
}
basePackages:接口定義包路徑
如果是客戶端
1 只需要將服務端提供的 api 引入,例如。
org.example
rabbitrpc-server-api
1.0-SNAPSHOT
2 在spring boot 啟動入口添加如下注解配置 @EnableRabbitRpcClients
@EnableEurekaClient
@EnableDiscoveryClient
@SpringBootApplication
@EnableRabbitRpcClients(basePackages = "com.yixiu.server")
public class RabbitClientApplication {
public static void main(String[] args) {
SpringApplication.run(RabbitClientApplication.class);
}
}
basePackages: 即api jar包的根路徑。
如上配置完成就可以像本地方法一樣使用遠程服務了。
- RuoYi-Cloud-Plus微服務通用權限管理系統
- Spring Cloud Function基于Spring Boot的函數計算框架
- cloud-platform基于Spring Cloud的微服務平臺
- 學習Spring Boot 嵌入式服務器
- 微服務軟件架構應用研究綜述 2次下載
- 微服務架構下圖規劃算法的改進方法 5次下載
- Python微服務開發的源代碼合集免費下載 3次下載
- python微服務開發的PDF電子書免費下載 69次下載
- 如何使用java調用web services詳細的三種方式資料說明 16次下載
- Dubbo源代碼實現服務調用的動態代理和負載均衡 0次下載
- 基于多目標優化的Docker微服務部署研究 0次下載
- 基于執行軌跡監測的微服務故障診斷 0次下載
- 微服務器的定義與未來數據中心的介紹 7次下載
- 使用Spring Cloud與Docker實戰微服務 7次下載
- spring教程ppt
- TSMaster RPC 基礎入門:編程指導和使用說明 921次閱讀
- Spring Cloud :打造可擴展的微服務網關 546次閱讀
- SpringCloud微服務架構:實現分布式系統的無縫協作 974次閱讀
- RPC接口和HTTP接口的區別與聯系 1908次閱讀
- 耦合到底意味著什么 853次閱讀
- RPC如何在遠程過程中調用? 926次閱讀
- Spring Cloud Sleuth到底給Zipkin都發送了哪些數據? 735次閱讀
- 微服務架構技術棧選型解讀 1651次閱讀
- 如何解決Spring Cloud下測試環境路由問題 1049次閱讀
- 用Spring Cloud Alibaba做了一個微服務架構的項目 1435次閱讀
- Spring Cloud Gateway服務網關的部署與使用詳細教程 1799次閱讀
- 介紹SpringCloud中三種服務調用方式 1550次閱讀
- 什么是微服務架構_微服務架構的優缺點及應用 1.7w次閱讀
- 聊一聊微服務的一些基礎架構,入門篇 3644次閱讀
- 什么是微服務和容器?微服務和容器的作用是什么 3.2w次閱讀
下載排行
本周
- 1九陽豆漿機高清原理圖
- 2.47 MB | 12次下載 | 1 積分
- 2數能NU501系列恒流芯片型號選型表
- 0.04 MB | 2次下載 | 免費
- 3AIWA J470維修手冊 (可直接打印)
- 3.16 MB | 2次下載 | 10 積分
- 4基于51/32單片機按鍵控制步進電機正反轉,A4988驅動
- 2.05 MB | 2次下載 | 1 積分
- 5STM32F10xxx單片機編程手冊
- 0.29 MB | 2次下載 | 免費
- 6HR1124S/9110S單通道低壓H橋電機驅動芯片中文手冊
- 1.30 MB | 1次下載 | 免費
- 7MOSFET講解-02(可下載)
- 263.46 KB | 1次下載 | 免費
- 8MOSFET講解-03(可下載)
- 501.18 KB | 1次下載 | 免費
本月
- 1晶體三極管的電流放大作用詳細說明
- 0.77 MB | 30次下載 | 2 積分
- 2雙極型三極管放大電路的三種基本組態的學習課件免費下載
- 4.03 MB | 23次下載 | 1 積分
- 3第十一屆 藍橋杯 單片機設計與開發項目 省賽 程序設計試題及源碼
- 90.88KB | 23次下載 | 3 積分
- 4Python從入門到精通背記手冊
- 18.77 MB | 22次下載 | 1 積分
- 5多級放大電路的學習課件免費下載
- 1.81 MB | 20次下載 | 2 積分
- 6STM32F103C8T6開發板最小系統原理圖
- 0.78 MB | 20次下載 | 免費
- 7九陽豆漿機高清原理圖
- 2.47 MB | 12次下載 | 1 積分
- 81875功放原理圖
- 0.04 MB | 11次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191382次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183337次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81585次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論