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

HSF 实现原理

HSF 实现原理

提供服务的流程

- server启动时候向ConfigServer注册

- client启动时候向ConfigServer请求list

- client缓存list,发现不可用的server,从缓存中remove

- ConfigServer通过心跳包维护可用server的list

- list有更新的时候,ConfigServer通过带version的报文通知client更新

- 需要远程调用的时候,则client通过缓存的list,根据当前的调用规则,选择适当的server服务器进行调用

HSF的实现方式可以理解为是C/S的架构,但是和传统的C/S架构相比还是有很大的不同,HSF没有真正的服务器,每个应用都可以成为服务的调用方和提供方。具体工作方式如下:

ConfigServer:远程调用对端的地址就是由ConfigServer 来推送的,这样用户只需要配置自己的服务端或者消费端,不需要对自己的地址进行管理。

Diamond:持久化的配置中心,用于配置服务调用的规则。

服务:服务是调用方和提供方交流的依凭,一般是一个接口,表示一个业务行为以及相关的数据含义。通过使用HSFApiProviderBean能够暴露一个服务,将机器的地址注册到configserver,并且能够通过12200端口进行服务提供,通过HSFApiConsumerBean能够包装出一个客户端,它是服务接口的一个代理,并且它从ConfigServer上订阅了服务的地址列表,能够在这个列表上完成随机调用,做到负载均衡与HA((High Available,高可用性群集)。

网络通信:HSF的底层网络通信是使用netty框架实现的,是基于epoll的NIO的网络通讯框架,HSF在此使用的是长连接,通过合理的服务部署及负债均衡,基本不存在I/O方面的限制。

 

Proxy:主要负责接口的代理。基本上所有的RPC框架都会用到代理模式,需要注意的是HSF的代理层还进行了软负载和单元化的处理。

Remoting:是HSF的应用层协议,定义了报文格式,各个字段的含义等信息。

Processor:主要是处理HSF自身的业务逻辑,包括埋点、限流、鉴权等。

相关文章:

  • 南通海洲建设集团网站/腾讯朋友圈广告投放价格
  • 嘉兴 网站建设/百度网盘登录入口官网
  • 太原网站建设找山西云起时/seo运营培训
  • 企业网站建设服务热线/营销策划公司 品牌策划公司
  • 艺术类网站模板/网站建设推广服务
  • 郑州网站建设yipinpai/策划书模板
  • CF1324F Maximum White Subtree
  • LeetCode 96. 不同的二叉搜索树
  • 冬至已至,你的在职读研2023能在社科院与杜兰大学金融管理硕士项目实现吗
  • 数据结构C语言版——链式二叉树的基本操作实现
  • 关联规则挖掘算法: Aprior算法和Fpgrowth算法
  • 加载速度提升 15%,关于 Python 启动加速探索与实践的解析 | 龙蜥技术
  • 基于SSM框架的高校教学设备管理系统 设计与实现
  • C语言刷题系列——14.(结构)计算两个复数之积15.按等级统计学生成绩16.根据成绩高低将学生记录排序
  • RV1126笔记四:人脸识别方案<二>
  • Qt属性系统(Qt Property System)
  • 2022年高新技术企业申报认定不通过原因解析参考建议
  • UDP多播:一对多数据收发