Solon Java Framework v1.12.0 发布

一个更现代感的 Java 应用开发框架:更快、更小、更自由。没有 Spring,没有 Servlet,没有 JavaEE;独立的轻量生态。主框架仅 0.1 MB。

@Controller
public class App {
    public static void main(String[] args) {
        Solon.start(App.class, args);
    }

    @Get
    @Socket
    @Mapping("/hello")
    public String hello(@Param(defaultValue = "java") String name) {
        return String.format("Hello %s!", name);
    }
}

入门探索视频(用户录制):

《bilibili - solon 入门探索》

相对于 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
  • 没有 Spring,没有 Servlet,没有 JavaEE;独立的轻量生态

本次更新:

  • 新增 solon.test 插件
  • 新增 solon-test-junit4 插件,相对 solon-test 只支持 junit4
  • 新增 solon-test-junit5 插件,相对 solon-test 只支持 junit5
  • 插件 sentinel-solon-cloud-plugin 控制台调试
  • 插件 mybatis-solon-plugin 的 xml 配置增加 ** 表达式支持
  • 调整 AopContext::getProps() 标为弃用,由 AopContext::cfg() 接替
  • 调整 Plugin::init() 为 Plugin::init(AopContext); 为 solon cloud 热插拨增强支持 !!!
  • 优化 action parameter 转换失败时的友好提示
  • 优化 solon cloud 插件增加对热插拨的支持,以前只能用主程序的配置,现在可以用插件的配置
  • 优化 forest-solon-plugin 重新深度适配,并支持 solon 的 upstream !!!
  • 优化 liteflow-solon-plugin 重新深度适配 !!!
  • 优化 solon-test 增加更多场景的并发单测支持 !!!
  • 优化 sa-token-solon-plugin 解决不能自动注册多个 StpLogic 的问题
  • 优化 core 全局 AopContext 由原来的静态变量,改为 SolonApp 的成员变量 !!!
  • 优化 core 支持测试时多 SolonApp 运行和切换从而实现单测隔离效果 !!!
  • 优化 core 增加 Utils.resolvePaths(expr),用于支持 /a/**/b/*.xml 这种路径的解析
  • 优化 core 调整 BeanWrap 的 hashCode 处理;并增加 beanWrapsSet 对 name 注册收集 !!!

进一步了解 Solon:

项目仓库:

posted @ 2023-01-02 10:12  带刺的坐椅  阅读(43)  评论(0编辑  收藏  举报