Winter

嵌入式分布式中间件套件

面向单体应用和小集群的轻量级中间件解决方案
基于 MySQL/Redis 构建,避免引入额外中间件
降低维护成本,提升开发效率

3+
功能模块
100%
开源免费

核心功能

为中小型系统提供完整的分布式能力

⚙️

配置中心

核心模块

基于 MySQL 提供秒级配置变更推送能力,支持配置的动态更新和实时推送。

  • ✓ 秒级配置变更推送
  • ✓ 动态配置更新
  • ✓ 实时配置生效
  • ✓ 无需额外中间件
🔌

RPC 框架

核心模块

基于 HTTP(S) 提供服务注册、发现和远程调用,支持内网集群和公网调用。

  • ✓ HTTP(S) 协议支持
  • ✓ 服务注册与发现
  • ✓ 负载均衡调用
  • ✓ Filter 扩展机制

调度中心

核心模块

提供集群任务调度能力,支持单机任务、MapReduce 任务等多种任务类型。

  • ✓ 单机任务调度
  • ✓ MapReduce 分布式计算
  • ✓ 时间轮定时器
  • ✓ 可选持久化
📡

注册中心

次要模块

提供集群 IP 发现、服务注册和发现功能,基于配置中心实现。

模块架构

清晰的模块划分,灵活的组合方式

应用层
Web 管理工具 Planning
流程引擎 Release
核心层
调度中心 Beta
RPC 框架 Release
注册中心 Beta
配置中心 Release

快速开始

三步即可集成 Winter 到你的项目

1

引入依赖

<dependency>
    <groupId>tech.obiteaaron.winter</groupId>
    <artifactId>winter-embed-config-center</artifactId>
    <version>1.1.0-SNAPSHOT</version>
</dependency>
2

配置数据源

spring.datasource.url=jdbc:mysql://localhost:3306/winter
spring.datasource.username=root
spring.datasource.password=password
3

启动应用

// Spring Boot 直接启动
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

为什么选择 Winter

配置中心对比

特性 Winter 配置中心 Nacos
部署方式 嵌入式(嵌入应用) 独立部署
存储 MySQL 内置数据库/MySQL
配置推送 秒级推送 支持
依赖组件 仅 MySQL 独立服务
维护成本

RPC 框架对比

特性 Winter RPC Dubbo gRPC
协议 HTTP(S) TCP HTTP/2
部署方式 嵌入式 独立部署 嵌入式/独立部署
服务发现 内嵌配置中心 ZooKeeper/Nacos Endpoint/注册中心
负载均衡 支持 支持 支持
扩展机制 Filter Filter/Router Interceptor
跨语言 部分支持 原生支持

调度中心对比

特性 Winter 调度中心 XXL-Job PowerJob
部署方式 嵌入式 独立部署 独立部署
分布式任务 MapReduce 分片广播 MapReduce
定时器 数据库轮询+时间轮 数据库轮询+时间轮 数据库轮询+时间轮
依赖组件 VertX + MySQL(可选) MySQL MySQL/Akka
管理界面 开发中 完整 完整
适用场景 轻量级/内网集群 中大型集群 大规模分布式

技术栈

Java 8 及以上
Spring Boot
Netty
Vert.x
MySQL
Redis
Jackson
Hessian
OkHttp
Caffeine