电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>RabbitRpc基于spring cloud的微服务rpc调用

RabbitRpc基于spring cloud的微服务rpc调用

2022-06-14 | zip | 0.12 MB | 次下载 | 2积分

资料介绍

授权协议 Apache
开发语言 Java
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发微服务框架

软件简介

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包的根路径。

如上配置完成就可以像本地方法一样使用远程服务了。

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1NB-IoT芯片厂商的资料说明
  2. 0.31 MB   |  22次下载  |  1 积分
  3. 2智慧监狱建设的核心终端—智慧监仓屏
  4. 0.25 MB   |  2次下载  |  免费
  5. 3PC318C016M/D 200V半桥栅极驱动器技术手册
  6. 0.77 MB   |  2次下载  |  免费
  7. 45.0SMDJ200A单向TVS瞬态抑制二极管规格书
  8. 0.88 MB   |  1次下载  |  免费
  9. 5PC318C041EQ 200V半桥栅极驱动器技术手册
  10. 0.50 MB   |  次下载  |  免费
  11. 6PC318C042NM 200V半桥栅极驱动器技术手册
  12. 0.55 MB   |  次下载  |  免费
  13. 7技嘉H110主板IT8628E_BX IO电路图资料
  14. 2.61 MB   |  次下载  |  1 积分
  15. 8H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
  16. 0.63 MB   |  次下载  |  1 积分

本月

  1. 1元宇宙深度解析—未来的未来-风口还是泡沫
  2. 6.40 MB  |  241次下载  |  免费
  3. 2元宇宙底层硬件系列报告
  4. 13.42 MB  |  184次下载  |  免费
  5. 32022 年展望報告 – 半導體產業
  6. 1.43 MB  |  136次下载  |  免费
  7. 4晶振与滤波器应用电路《电子工程师必备:元器件应用宝典》
  8. 1.57 MB  |  90次下载  |  免费
  9. 5汽车电子行业深度解析:智能化与电动化方兴未艾
  10. 6.47 MB  |  71次下载  |  免费
  11. 6中国DPU行业白皮书
  12. 23.80 MB  |  37次下载  |  免费
  13. 7晶科鑫代理线-微盟电子2021年度产品目录选型手册
  14. 14.75 MB  |  27次下载  |  免费
  15. 8NB-IoT芯片厂商的资料说明
  16. 0.31 MB   |  22次下载  |  1 积分

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935137次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420064次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233089次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191425次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183352次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81602次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73822次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65991次下载  |  10 积分