Solon 是一个高效的 Java 应用开发框架:更快、更小、更简单。它不是 Spring、没有用 Servlet、也无关 JavaEE,是一个有自己接口标准的开放生态。可以为应用软件国产化提供支持,助力信创建设。
150来个生态插件,覆盖各种不同的应用开发场景:
相对于 Spring Boot 和 Spring Cloud 的项目:
- 启动快 5 ~ 10 倍。 (更快)
- qps 高 2~ 3 倍。 (更高)
- 运行时内存节省 1/3 ~ 1/2。 (更少)
- 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
- 同时支持 jdk8, jdk11, jdk17, jdk19。
似曾相似的体验,入门更简单,迁移很方便:
@Controller
public class App {
public static void main(String[] args) {
Solon.start(App.class, args, app->{
//手写模式
app.get("/", ctx -> ctx.outputAsJson("{message:'Hello world!'}"))
});
}
//注解模式
@Get
@Socket
@Mapping("/hello")
public String hello(String name) {
return String.format("Hello %s!", name);
}
}
入门探索视频(用户录制):
本次更新:
- 新增 bean-searcher-solon-plugin 插件
- 优化 rocketmq5-solon-cloud-plugin 插件
- 移除 forest-solon-plugin 源码,改引用 com.dtflys.forest:forest-solon-plugin
- 移除 liteflow-solon-plugin 源码,改引用 com.yomahub:liteflow-solon-plugin
- 增加 调试模式下,模板仅在文件模式下才加载源码提供器
- 增加 用属性配置控制 solon.logging.log4j2::File 添加器是否启用!
- 增加 用属性配置控制 solon.logging.logback::File 添加器是否启用!
- 增加 “solon.logging.config” 配置支持,可将日志的配置文件移到外部
- 增加 CloudProps 关于 username/password 与 ak/sk 配置互通的支持!
- 增加 CloudProps 关于 username/password 上下级传导的支持!
- 增加 Solon::stopBlock 接口
- 调整 Solon::stop 时把 app,appMain置为null
- 调整 solon.web.static 的目录优先级(支持两个,但只让一个生效)
- 调整 让注解产生的生命周期,排序晚1个点
- 调整 让默认的 beanOnloaded 生命周期,排序为-1
- activerecord 升级为 5.0.4
- bean-searcher 升级为 4.1.2
- snack3 升级为 3.2.59
- hutool 升级为 5.8.14
- dubbo3 升级为 3.1.7
- forest 升级为 1.5.30
- rocketmq5-client 升级为 5.0.4
- smarthttp 升级为 1.1.22
- smartsocket 升级为 1.5.25
- ons-client 升级为 1.8.8.8.Final