Solon 是什么?
Java 生态型应用开发框架。它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模)。与其他框架相比,它解决了两个重要的痛点:启动慢,费内存。2023年6月,Maven 单月下载量突破200万。
解决痛点?
由于Solon Bean容器的独特设计,不会因为扩展依赖变多而启动很慢(开发调试时,省时、爽快)!以知名开源项目“小诺”为例:
- “snowy-spring 版” 启动 15-50秒
- “snowy-solon 版” 启动3-5秒,内存节省1/3(有兴趣的,欢迎拉取代码体验)
相对于 Spring Boot 和 Spring Cloud 的项目,有什么特点?
- 启动快 5 ~ 10 倍。 (更快)
- qps 高 2~ 3 倍。 (更高)
- 运行时内存节省 1/3 ~ 1/2。 (更少)
- 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
- 同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image
入门探索视频(用户录制):
更新了什么?
- 增加 solon.cloud.metrics 对 MeterBinder 的自动装配处理
- 增加 HandlerLoaderFactory,以实现所有
@Mapping
注解解析的重写支持 - 增加 rocketmq-solon-cloud-plugin 插件,对 ak/sk 的支持
- 增加 sa-token 插件,对 SaTokenDaoOfRedisson 实现
- 增加 solon.data.dynamicds 支持各源不同的连接池类型
- 调整 solon.serialization.fastjson 插件,默认增加字段排序特性
- 调整 solon-test 依赖,改成 solon-test-junit4 和 solon-test-junit5 的集合
- 调整 ConvertUtil 内的 LocalDateTime 处理,先通过 Date 中转,统一时间格式
- 调整 FiledWrap 反射权限改为用时再设置
- 调整 RouterInterceptorLimiter 标为弃用,由 RouterInterceptor::pathPatterns 替代
- 调整 ChainManager::getFilterNodes、getInterceptorNodes 输出类型
- 调整 solon-admin 的 server 和 client 通信为有状态格式
- 调整 solon 模块结构
- 调整 solon-admin-server 界面细节
- 修复 solon.docs.openapi2 插件 ApiImplicitParam::paramType 未生效的问题
- 修复 solon.docs.openapi2 插件 ApiParam::hidden 未生效的问题
- sa-token 升为 1.35.0.RC
- mybatis-flex 升为 1.5.7
- redisx 升为 1.4.9
项目仓库地址?
- gitee:https://gitee.com/noear/solon
- github:https://github.com/noear/solon