Solon 是什么开源项目?
一个,Java 新的生态型应用开发框架。它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模)。与其他框架相比,它解决了两个重要的痛点:启动慢,费内存。
关键记事:
- 2021年1月,正式对外开源
- 2022年7月,建立官网,发力推广
- 2023年2月,v2.0 发布。官网增加 Solon Initializr,用于生成项目模板。
- 2023年4月,成为信通院可信开源社区、可信开源项目。Maven 单月下载量突破100万。代码提交数超 11000 次
- 2023年6月,Maven 单月下载量突破200万。官网资料超 500 个页面。
解决痛点?
由于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.web.servlet.jakarta 插件(用于 war 打包时,支持 tomcat10, jetty11 等 jakarta.servlet 容器)
- 新增 solon-admin-client 插件
- 新增 solon-admin-server 插件
- 新增 solon-admin-server-ui 插件
- 增加 Props::getByKeys、getOrDefault 接口
- 调整 EventBus::push 标为弃用,添加 ::publish 代之
- 调整 AopContext::beanAroundXxx 标为弃用,添加 ::beanInterceptorXxx 代之
- 调整 Around 相关名改为 Interceptor,原名标为弃用
- 优化 ProxyComponent 注解属性调整成与 Component 注解一样,支持用 tags 查找
- 优化 solon.boot 信号启动的执行时机后延
- 优化 solon.scheduling 插件的 retry 的兜底设计
- 优化 EventBus 增加订阅排序支持
- 修复 bean 所有字段只读且无 public 构造器时,会异常的问题
- wood 升为 1.1.7
- snack3 升为 3.2.73
- beetlsql 升为 3.23.5-RELEASE