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

栏目: Java · 发布时间: 6年前

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

新特性

  • 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远程服务调用功能。现已开放源代码,开箱即用。

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

特性

  • 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、服务监控:可在线监控服务调用统计信息以及服务健康状况等(计划中);

文档地址

技术交流


以上所述就是小编给大家介绍的《XXL-RPC v1.2.0,分布式服务框架》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

高扩展性网站的50条原则

高扩展性网站的50条原则

[美] Martin L. Abbott、[美]Michael T. Fisher / 张欣、杨海玲 / 人民邮电出版社 / 2012-6-3 / 35.00元

《高扩展性网站的50条原则》给出了设计高扩展网站的50条原则,如不要过度设计、设计时就考虑扩展性、把方案简化3倍以上、减少DNS查找、尽可能减少对象等,每个原则都与不同的主题绑定在一起。大部分原则是面向技术的,只有少量原则解决的是与关键习惯和方法有关的问题,当然,每个原则都对构建可扩展的产品至关重要。 主要内容包括: 通过克隆、复制、分离功能和拆分数据集提高网站扩展性; 采用横向......一起来看看 《高扩展性网站的50条原则》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具