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

逆变根系
• 阅读 1531

Release Notes

  • 1、负载均衡/软负载:提供丰富的负载均衡策略,包括:轮询、随机、LRU、LFU、一致性HASH等;
  • 2、服务发现注册逻辑优化:支持批量注册、摘除,升级 xxl-registry 至 v1.0.1;
  • 3、新增jfinal类型示例项目 "xxl-rpc-sample-jfinal" 支持jfinal项目快速接入分布式RPC服务功能;高兼容性,原则上支持任务框架,甚至main方法直接运行;
  • 4、TCP通讯方案Server端Channel线程优化(线程参数=60/300/1000),避免IO线程阻塞于业务;
  • 5、TCP通讯方案Client端Channel线程优化(线程参数=10/100/1000),避免IO线程阻塞于callback业务;
  • 6、TCP通讯方案Client初始化逻辑优化;
  • 7、TCP长连销毁逻辑优化;
  • 8、底层Log整理,RPC报错时打印完整Log,包括请求地址,请求参数等;
  • 9、Server端销毁逻辑优化;
  • 10、static代码块优化,进行组件无状态优化:response factory等;迁移到invoke factory上来;
  • 11、升级多项pom依赖至较新稳定版本;

简介

XXL-RPC 是一个分布式服务框架,提供稳定高性能的RPC远程服务调用功能。拥有"高性能、分布式、注册中心、负载均衡、服务治理"等特性。现已开放源代码,开箱即用。

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

特性

  • 1、快速接入:接入步骤非常简洁,两分钟即可上手;
  • 2、服务透明:系统完整的封装了底层通信细节,开发时调用远程服务就像调用本地服务,在提供远程调用能力时不损失本地调用的语义简洁性;
  • 3、多调用方案:支持 SYNC、ONEWAY、FUTURE、CALLBACK 等方案;
  • 4、多通讯方案:支持 TCP 和 HTTP 两种通讯方式进行服务调用;其中 TCP 提供可选方案 NETTY 或 MINA ,HTTP 提供可选方案 Jetty;
  • 5、多序列化方案:支持 HESSIAN、HESSIAN1、PROTOSTUFF、JSON 等方案;
  • 6、负载均衡/软负载:提供丰富的负载均衡策略,包括:轮询、随机、LRU、LFU、一致性HASH等;
  • 7、注册中心:可选组件,支持服务注册并动态发现;可选择不启用,直接指定服务提供方机器地址通讯;选择启用时,内置可选方案:“XXL-REGISTRY 轻量级注册中心”(推荐)、“ZK注册中心”、“Local注册中心”等;
  • 8、服务治理:提供服务治理中心,可在线管理注册的服务信息,如服务锁定、禁用等;
  • 9、服务监控:可在线监控服务调用统计信息以及服务健康状况等(计划中);
  • 10、容错:服务提供方集群注册时,某个服务节点不可用时将会自动摘除,同时消费方将会移除失效节点将流量分发到其余节点,提高系统容错能力。
  • 11、解决1+1问题:传统分布式通讯一般通过nginx或f5做集群服务的流量负载均衡,每次请求在到达目标服务机器之前都需要经过负载均衡机器,即1+1,这将会把流量放大一倍。而XXL-RPC将会从消费方直达服务提供方,每次请求直达目标机器,从而可以避免上述问题;
  • 12、高兼容性:得益于优良的兼容性与模块化设计,不限制外部框架;除 spring/springboot 环境之外,理论上支持运行在任何Java代码中,甚至main方法直接启动运行;

文档地址

技术交流

点赞
收藏
评论区
推荐文章
Dubbo架构设计与源码解析(二) 服务注册
作者:黄金一、Dubbo简介Dubbo是一款典型的高扩展、高性能、高可用的RPC微服务框架,用于解决微服务架构下的服务治理与通信问题。其核心模块包含【RPC通信】和【服务治理】,其中服务治理又分为服务注册与发现、服务容错、负载均衡、流量调度等。今天将重点介
Stella981 Stella981
4年前
Spring Cloud套件
SpringCloud提供的服务  配置管理服务注册服务发现断路器负载均衡智能路由服务间调用一次性令牌微代理思维导图模板全局锁控制总线分布式式会话集群状态领导选举分布式消息  子项目功能说明SpringCloudConfig配置中心,利用git来集
Wesley13 Wesley13
4年前
J2EE分布式架构 dubbo+springmvc+mybatis+ehcache+redis分布式架构
平台简介       Jeesz是一个分布式的框架,提供项目模块化、服务化、热插拔的思想,高度封装安全性的JavaEE快速开发平台。      Jeesz本身集成Dubbo服务管控、Zookeeper注册中心、Redis分布式缓存技术、FastDFS分布式文件系统、ActiveMQ异步消息中间件、Nginx负载均衡等分布式技术      
Stella981 Stella981
4年前
Nepxion Discovery
NepxionDiscovery基于Nacos实现SpringCloud灰度发布和路由前言NepxionDiscovery是一款对SpringCloudDiscovery服务注册发现、Ribbon负载均衡、Feign和RestTe
Stella981 Stella981
4年前
Dubbo概述
一、什么是Dubbo        Dubbo是一个分布式框架,以及SOA治理方案。其主要功能包括:高性能DIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。它有5个节点,分别是Provider、Consumer、Registry、Monitor、Container。其中Prvider是服务提供者,C
Stella981 Stella981
4年前
SOFA 源码分析 — 负载均衡和一致性 Hash
!(https://oscimg.oschina.net/oscnet/76a9ee48bb4c7f7b344343922f049224d4d.png)前言SOFA内置负载均衡,支持5种负载均衡算法,随机(默认算法),本地优先,轮询算法,一致性hash,按权重负载轮询(不推荐,已被标注废弃)。一起看看他们的实现(重点还是一致性
Stella981 Stella981
4年前
Spring RSocket:基于服务注册发现的 RSocket 负载均衡
!(https://pic3.zhimg.com/80/v2230ff37a55e7b3b8223355c10baf99da_720w.jpg)RSocket分布式通讯协议是SpringReactive的核心内容,从SpringFramework5.2开始,RSocket已经是Spring的内置功能,SpringBoot2
Stella981 Stella981
4年前
Dubbo的负载均衡算法
\toc\1简介Dubbo提供了4种负载均衡机制:权重随机算法:RandomLoadBalance最少活跃调用数算法:LeastActiveLoadBalance一致性哈希算法:ConsistentHashLoadBalance加权轮询算法:RoundRobinLoadBalan
Easter79 Easter79
4年前
SpringCloud介绍
自己通俗的理解只能是Http协议调用,Dubbo可以支持多种协议就是RPC远程调用就是提供服务注册,服务发现,断路器,网关系统和自动配置的工具,底层采用http协议实现采用Eureka注册中Ribbon实现负载均衡Feignhttp协议调用工具Hystrix断路器Zuul网关系统就是把API服务通过注册中心
Stella981 Stella981
4年前
Ribbon远程调用
Ribbon是客户端的负载均衡机制,它有几种负载均衡机制。默认是轮询,我们也可以自定义规则。通过合理的分配网络请求来减小服务器的压力。项目都是注册到eureka服务器上(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fwlwl%2Fp%2F94733
解密负载均衡技术和负载均衡算法
什么是负载均衡技术负载均衡器是一种软件或硬件设备,它起到了将网络流量分散到一组服务器的作用,可以防止任何一台服务器过载。负载均衡算法就是负载均衡器用来在服务器之间分配网络流量的逻辑(算法是一组预定义的规则),有时候也叫做负载均衡的类型。负载均衡