Java 国产的轻量级应用开发框架。可用来快速开发 Java 应用项目。主框架仅 0.1 MB。Helloworld:
@Controller
public class App {
public static void main(String[] args) {
Solon.start(App.class, args);
}
@Get
@WebSocket
@Mapping("/hello")
public String hello(@Param(defaultValue = "world") String name) {
return String.format("Hello %s!", name);
}
}
相对于 Spring Boot 和 Spring Cloud 的项目:
- 启动快 5 ~ 10 倍。 (更快)
- qps 高 2~ 3 倍。 (更高)
- 运行时内存节省 1/3 ~ 1/2。 (更少)
- 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
- 基于服务 name 进行注册发现 与 k8s svc 相互对应
- 支持 Service Mesh 架构部署方案
- 同时支持 jdk8, jdk11, jdk17, jdk19
本次更新:
- 新增 wood-cloud-plugin 插件
- 优化 easypoi-solon-plugin 插件
- 优化 activerecord-solon-plugin 插件,增加 模板 + mapper 风格支持(由用户 糊搞 pr)
- 优化 Solon.cfg().getList() 实现排序支持
- 修复 solon.boot.smarthttp 插件,websocket 的 sesion.uri() 里没带 queryString 的问题
- 恢复 @Init(index) 手动控制属性
- 恢复 @Inject(required) 属性支持,默认为 true,且仅对配置注入有效
- 调整 solon.auth 使用 AuthAdapterSupplier 时,未找到匹配则抛异常
- 调整 solon.config 配置的文件不存在时,不出异常
- 调整 solon.schedule 任务取消的操作逻辑
- 升级 snakeyaml 为 1.32
- 升级 graphql 为 18.3
- 升级 snack3 为 3.2.44
- 升级 water 为 2.9.0
进一步了解 Solon:
- 《想法与架构笔记》
- 《生态预览》
- 《与 Spring Boot 的区别?》
- 《与 Spring Cloud 的区别?》
项目仓库:
- gitee:https://gitee.com/noear/solon
- github:https://github.com/noear/solon