Java 新的生态型利用开发框架,Solon :更快、更小、更简略。从零开始构建,有本人的标准规范与凋谢生态:
- 150多个生态插件,能够满足各种场景开发
- 大量的国产框架适配,能够为应用软件国产化提供更好反对
绝对于 Spring Boot 和 Spring Cloud 的我的项目:
- 启动快 5 ~ 10 倍。 (更快)
- qps 高 2~ 3 倍。 (更高)
- 运行时内存节俭 1/3 ~ 1/2。 (更少)
- 打包能够放大到 1/2 ~ 1/10;比方,300Mb 的变成了 23Mb。 (更小)
- 同时反对 jdk8, jdk11, jdk17, jdk20。
似曾相识的体验,入门更简略,迁徙很不便:
@Controllerpublic 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); }}
本次更新:
- 减少 afterInjection() 对注入的检测及非必须注入的反对
- 减少 @Bean demo(...) 对注入的检测及非必须注入的反对
- 减少 okhttp 原生编译反对配置
- 减少 solon.scheduling.quartz 原生编译反对配置
- 减少 water-solon-cloud-plugin 原生编译反对配置
- 减少 solon.aot 性能总体上实现(细节优需优化)
- 减少 VarGater::check 接口,用于在容器启动时做收集检测
- 减少 Router::caseSensitive 接口,用于设定辨别大小写
- 调整 solon.test 减少代理类的字段注入
- 调整 solon.proxy.apt 的代理生成能力,转移到 solon.aot
- 调整 solon aot 时,勾销 Runtime.getRuntime().addShutdownHook
- 调整 solon cloud 在 aot 时不做注册解决
- 调整 mybatis 适配的环境id规定放弃也数据源bean同名
- 调整 Fastjson2Serializer 减少外部的上下文复用
- 调整 solon 路径分析器增加辨别大小写的管制
- 调整 solon-maven-plugin 打包时,排除 provided 的包;反对配置 include 和 exclude 配置
- 调整 sa-token-solon-plugin 全局过滤器的 BeforeAuth 认证设为不受 includeList 与 excludeList 的限度,所有申请都会进入
- 修复 native 运行时,可能呈现找不到资源文件而报错
- mybatis-flex 升为 1.2.0
- wood 升为 1.1.1
我的项目仓库:
- gitee:https://gitee.com/noear/solon
- github:https://github.com/noear/solon