轻量级分布式服务化框架——Hasting
hasting 使用java nio,oio,aio等原生态io和线程池,实现的分布式跨语言服务化框架 项目地址: https://gitcode.com/gh_mirrors/ha/hasting
1. 项目基础介绍及主要编程语言
Hasting 是一个使用 Java 语言开发的轻量级分布式服务化框架。该项目基于 Java 的 NIO、OIO 和 AIO 等原生态 IO 和线程池技术,实现了服务的分布式部署和跨语言调用。Hasting 适用于需要高可用、负载均衡、服务治理等特性的分布式系统。
2. 项目核心功能
-
负载均衡:提供基于 RoundRobin 和随机方式的负载均衡策略,确保服务请求均匀分配到各服务节点。
-
高可用:Consumer 通过注册中心获取服务列表及服务提供者列表,当某个 Provider 出现网络异常或宕机时,Consumer 能立即感知并进行容错处理。
-
泛化调用:无需依赖服务提供方的业务 API,通过填写接口名称、版本、方法名称、参数名称和值即可完成 RPC 调用。
-
限流降级:在访问流量过大时,通过服务端限流降级优先保护服务,避免服务雪崩。
-
** Rpc 上下文附件**:允许调用方传递上下文信息,而无需作为 RPC 入参。
-
多种注册中心:支持 Zookeeper、etcd、Redis 等注册中心,具备高可用功能。
-
实时动态监控:提供监控 API,支持接入项目或公司的监控平台。
-
可视化控制台管理:提供基于 Web 的可视化控制台,方便查询服务提供方、服务调用方等信息。
-
Spring 集成:支持简单配置即可将服务集成到 Spring 中。
-
优雅停机:在服务发布和停止时自动调整服务优先级权重,减少对下游调用方的影响。
3. 项目最近更新的功能
由于项目更新日志未提供具体日期,以下是根据项目描述文档推测的最近更新功能:
-
负载均衡策略优化:对 RoundRobin 和随机负载均衡策略进行了优化,提高服务请求分配效率。
-
服务容错处理增强:增强了服务容错处理机制,提高系统的稳定性。
-
注册中心功能扩展:新增了对 etcd 和 Redis 注册中心的支持,提高了系统的灵活性。
-
监控功能完善:对监控 API 进行了完善,增强了监控数据的获取和展示功能。
-
Spring 集成简化:简化了 Spring 集成配置,降低了开发者的使用难度。
hasting 使用java nio,oio,aio等原生态io和线程池,实现的分布式跨语言服务化框架 项目地址: https://gitcode.com/gh_mirrors/ha/hasting
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考