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 配置问题

项目仓库地址?

官网?

相关推荐
曲幽1 分钟前
你的FastAPI又在服务器上“跑不起来”了?来,今天咱把打包这件事彻底聊透
linux·windows·python·docker·fastapi·web·pyinstaller·nssm·services
我是一颗柠檬4 分钟前
【Redis】主从复制Day9
java·数据库·redis·后端
8Qi86 分钟前
LeetCode 208:实现 Trie(前缀树)—— Java 题解 ✅
java·算法·leetcode·二叉树·tire树
Wenzar_7 分钟前
GeoHash+Redis Streams实时围栏系统实战
java·数据库·redis·junit
侯盛鑫7 分钟前
理解 RocksDB IngestExternalFile
数据库·后端
可乐ea7 分钟前
【知识获取与分享社区项目 | 项目日记第 20 天】search_after 游标分页:解决 Elasticsearch 深分页稳定性问题
java·大数据·elasticsearch·搜索引擎·全文检索
用户4682557459138 分钟前
搞懂 MCP 协议:概念、3 种传输方式与握手全流程 (附 JSON 报文,一篇够面试)
ai编程·mcp
字节高级特工11 分钟前
C++11(二) 革新:引用折叠与lambda表达式
java·开发语言·c++·算法
萨小耶11 分钟前
[Java学习日记11】聊聊深拷贝和浅拷贝
java·开发语言·学习
Mr.朱鹏13 分钟前
基于 postgres_fdw 的跨库查询方案
java·数据库·spring boot·sql·spring·postgresql