- 1、功能特性
特性名 | 功能名 | 说明 |
服务订阅发布 | 配置化发布和引用服务 | 支持通过xml配置的方式发布和导入服务 |
服务自动发现机制 | 支持服务实时自动发现,由注册中心推送服务提供者地址,消费者不需要配置服务提供者地址,地址透明化 | |
服务在线注册和取消注册 | 支持运行态注册和取消服务 | |
服务路由 | 默认提供随机路由、轮询、基于权重的策略等 | |
粘滞连接 | 总是向同一个提供方发起调用 | |
路由定制 | 支持用户自定义路由策略 | |
集群容错 | Failover | 失败自动切换,当出现失败,重试其他服务器,常用于读操作及幂等性写操作 |
Failback | 失败自动恢复,后台记录失败请求,定时重发,常用于消息通知操作 | |
Failfast | 快速失败,只发起一次调用,常用于非幂等性写操作 | |
服务调用 | 同步调用 | 消费者发起服务调用后,同步阻塞等待服务端返回 |
异步调用 | 消费者发起服务调用后,不阻塞立即返回,由服务端返回应答后异步通知消费者 | |
并行调用 | 消费者同时对多个服务者提供批量发起服务调用请求,集中等待应答 | |
多协议 | 私有协议 | 支持二进制协议,可以定制和扩展 |
公有协议 | 提供WebService等公有协议 | |
序列化方式 | 二进制类序列化 | 支持Thrift、Protobuf buffer等二进制协议 |
文本类序列化 | 支持JSON和XML等文本类型的序列化方式 | |
统一配置 | 本地静态配置 | 安装部署修改一次,运行态不修改配置 |
基于配置中心的动态配置 | 运形态需要调整参数,统一放到配置中心 | |
- 2、性能特性
线性特性 | 说明 |
高性能 | 在同等资源占用下,单服务提供者的TPS要尽可能高 |
低时延 | 在同等资源占用下,服务调用时延要尽量低 |
性能线性增长 | 扩展服务提供者,性能要能够线性增长 |
- 3、可靠性
特性名 | 功能名 | 说明 |
服务注册中心 | 服务健康状态检测 | 注册中心通过心跳检测服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者 |
故障切换 | 注册中心对等集群,任意一台宕掉后,将自动切换到另一台 | |
高HA | 注册中心全部宕机后,服务提供者和消费者仍能通过本地缓存通信 | |
消除单点故障 | 服务无状态 | 服务提供者无状态 |
服务集群容错 | 只要集群中有一台可用,业务就不会中断 | |
链路健壮性 | 心跳检测 | |
断连重连机制 |
- 4、服务治理
特性名 | 功能名 | 说明 |
服务运行态管控 | 服务路由 | 业务高峰期,动态修改路由策略实现导流 |
服务限流 | 资源成为瓶颈时,服务端和消费端的动态流控 | |
服务迁入和迁出 | 实现资源的动态分配 | |
服务降级 | 服务提供者故障时或业务高峰时,进行服务强制或容错降级,执行本地降级逻辑,保证系统平稳运行 | |
服务超时控制 | 动态调整超时时间,在业务高峰期保证业务调用成功率 | |
服务监控 | 性能统计 | 统计项包括服务调用时延、成功率、调用次数等 |
统计报表 | 提供多维度、实时和历史数据报表,同比和环比等性能比对数据 | |
告警 | 指标异常,包括但不限短信、email、日志记录等 | |
服务生命周期管理 | 上线审批 | 需要通过正规的审批流程上线 |
下线通知 | 在下线某个服务前一段时间,需要根据SLA策略,通知消费者 | |
服务灰度发布 | ||
故障快速定界定位 | 分布式日志采集 | |
海量日志在线检索 | ||
调用链可视化展示 | ||
运行日志故障定位 | ||
服务安全 | 敏感服务的授权策略 | |
链路的安全防护 | 消费者和提供者之间的长连接,需要增加安全防护,例如基于Token的安全认证机制 |
相关推荐
"分布式服务框架dubbox学习总结" Dubbox是阿里巴巴公司开源的一个高性能优秀的分布式服务框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成。Dubbox实现了分布式远程调用框架,...
ZooKeeper是一种为分布式应用所设计的高可用、高性能且一致的开源协调服务框架,它可以实现同步服务,配置维护、命名服务、分布式锁等分布式基础服务。Zookeeper提供基于类似于文件系统的目录节点树方式的数据存储,...
C++是一种面向对象的...虚函数(virtual function)、运算符重载(Operator Overloading)、多重继承(Multiple Inheritance)、模板(Template)、异常(Exception)、RTTI、命名空间(Name Space)逐渐被加入标准。
基于 facebook 的 folly 和 wangle 开发的 c++ 分布式服务基础框架 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在提供更...
利用ICE通信中间件构建分布式应用程序开发框架 ICE(Internet Communications Engine)是一种用于分布式程序设计的网络通信中间件。其设计目标是提供一个适用于异种环境的面向对象中间件平台,支持广泛的领域中的...
基于C++,Protobuf实现,以Zookeeper为服务配置中心的分布式RPC通信框架 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在...
基于RPC服务的分布式TCP网络通信框架,基于muduo库和protobuf和zookeeper服务配置中心实现,在linux上用C++开发。 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室...
通过分析HLA仿真框架的不足,提出了一个基于网格服务的先进分布式仿真框架GADS,并在此基础上设计了一个负载平衡解决方案,随后重点描述了其中的负载平衡策略和基于仿真代理的高效邦员迁移算法。利用在GADS框架中...
基于C++实现的RPC分布式网络通信框架 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在提供更强大的编程能力,包括面向对象...
提出了一个新的基于大规模科学计算领域组件标准规范CCA(common component architecture)的大规模科学计算模型协同工作虚拟平台,即分布式高性能空间天气建模框架DHPA(distributed high performance architecture ...
ARK是由C ++编写的轻型,敏捷,弹性,分布式插件框架,可让您更轻松快捷地创建自己的应用程序服务。 受到UnrealEngine和Ogre的启发。 版权所有:copyright: 网站: : GitHub: : Gitee: ://gitee....
强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-based RL)和无模式强化学习(model-free RL),以及主动强化学习(active RL...
该框架实现了同一台机器的不同进程之间或不同机器之间的服务调用。它适用于将单体架构系统拆分为基.zip C++是一种面向对象的计算机程序设计语言,由美国AT&T贝尔实验室的本贾尼·斯特劳斯特卢普博士在20世纪80年代...
摘要:为了实现广域网中符合工业标准基于组件的应用程序中动态的可适应性,我们需要一种框架来在这样的环境里自动化地配置J2EE 应用程序。这种需要对于哪怕在单一的应用程序服务器上尝试部署J2EE应用的人来说也...
分布式服务/框架 功能 高可靠性 :支持分布式场景下,事务异常回滚,超时异常恢复,防止事务悬挂 易用性 :提供零侵入性式的 Spring-Boot, Spring-Namespace 快速与业务系统集成 高性能 :去中心化设计,与业务系统...
导语:SOA作为一种面向服务的架构,是一种软件架构设计的模型和方法论。从业务角度来看,一切以最大化“服务”的价值为出发点,SOA利用企业现有的各种软件体系,重新整合并构建起一套新的软件架构。这套软件架构能够...
分布式服务框架设计 可扩展的数据结构 利用开放平台建设网站生态圈 固若金汤:网站的安全架构 网站应用攻击与防御 XSS攻击 反射型 持久型 防御方法 消毒 httponly 注入攻击 SQL注入...
C++是一种面向对象的...虚函数(virtual function)、运算符重载(Operator Overloading)、多重继承(Multiple Inheritance)、模板(Template)、异常(Exception)、RTTI、命名空间(Name Space)逐渐被加入标准。
产品特点易于使用的面向界面的设计可扩展的插件框架,可让您的应用程序快速,轻松地运行干净,整洁的设计和稳定的发动机已在多种商业产品中使用高性能参与者模型(通过安全的线程池) 事件和属性驱动,使其易于维护...