当前位置: 首页 > article >正文

dolphinscheduler服务RPC框架源码解析(八)RPC提供者服务整合Spring框架实现

RPC提供者服务整合Spring框架实现

  • 1.概述
  • 2.整合设计
    • 2.1.设计分析
    • 2.2.实现类关系设计
  • 3.整合实现
    • 3.1.WorkerServer启动
    • 3.2.WorkerRpcServer启动
    • 3.3.SpringServerMethodInvokerDiscovery类
    • 3.4.扫描注册RPC提供者的ServerMethodInvoker对象
    • 3.5.谁来执行扫描注册
    • 3.6. 注册ServerMethodInvoker对象
  • 4.总结

1.概述

通过前面的RPC框架源码系列的文章我们基本已经梳理了一个通用的RPC框架需要具备的核心功能。并通过源码进行这个设计实现流程的整体解析熟悉。本篇文章我们主要说的还是RPC框架如何与Spring框架进行整合。
Spring是Java Web领域中最流行且最被广泛使用的框架,如果RPC框架需要使用在真实生产场景中,最好是能够支持与Spring框架框架整合。
在dolphinscheduler的RPC框架设计中,RPC消费者端提供了单例工厂类可以快速通过创建RPC服务接口代理对象, 所以基本不需要与Spring框架进行过多的整合, 这里和Spring框架进行整合主要说的还是RPC提供者服务与Spring框架的整合实现。

2.整合设计

2.1.设计分析

当时我们在进行RPC提供者服务的设计实现时遗留了一块儿内容, 就是关于RPC提供者服务关于@RpcService注解和@RpcMethod注解的解析扫描实现及如何与Spring框架进行整合的内容。 今天我们主要讲的就是这部分内容。
大家来思考一下, 如果要你去设计,你觉得应该怎么设计呢?

1)首先被@RpcService注解的接口被定义成了RPC服务接口,被@RpcService注解的接口中被@RpcMethod注解的抽象方法就被定义成了RPC方法,需要进行远程调用。


http://www.kler.cn/a/445521.html

相关文章:

  • 武汉市电子信息与通信工程职称公示了
  • 【Tomcat】第六站(最后一站啦!):数据的返回
  • 空天地遥感数据识别与计算--数据分析如何助力农林牧渔、城市发展、地质灾害监测等行业革新
  • 青少年编程与数学 02-004 Go语言Web编程 01课题、Web应用程序
  • 国内主流数据库介绍及技术分享
  • ELK部署
  • React-antd组件库 - 让Menu子菜单项水平排列 - 下拉菜单排序 - 自定义子菜单展示方式
  • 电商后台革命:RPA 自动化商品信息录入与更新【52rpa.com】
  • MongoDB常见面试题总结(上)
  • 用链表的详解和综合应用——实现链表的创建、输出、删除及添加结点(C语言)
  • VR线上展厅的色彩管理如何影响用户情绪?
  • 【踩坑】Pytorch与CUDA版本的关系及安装
  • 基于Spring Boot的房屋租赁管理系统
  • 在 Ubuntu 上安装 Muduo 网络库的详细指南
  • 巧记斜边函数hypot
  • JavaScript网络请求( XMLHttpRequest 对象,进度事件, 跨源资源共享)
  • express+mysql实现注册功能
  • NPM国内镜像源多选择与镜像快速切换工具(nrm)介绍
  • 慢牛提速经典K线形态-突破下跌起始位和回档三五线,以及徐徐上升三种形态
  • 软件工程
  • iPhone通话记录生成器,苹果一键生成通话记录,手机ios制造专家
  • 差分矩阵(Difference Matrix)与累计和矩阵(Running Sum Matrix)的概念与应用:中英双语
  • [NOIP2004 提高组] 合并果子-STL容器优先队列priority_queue
  • Apache Solr RCE(CVE-2019-0193)--vulhub
  • Linux里的interface index是按顺序来的吗?[ChatGPT]
  • 【JavaEE初阶】线程 和 thread