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


Release Notes

  • 1、开源协议:由 GPLv3 调整为 Apache2.0 开源协议;
  • 2、路由策略:轮训路由策略代码优化,修复小概率下并发问题;
  • 3、代码重构:默认注册中心代码结构重构,废弃冗余 "biz" 属性;
  • 4、版本升级:依赖版本升级,如netty、spring、gson等;
  • 5、数据库编码:调整为utf8mb4;
  • 6、restful api:序列化组件调整为Gson;
  • 7、服务磁盘注册数据:序列化组件调整为Gson;

简介

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

 

特性

  • 1、快速接入:接入步骤非常简洁,两分钟即可上手;
  • 2、服务透明:系统完整的封装了底层通信细节,开发时调用远程服务就像调用本地服务,在提供远程调用能力时不损失本地调用的语义简洁性;
  • 3、多调用方案:支持 SYNC、ONEWAY、FUTURE、CALLBACK 等方案;
  • 4、多通讯方案:支持 TCP 和 HTTP 两种通讯方式进行服务调用;其中 TCP 提供可选方案 NETTY 或 MINA ,HTTP 提供可选方案 NETTY_HTTP 或 Jetty;
  • 5、多序列化方案:支持 HESSIAN、HESSIAN1、PROTOSTUFF、KRYO、JACKSON 等方案;
  • 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方法直接启动运行;
  • 13、泛化调用:服务调用方不依赖服务方提供的API;

文档地址

  • 中文文档

技术交流

  • 社区交流

相關推薦

2024-07-30

Simple Admin - Go 语言分布式后台管理系统 v1.5.2 更新 项目介绍 Simple Admin 是一个开箱即用的分布式微服务后端管理系统,基于 go-zero 开发,为开发小型到大型项目后台提供了丰富的功能,易于扩展,支持三端代码生成。 官方自带

2023-02-21

Dapr 是一个可移植的、事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的、无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架。 版本亮点 Dapr Workflows(预览) Dapr

2022-11-01

和版本控制管理工具,适用于开发人员和 DBA。 Bytebase 1.7.0 发布,更新内容如下: 新功能 新增 31 条 MySQL 审核规则。https://www.bytebase.com/docs/sql-review/review-rules/overview 在 SQL 审核中新增了 DDL 合法性验证。 支持取消 gh-ost 同

2023-04-04

脚本转换为 Katib Experiment。 Training operator Kubeflow 的统一分布式 Training operator 的增强功能包括用于微调资源扩展的配置选项(处理器、内存、存储)。它现在包括对 Pytorch Elastic 工作负载的 HPA 支持,用户可以在 Job Spec 中指定目

2023-01-30

短信渠道,集成 MinIO、阿里云、腾讯云、七牛云等云存储服务 集成报表设计器,支持数据报表、图形报表、打印设计等 项目名 说明 传送门 ruoyi-vue-pro Spring Boot 多模块 Gitee     Github

2023-07-19

优化 CodeQL, skywalking-eyes 和 checkout 等 actions [#5700] 优化分布式锁竞争日志 security: [#5172] 修复一些安全漏洞的版本 [#5683] 增加Hessian 序列化黑白名单 [#5696] 修复若干Node.js依赖安全漏洞 test: [#5380] 修复 UpdateExecu

2023-05-15

编程语言。它被嵌入到 Python 中,并使用即时编译器 (JIT) 框架,例如 LLVM,将计算密集型的 Python 代码 offload 到本地 GPU 或 CPU 指令中。 具体更新内容如下: 弃用通知 删除了一些很久以前就弃用的 API。见下表: Remove

2022-11-29

Apache Dubbo 是一款高性能、轻量级的开源 Java RPC 框架,它提供了三大核心能力:面向接口的远程方法调用、智能容错和负载均衡,以及服务自动注册和发现。 Apache Dubbo 3.1.3 现已发布,具体更新内容包括 恢复 #9645,在本地调

2022-09-30

-Cloud-Plus 重写 RuoYi-Cloud 全方位升级(不兼容原框架) 分布式集群分支 RuoYi-Vue-Plus 重写 RuoYi-Vue (不兼容原框架) 前端开发框架 Vue、Element UI   后端开发框架 SpringBoot   微服务开发框架 SpringCloud &n

2024-10-10

器通信、集群无中心节点、集群自动化、有状态多进程的分布式的网络编程服务器呢?如果是的话,这里向你推荐一个由 java 语言编写的网络编程框架 ioGame。下面将会从多个方面来对框架做一些简单的介绍。 ioGame 是一个轻量

2024-09-26

器通信、集群无中心节点、集群自动化、有状态多进程的分布式的网络编程服务器呢?如果是的话,这里向你推荐一个由 java 语言编写的网络编程框架 ioGame。下面将会从多个方面来对框架做一些简单的介绍。 ioGame 是一个轻量

2024-07-25

器通信、集群无中心节点、集群自动化、有状态多进程的分布式的网络编程服务器呢?如果是的话,这里向你推荐一个由 java 语言编写的网络编程框架 ioGame。下面将会从多个方面来对框架做一些简单的介绍。 ioGame 是一个轻量

2023-03-18

Apache Dubbo 是一款高性能、轻量级的开源 Java RPC 框架,它提供了三大核心能力:面向接口的远程方法调用、智能容错和负载均衡,以及服务自动注册和发现。Apache Dubbo 3.1.8 现已发布,具体更新内容包括: Bugfix 修复自定义执

2024-08-09

器通信、集群无中心节点、集群自动化、有状态多进程的分布式的网络编程服务器呢?如果是的话,这里向你推荐一个由 java 语言编写的网络编程框架 ioGame。下面将会从多个方面来对框架做一些简单的介绍。 ioGame 是一个轻量