資料介紹
軟件簡介
Spring Cloud RabbitRpc 是基于 spring cloud 的微服務 rpc 調(diào)用。
組件介紹
目前微服務應用和開發(fā)已經(jīng)成為主流,遠程調(diào)用,服務治理方面我們通常有兩個選擇,spring cloud 和 ali 的dubbo,spring cloud 提供了非常容易上手的全家桶模式,也是目前很多公司的選擇,在遠程調(diào)用方面基于openfeign實現(xiàn),底層邏輯是 http 協(xié)議,所以被一些人稱為偽 rpc,而選用 dubbo吧,生態(tài)不是很完整,ali 內(nèi)部更多卻在使用HSF 和 dubbo從遠程調(diào)用方面和服務治理方面 HSF的用戶多一些,但是HSF沒有開源,ali 也出了 spring cloud alibaba 版本。但是在一些需求上面趨向于商業(yè)化,很多公司不想上船,在并發(fā)要求不是很高的環(huán)境下,基于 http 協(xié)議的遠程調(diào)用無可厚非,但是如果要構(gòu)建高并發(fā)應用,http 協(xié)議的解析效率低,同步等待問題就成了遠程調(diào)用的性能瓶頸。很多公司為了滿足需求,也有spring cloud 和 dubbo并存的奇葩方案。
rabbitrpc 為解決這一需求而設計,既有dubbo的性能又能滿足在 spring cloud生態(tài)里輕松集成使用。
v1.0.0 版本 的 features。
1 支持與spring cloud 集成。
2 支持異步請求。
3 支持 eureka 注冊中心。
4 自定義 rabbit 協(xié)議,請求頭只有15個字節(jié)。
5 序列化 支持 hessian,后續(xù)會加入protolbuf實現(xiàn)
6 支持SPI 動態(tài)加載機制。
7 支持一個應用雙端口,支持rabbit,http雙協(xié)議,根據(jù)需要來選擇。
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 {
/**
* 根據(jù)id 獲取一個用戶
* @param id
* @return
*/
User getUser(Long id);
}
一般常用配置解釋 facadeId:接口id facadeType:接口類型 name:服務名稱 group:分組名稱
2 在properties 文件添加如下配置
protocol.name=rabbit
protocol.port=20918
protocol.name 定義 rabbitrpc 要使用的協(xié)議,protocol.por 服務端開放監(jiān)聽的端口號。
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微服務通用權限管理系統(tǒng)
- Spring Cloud Function基于Spring Boot的函數(shù)計算框架
- cloud-platform基于Spring Cloud的微服務平臺
- 學習Spring Boot 嵌入式服務器
- 微服務軟件架構(gòu)應用研究綜述 2次下載
- 微服務架構(gòu)下圖規(guī)劃算法的改進方法 5次下載
- Python微服務開發(fā)的源代碼合集免費下載 3次下載
- python微服務開發(fā)的PDF電子書免費下載 69次下載
- 如何使用java調(diào)用web services詳細的三種方式資料說明 16次下載
- Dubbo源代碼實現(xiàn)服務調(diào)用的動態(tài)代理和負載均衡 0次下載
- 基于多目標優(yōu)化的Docker微服務部署研究 0次下載
- 基于執(zhí)行軌跡監(jiān)測的微服務故障診斷 0次下載
- 微服務器的定義與未來數(shù)據(jù)中心的介紹 7次下載
- 使用Spring Cloud與Docker實戰(zhàn)微服務 7次下載
- spring教程ppt
- TSMaster RPC 基礎入門:編程指導和使用說明 921次閱讀
- Spring Cloud :打造可擴展的微服務網(wǎng)關 546次閱讀
- SpringCloud微服務架構(gòu):實現(xiàn)分布式系統(tǒng)的無縫協(xié)作 974次閱讀
- RPC接口和HTTP接口的區(qū)別與聯(lián)系 1908次閱讀
- 耦合到底意味著什么 853次閱讀
- RPC如何在遠程過程中調(diào)用? 926次閱讀
- Spring Cloud Sleuth到底給Zipkin都發(fā)送了哪些數(shù)據(jù)? 735次閱讀
- 微服務架構(gòu)技術棧選型解讀 1651次閱讀
- 如何解決Spring Cloud下測試環(huán)境路由問題 1049次閱讀
- 用Spring Cloud Alibaba做了一個微服務架構(gòu)的項目 1435次閱讀
- Spring Cloud Gateway服務網(wǎng)關的部署與使用詳細教程 1799次閱讀
- 介紹SpringCloud中三種服務調(diào)用方式 1550次閱讀
- 什么是微服務架構(gòu)_微服務架構(gòu)的優(yōu)缺點及應用 1.7w次閱讀
- 聊一聊微服務的一些基礎架構(gòu),入門篇 3644次閱讀
- 什么是微服務和容器?微服務和容器的作用是什么 3.2w次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費
- 4網(wǎng)絡安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護等級說明
- 0.08 MB | 次下載 | 免費
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設計指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論