资讯专栏INFORMATION COLUMN

XXL-RPC v1.2.0,分布式服务框架

Taonce / 2536人阅读

摘要:现已开放源代码,开箱即用。解决问题传统分布式通讯一般通过或做集群服务的流量负载均衡,如,每次请求在到达目标服务机器之前都需要经过负载均衡机器,即,这将会把流量放大一倍。

新特性

1、核心模块重度重构:模块化划分、包名重构;

2、轻量级/模块化改造:移除对具体组件的依赖,如ZK、Netty、Mina等,改为可选扩展方式;

3、支持多种请求方式,如:SYNC、ONEWAY、FUTURE、CALLBACK 等;

4、各模块扩展改为非强制依赖:扩展依赖需要多带带进行 maven 引入(provided类型);提供强制依赖最小精简选型组合 "jetty + hessian + 无注册中心";

5、服务AccessToken鉴权;

6、支持HTTP异步请求,线程优化,统一通讯流程;

7、可选ZK注册中心重构,不依赖配置文件,通过代码初始化;

8、可选ZK注册中心初始化逻辑优化,避免并发初始化,阻塞至TCP连接创建成功才允许后续操作;

9、推送core到maven中央仓库;

10、服务注册逻辑优化,旧方案以 "iface" 接口包名进行服务注册, 改为结合 "iface + version" 作为 serviceKey 进行注册,便于接口多服务复用;

简介

XXL-RPC 是一个分布式服务通讯框架,提供稳定高性能的RPC远程服务调用功能。现已开放源代码,开箱即用。

特性

1、快速接入:接入步骤非常简洁,两分钟即可上手;

2、服务透明:系统完整的封装了底层通信细节,开发时调用远程服务就像调用本地服务,在提供远程调用能力时不损失本地调用的语义简洁性;

3、多调用方案:支持 SYNC、ONEWAY、FUTURE、CALLBACK 等方案;

4、多通讯方案:支持 TCP 和 HTTP 两种通讯方式进行服务调用;其中 TCP 提供可选方案 NETTY 或 MINA ,HTTP 提供可选方案 Jetty;

5、多序列化方案:支持 HESSIAN、HESSIAN1、PROTOSTUFF、JSON 等方案;

6、注册中心:可选组件,支持服务注册并动态发现;未启用注册中心时,支持直接指定服务提供方机器地址通讯;原生提供 local 与 zookeeper 两种服务注册中心可选方案;

7、软负载均衡及容错:服务提供方集群注册时,在使用软负载算法进行流量分发;

8、容错:服务提供方集群注册时,某个服务节点不可用时将会自动摘除,同时消费方将会移除失效节点将流量分发到其余节点,提高系统容错能力。

9、解决1+1问题:传统分布式通讯一般通过nginx或f5做集群服务的流量负载均衡,如hessian,每次请求在到达目标服务机器之前都需要经过负载均衡机器,即1+1,这将会把流量放大一倍。而XXL-RPC将会从消费方直达服务提供方,每次请求直达目标机器,从而可以避免上述问题;

10、服务治理:提供服务治理中心,可在线管理注册的服务信息,如管理服务节点、节点权重等;(计划中)

11、服务监控:可在线监控服务调用统计信息以及服务健康状况等(计划中);

文档地址

中文文档

技术交流

社区交流

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/71893.html

相关文章

  • XXL-RPC v1.4.0,布式服务框架

    摘要:路由更新不及时问题修复默认长度调整为客户端配置优化升级依赖版本,如等简介是一个分布式服务框架,提供稳定高性能的远程服务调用功能。拥有高性能分布式注册中心负载均衡服务治理等特性。 Release Notes 1、LRU路由更新不及时问题修复; 2、JettyClient Buffer 默认长度调整为5M; 3、Netty Http客户端配置优化; 4、升级依赖版本,如netty/min...

    only_do 评论0 收藏0
  • XXL-JOB v2.0.2,布式任务调度平台

    摘要:底层通讯方案优化升级较新版本,由方案调整为方案,执行器内嵌提供服务,调度中心复用容器端口提供服务任务告警逻辑调整,改为通过扫描失败日志方式触发。 v2.0.2 Release Notes 1、底层通讯方案优化:升级较新版本xxl-rpc,由JETTY方案调整为NETTY_HTTP方案,执行器内嵌netty-http-server提供服务,调度中心复用容器端口提供服务; 2、任务告警逻...

    lily_wang 评论0 收藏0
  • XXL-JOB v2.1.0,布式任务调度平台

    摘要:自研调度组件,移除依赖一方面是为了精简系统降低冗余依赖,另一方面是为了提供系统的可控度与稳定性触发单节点周期性触发,运行事件如调度集群竞争,负载方式协同处理,锁竞争更新触发信息推送时间轮锁释放锁竞争底层表结构重构移除张相关表,并对现 v2.0.2 Release Notes 1、自研调度组件,移除quartz依赖:一方面是为了精简系统降低冗余依赖,另一方面是为了提供系统的可控度与稳...

    GitChat 评论0 收藏0
  • 【开源】SpringBootNetty聊天室V1.2.0升级版本介绍

    摘要:前言微服务微架构的基础,通信框架的元老级别框架,即之前的与的实现聊天室的功能后已经过了不到一周的时间啦,今天我们更新了项目版本从到的升级。 前言 SpringBoot!微服务微架构的基础,Netty通信框架的元老级别框架,即之前的SpringBoot与Netty的实现聊天室的功能后已经过了不到一周的时间啦,今天我们更新了项目版本从V1.0.0到V1.2.0的升级。 介绍 升级要点一:前...

    wanglu1209 评论0 收藏0
  • XXL-JOB v2.0.0 发布,布式任务调度平台

    v2.0.0 Release Notes 1、调度中心迁移到 springboot; 2、底层通讯组件迁移至 xxl-rpc; 3、容器化:提供官方docker镜像,并实时更新推送dockerhub(docker pull xuxueli/xxl-job-admin),进一步实现产品开箱即用; 4、新增无框架执行器Sample示例项目 xxl-job-executor-sample-framel...

    Edison 评论0 收藏0

发表评论

0条评论

Taonce

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<