版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、DSF分布式服务框架设计,技术创新,变革未来,目录,DSF产生背景,DSF介绍 服务治理实践,背景, 统一服务框架,多服务框架:58同城RPC框架、Dubbo框架、 维护成本高 统一服务治理 注册中心、监控、流控、调用跟踪,DSF介绍, RPC框架核心流程,Service,网络通讯(send、receive),Client RetObj retObj=proxy.fun(a, b) 接口代理,序列化,协议,接口实现(线程池中调用真实服务),协议,网络通讯,2.入参对象序列化,5.从协议包中获取 结果对象流,1.创建服务代理对象,6.反序列化为结果对象,协议包 数据流,1.接收协议包数据 交给协
2、议层处理,2.从协议包中获取,接口签名和入参对象流,3.反序列化为入参对象4.返回服务结果对象,5.结果对象序列化,3.将协议版本,协议类型, 序列化方式,序列化结果对象流等, 组成一个协议包,交给通讯层,3.将协议版本,协议类型, 序列化方式,方法签名,入参对象流等, 4.接收协议包数据 组成一个协议包,交给通讯层发送交给协议层处理,DSF介绍 整体架构,DSF Client,Java动态代理,负载均衡,网络通讯,上下文管理,DSF序列化,DSF协议,DSF Server(容器),网络通讯,过滤器,异步处理 监控权限,Dtracker plugin DSF注册中心,DSF服务治理管理平台,D
3、SF介绍 协议,定长包头(公共属性) + 变长包体(业务扩展),DSF介绍, 序列化 四元组(参考BER(basic encoding rules): 类型、对象总字节长度、对象属性序号、对象属性值,589,List typeid,List size,element1,String name;,sortid=3,2typeid length,element2,length,typeid,List对象序列化样例:,DSF介绍, 跨语言、跨平台,客户端,Java 客户端 DSF序列化 DSF协议,C & C+ 客户端 DSF序列化 DSF协议,TCP长连接,服务端(Java DSF容器) DSF序
4、列化 DSF协议,客户端、服务端,使用相同的序列化和协议,DSF介绍, 高可用 服务多节点部署 健康检查 过载丢弃(请求阈值) 服务平滑重启 降级处理 客户端重试机制&故障转移 客户端超时处理,DSF介绍, 负载均衡 静态权重配置; 服务节点动态请求超时权重调整; 安全性 IP黑白名单 方法调用授权 服务分组,DSF介绍, 易用性 运维部署 bin(启动脚本,全局配置文件) |-dsf(启动脚本) |-dsf_config.xml |-dsf_log4j.xml README(相关说明) docs(文档) log( 日 志 文 件 ) lib(DSF容器自身依赖的jar) service |-
5、lib(服务依赖的公共jar) |-deploy(DSF服务部署目录) |-paycenter(支付中心服务) |-paycenter.1.0.0.jar |-dsf_config.xml |-dsf_log4j.xml |-order(订单服务) |-order.1.0.0.jar |-dsf_config.xml |-dsf_log4j.xml,DSF介绍, 易用性 实时监控 count|second num|method methodName show method call times in num seconds second : in num seconds statistics
6、once (numdefault 1) method : for statistics method example : count example : count|second 3|method getInfo,time|grep abc|column -tkda show method execute time grep : condition column : show column a-all t-time k-key d-description example: time|grep getInfo example: time|grep getInfo|column -tk,help
7、* show help,quit,* quit monitor,jvm option time count *option: -gcutil: detection heap memory usage -class : load class -gcheap: heap memory used and committed -memory:JVM memory used -heap :Virtual Machineheap memory used -noheap:Virtual Machine noheap memoryused -thread: thread counts time : time
8、milliseconds apart test again count : detection count times example: jvm -gcutil example: jvm -gcutil 1000 example: jvm -gcutil 1000 5,exec|top |netstat -na exec command (at present only allow:top or netstat) example: exec|top,DSF介绍, 易用性 开发简单 服务端(接口定义、接口实现、序列化实体类),客户端(配置加载、创建客户端代理、调用远程接口),服务治理, 注册中心
9、,3 notify,2 subscribe,1 register,Registry Cluster,Client,Server,4 invoke,Server node config, 发布& 订阅机制 服务增、删节点,对服务消费方透明; 方便做分组管理和安全策略; 服务健康状况监测 TCP长连接、心跳监测; 高可用 注册中心HA; 客户端本地配置,服务治理, 流控 阈值告警,超过流控阈值80%; 波动告警; 手动快速扩容(自动扩容); 流控阈值在线调整,实时生效;,服务治理, 调用跟踪系统(Dtracker) 基于日志的分布式调用跟踪系统,web框架,service框架,cache客户端,D
10、b-tool,日志收集 平台,日志组件,日志组件,日志组件,日志组件,调用信息 traceid, spanId,IP地址,系统类型, URL或接口,执行耗时.,调用信息,调用信息,息,调用信,kafka,HDSF,ES,调用链Web后台,服务治理, 调用跟踪系统(Dtracker),机器2,机器I,web-application traceid:”unique_id” spanId:”0”,serviceAProxy spanId:”0.1”,serviceBProxy spanId:”0.2”,serviceCProxy spanId:”0.3”,ServiceA traceid:”unique_id” spanId:”0.1.1,traceid:unique_id” spanId:”0.1,Cache-Client traceid:”unique_id” spanId:”0.1.1.1,DB-too
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年建行竞聘笔试题目及答案
- 2026年医院消防安全责任人任命书
- 2026年科研项目经费管理及财务验收细则
- 安徽省合肥市四校2026届高三上学期12月联考调研适应性测试数学试题
- 餐饮服务与管理试题及答案
- 2026仪器分析考试题型及答案
- 术中麻醉深度波动的原因与应对措施研究
- 智能病房灯光与节律调节
- 智能审核技术在医保基金监管中的应用
- 智慧医院IT资源投入的ROI评估模型
- 关节损伤康复培训课件
- 英语专业四级考试词汇重点
- 2026年中考物理全真模拟试卷及答案(共五套)
- 气象局数据安全制度规范
- 肝内胆管癌护理查房
- 肺结核诊疗指南(2025版)
- 纪委书记岗位面试题集
- 汉字复合笔画课件
- 工装保洁合同协议
- 电池PACK生产项目商业计划书
- 2026上药控股有限公司校园招聘(公共基础知识)综合能力测试题附答案解析
评论
0/150
提交评论