RPC中间件-HSF

article/2025/10/5 4:42:47

目录

目标

版本

需要考虑什么

服务发布与订阅的流程

发布与订阅的入口类

服务的元数据

注册流程图示

服务器端服务映射结构

服务订阅的流程图示

消费者端的映射结构

消费者调用服务的流程

服务代理

协议模板服务

协议服务

消费者调用服务的流程图示


目标

针对淘宝RPC中间件-HSF,个人选择性的阅读了源码,并绘制流程图,以便清晰展示重要流程,包括服务发布、服务订阅、服务调用。

版本

HSF 2.0
Netty 3.6.5

需要考虑什么

RPC需要考虑

网络框架 协议 序列化方式 服务发现机制

服务器端需要考虑

服务target路由 服务吞吐量(每个服务一个线程池) 过滤机制(代理)

客户端需要考虑

服务地址路由(接口名->方法名->参数维度) 过滤机制(代理)

服务发布与订阅的流程

发布与订阅的入口类

ProcessComponent

创建服务的发布者和消费者,控制整个发布流程和生成服务调用代理的流程

列举发布、订阅、创建代理的行为

public Object consume(ServiceMetadata metadata)
public void publish(ServiceMetadata metadata)
private <T> T createxxxDynamicProxy(final ServiceMetadata metadata, Class<?>[] classes)

服务的元数据

ServiceMetadata

HSF服务的元数据(如接口名称 版本 组名 超时 线程池等很多信息)

注册流程图示

服务器端服务映射结构

服务订阅的流程图示

消费者端的映射结构

消费者调用服务的流程

服务代理

通过服务代理进行服务调用,其中使用了过滤器

ProcessComponent.HSFServiceProxy implements InvocationHandler

主要行为

public Object invoke(Object proxy, Method method, Object[] args)
private Object trueInvoke(Method method, String methodName, Class<?>[] parameterTypes, Object[] args)

协议模板服务

j接口 RPCProtocolTemplateService

RPC协议模板服务,提供一些RPC协议的公用实现

实现类 RPCProtocolTemplateComponent

实现RPC协议调用时的共同部分,例如HSFRequest的组装,地址路由的获取、检查,监测信息的埋点,日志的处理等,最后转由各RPC协议的具体实现完成远程调用。

主要行为

invokeWithMethodObject(String protocol, ServiceMetadata metadata, Method method, String methodName,
Class<?>[] parameterTypes, Object[] args)

协议服务

接口 RPCProtocolService

RPC协议服务,负责最终发起远程调用

实现类 RemotingRPCProtocolComponent

基于HSFRemoting实现RPC,此为HSF默认采用的RPC机制

消费者调用服务的流程图示

方法调用链

选址与远程调用的流程图

 

对于dubbo和hsf两者孰优孰略,我没有进行过系统性对比。阿里的一些项目已经放在github上,未找到hsf。dubbo使用广泛,社区活跃丰富,所以选型时确定它,不需要更多的理由。

 

 

 

 

 

 

 

 


http://chatgpt.dhexx.cn/article/0t0vv8vH.shtml

相关文章

HSF学习

一、HFS简介 1、 HFS其本质是一种RPC框架&#xff0c;用于服务的远程调用&#xff0c;定义唯一服务三元素&#xff1a;接口&#xff08;serviceInterface&#xff09;、版本&#xff08;serviceVersion&#xff09;、组&#xff08;serviceGroup&#xff09;&#xff0c;类似m…

HSF概述

高速服务框架HSF&#xff08;High-speed Service Framework&#xff09;&#xff0c;是在阿里巴巴广泛使用的分布式RPC服务框架。 文章目录 概述HSF架构功能应用开发方式 概述 HSF连通不同的业务系统&#xff0c;解耦系统间的实现依赖。HSF从分布式应用的层面&#xff0c;统一…

HSF架构原理

一&#xff0e;HSF的基本概念 HSF全称为High-Speed Service Framework&#xff0c;旨在为淘系的应用提供一个分布式的服务框架&#xff0c;HSF从分布式应用层面以及统一的发布/调用方式层面为大家提供支持&#xff0c;从而可以很容易的开发分布式的应用以及提供或使用公用功能…

HSF用户指南

用户指南 HSF(High-speed Service Framework)&#xff0c;高速服务框架&#xff0c;是阿里系主要采用的服务框架&#xff0c;其目的是作为桥梁联通不同的业务系统&#xff0c;解耦系统之间的实现依赖。其高速体现在底层的非阻塞I/O以及优秀的序列化机制上&#xff0c;实现了同…

阿里巴巴分布式服务框架HSF

HSF称之为高速服务框架HSF&#xff08;High-speed Service Framework&#xff09;&#xff0c;是在阿里巴巴广泛使用的分布式RPC服务框架。 HSF连通不同的业务系统&#xff0c;解耦系统间的实现依赖。HSF从分布式应用的层面&#xff0c;统一了服务的发布与调用方式&#xff0c…

HSF的原理分析

一&#xff0e;HSF的基本概念 HSF全称为High-Speed Service Framework&#xff0c;旨在为淘系的应用提供一个分布式的服务框架&#xff0c;HSF从分布式应用层面以及统一的发布/调用方式层面为大家提供支持&#xff0c;从而可以很容易的开发分布式的应用以及提供或使用公用功能…

