Spring Boot 国产化替代方案。Solon v3.7.2, v3.6.5, v3.5.9 发布(支持 LTS)

Solon 框架!(也称 OponSolon)

Solon 是新一代,Java 企业级应用开发框架。从零开始构建(No Java-EE),有灵活的接口规范与开放生态。采用商用友好的 Apache 2.0 开源协议,是"杭州无耳科技有限公司"开源的根级项目,是 Java 应用开发的生态基座(可替换美国博通公司的 Spring 生态)。

  • 追求: 快速、小巧、简洁
  • 提倡: 克制、高效、开放

7年开源时间,累计代码提交1.6万次 ,近半年下载量1200万次。

同时支持运行时环境(不基于 java-ee 构建,所以可以同时兼容):

  • java8, java11, java17, java21, java25

有什么特点(相对 Java Spring 方案)?

Solon 对国产算力非常友好,对 cpu 和 memory 的需求远低于同类方案。

特点 描述
更高的计算性价比 并发高 700%;内存省 50%
更快的开发效率 代码少;入门简单;启动(或调试重启)快 10倍
更好的生产与部署体验 打包小 90%
更大的兼容范围 非 java-ee 架构;同时支持 java8 ~ java25,graalvm native image

最新的 techempower (第三方知名测试平台)测试数据:

项目架构示意图(全场景应用开发支持)

v3.7.2 更新说明

  • 引入 jspecify 的 @Nullable,@NonNull 注解
  • 新增 resilience4j-solon-cloud-plugin 插件
  • 新增 solon-cloud-gateway websocket 协议代理支持
  • 新增 solon 启动扫描类索引机制(由 solon aot 构建时自动生成)
  • 新增 aot 构建配置(在 native 基础上去除 graalvm.buildtools),任意 jdk 版本可用
  • 添加 solon RunUtil.io(),timer() 方便响应式使用
  • 添加 solon 启动资源索引机制(通过 aot 实现)
  • 添加 solon-rx Completable:doOnErrorResume 方法
  • 添加 solon-rx Completable:subscribeOn, delay 方法,方便同步io对接
  • 添加 solon-net WebSocket:colse(code,reason) 方法及相关适配
  • 添加 solon-net-httputils HttpResponse:headerMap 方法
  • 添加 solon-data solon.dataSources 的配置提示
  • 添加 solon-web-staticfiles solon.mime.mapping 配置支持(将替代 solon.mime)
  • 优化 solon 路由匹配规则,原3个优先级升为5优先级(更细)
  • 优化 solon AppContext:beanScan 改为先加载再分批处理(确保配置类先处理)
  • 优化 solon AppContext:startInjectReview 去掉 stream 写法(减少中转,提升性能)
  • 优化 solon-logging 初始化处理,避免二次加载文件配置
  • 优化 solon 启动性能(提升 10% 到 30%)
  • 优化 solon-serve-vertx websocket 适配,避免与 solon-cloud-gateway 的 ws 代理起冲突
  • 调整 solon 编译配置荐 maven.compiler.source,target 改为 release
  • 调整 solon-serve-vertx 去除内部对象 VertxHolder(没地方用到了)
  • 调整 solon-serialization AbstractStringEntityConverter string 类型直接输出(不序列化)
  • 调整 solon ChainManager:getInterceptorNodes,addInterceptor,addInterceptorIfAbsent,removeInterceptor 恢复旧方法并标为弃用
  • 修复 nami-coder-snack4 插件元数据配置失效问题(v3.7.0 出现的)
  • 修复 solon-rx Completable:doOnError 会中断传递的问题
  • 修复 solon-server-vertx VxWebSocketImpl:remoteAddress 转换失败的问题
  • 修复 solon-scheduling-simple 不能识别:zone=+08 配置问题
  • eggg 升为 1.0.8
  • snack4 升为 4.0.14

v3.6.5 更新说明

  • 添加 solon RunUtil.io(),timer() 方便响应式使用
  • 修复 solon-rx Completable:doOnError 会中断传递的问题
  • 修复 solon-server-vertx VxWebSocketImpl:remoteAddress 转换失败的问题
  • 修复 solon-scheduling-simple 不能识别:zone=+08 配置问题
  • snack4 升为 4.0.14

v3.5.9 更新说明

  • 添加 solon RunUtil.io(),timer() 方便响应式使用
  • 修复 solon-rx Completable:doOnError 会中断传递的问题
  • 修复 solon-server-vertx VxWebSocketImpl:remoteAddress 转换失败的问题
  • 修复 solon-scheduling-simple 不能识别:zone=+08 配置问题

项目仓库地址?

官网?

相关推荐
颜酱5 小时前
前端必备动态规划的10道经典题目
前端·后端·算法
Chan165 小时前
【 Java八股文面试 | JavaSE篇 】
java·jvm·spring boot·面试·java-ee·八股
wen__xvn5 小时前
代码随想录算法训练营DAY10第五章 栈与队列part01
java·前端·算法
独自破碎E6 小时前
解释一下NIO、BIO、AIO
java·开发语言·nio
程序猿零零漆6 小时前
Spring之旅 - 记录学习 Spring 框架的过程和经验(十一)基于XML方式、注解的声明式事务控制、Spring整合Web环境
xml·学习·spring
国强_dev6 小时前
在 Java 开发及其生态圈中“声东击西”的误导性错误
java·开发语言
FG.6 小时前
LangChain4j
java·spring boot·langchain4j
半夏知半秋6 小时前
rust学习-闭包
开发语言·笔记·后端·学习·rust
linweidong6 小时前
C++thread pool(线程池)设计应关注哪些扩展性问题?
java·数据库·c++
CORNERSTONE3656 小时前
AI与MES的融合——从“执行记录”到“智能决策”
人工智能·ai·mes