HSF框架基本介绍

HSF介绍 HSF全称high speed frameworkd,是Alibaba内部使用的RPC框架&#xff0c;最初与Dubbo进行内部竞争&#xff0c;由于多方面的原因最终选择了HSF。 主要原因如下&#xff1a; HSF代码量少一些&#xff0c;轻量一些&#xff0c;代码量大概2/3, Dubbo设计更加全面功能更多…

HSF简介

产品概述 HSF (High-speed Service Framework)&#xff0c;高速服务框架&#xff0c;是在阿里巴巴内部广泛使用的分布式 RPC 服务框架。 HSF 作为阿里巴巴的基础中间件&#xff0c;联通不同的业务系统&#xff0c;解耦系统间的实现依赖。HSF 从分布式应用的层面&#xff0c;统…

企业流程篇--项目管理(七)

线索到现金(LTC): 介绍: ​ LTC-- Lead To Cash。即从线索到现金,端到端的项目管理流程。 ​ 1)LTC涵盖从线索到现金的所有项目阶段,是销售、工程、服务等业务主流程和人事、财务、项目管理、业绩管理等管理流程的集成。 ​ 2)把目标聚焦于满足客户需求、可交付、可回…

一个完整的软件项目管理流程包括什么?有什么软件项目管理工具?

软件项目管理全流程&#xff0c;及各环节方法&#xff0c;辅助工具。 项目的类型不同&#xff0c;其流程必然会不一样&#xff0c;关于通用项目管理的流程其他回答讲述已经非常完善&#xff08;个人推荐这篇&#xff1a;泛项目管理流程包括哪些&#xff1f;&#xff09;&#…

系统集成项目管理工程师知识点集锦

系统集成项目管理工程师知识点集锦 1. 项目的特点有哪些&#xff1f;2. 项目的组织方式有哪些&#xff1f;分别具有什么优缺点&#xff1f;3. 项目管理过程组有哪些&#xff1f;4. 怎么样才能成为一位优秀的项目经理&#xff1f;5. PMO的主要职能有哪些&#xff1f;6. 项目经理…

第4章 项目整体管理 与 第16章 项目变更管理

第4章 项目整体管理 与 第16章 项目变更管理 了解项目管理知识体系叙述的结构 子过程、ITTO、过程组、知识领域 什么是项目整体管理(P-187) 了解 项目整体管理&#xff1a;包括为识别、定义、组合、统一和协调各项目管理过程组的各种过程和活动而开展的过程与活动。兼具统一、…

项目范围管理

> # 范围管理 过程 输入 输出 工具 技术 项目范围管理 6个过程 1.编制范围管理计划过程 定义、确认、控制项目范围的过程进行描述 2.收集需求 为实现项目目标&#xff0c;明确、记录项目干系人相关需求的过程 3.定义范围 详细描述产品范围和项目范围&#xff0c;编制项目范围…

项目研发管理流程

之前公司我除了带架构和业务研发团队&#xff0c;PMO也在我这边管理&#xff0c;对于200多人的研发团队&#xff0c;下面介绍下整个研发管理流程&#xff0c;瀑布式开发模式&#xff0c;虽然比较慢&#xff0c;不过很稳&#xff0c;适合传统企业。 1、立项阶段 发起人提出需求&…

项目管理复习题

蓝字位注释&#xff0c;红字为错误原因&#xff0c;紫字为重点 本复习题链接&#xff1a;https://pan.baidu.com/s/1ZJ4l6mKxAt9dqhw0Qa58xA 提取码&#xff1a;j4jz 笔记&#xff1a;https://blog.csdn.net/weixin_42139734/article/details/108661001 第一章 一、填空题…

项目管理第四章项目整合管理

项目管理第四章项目整合管理 项目整合管理&#xff1a;项目整合管理包括为识别、定义、组合、统一与协调项目管理过程组的各过程进项目管理活动而进行的各种过程和活动。项目整合管理包括以下选择&#xff1a;资源分配&#xff0c;平衡竞争需求&#xff0c;研究各种备选方案&a…

软件项目管理知识点总结

软件项目管理 第1章 软件项目管理概述1、项目的基本概念&#xff08;注意与日常运作的区分&#xff09;和特征&#xff1b;2、软件项目及特征&#xff1b;3、项目管理的基本概念&#xff1b;4、项目管理知识体系&#xff08;以2017年发布的PMBOK6的十个知识领域为准&#xff09…

项目管理工具推荐

文章目录 禅道官方说明功能特点 JIRA功能特点 TaigaWorktile功能特点 禅道 官方说明 禅道 项目管理软件 是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。 细分需求、任务、…

项目整体管理

> 项目整体管理 定义 是对项目管理过程组中的不同过程和活动进行识别、定义、整合、统一、协调的过程 负责管理项目的需求、范围、进度、成本、质量、人力资源、沟通、风险和采购 主要有6个过程 1.制定项目章程 编写项目章程的过程&#xff0c;通过发布项目章程&#xff0c;…

大学生创新项目管理系统

word完整版可点击如下下载>>>>>>>> 大学生创新项目管理系统.rar_创新项目管理系统-互联网文档类资源-CSDN下载内容包括详细设计文档word版&#xff0c;附带开题报告和相关PPT等文档&#xff0c;供大家参考学习。也可在本博客主页找到创新项目管理系统更…