Solon v2.1.4 发布。支持 java、kotlin、groovy!

本次发布,重点测试和验证了在 java、kotlin、groovy 三种 jvm 语言里,开箱即用的特性。并发布 Solon Initializr:

最近,与小诺开源团队合作发布了:Snowy-Solon( https://gitee.com/xiaonuoadmin/snowy-solon

  • 有用户说原来他的电脑运行 snowy ,需要50秒启动占2g内存,现在只用5秒启动占300m内存
  • 有用户说原来启动 snowy 要15秒,现在3秒多点(不同电脑表现不同)
  • 有用户说原来认为是骗人的,现在信了(指更快、更小)
  • 有用户说他们的招聘要求已标注 “熟悉 Solon 框架的优先考虑”(这是难得好的新开始)

Solon 应用开发框架的新生态包括:

  • 150 来个能力扩展插件
  • java、kotlin、groovy 三种语言开箱即用的特性
  • 官网 与 交流群
  • solon initializr
  • 用户落地的开源或商业项目

Solon 生产力价值:

  • 更快、更小。带来IT成本、运维成本下降
  • 更简单。节省人力成本

Solon 国产性:

  • Solon 在通讯框架、基础框架、能力框架,等方面提供了全国产的方案支持。(Java 不是国产?国产没对应的就没法了)

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);
    }
}

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

《bilibili - solon 入门探索》

本次更新:

  • 新增 bean-searcher-solon-plugin 插件
  • 插件 solon-maven-plugin 增加 jdk19 打包支持
  • 插件 snowflake-id-solon-cloud-plugin 增加 workId 可配置支持
  • 插件 solon.test 增加 AbstractHttpTester 类,名字比 HttpTestBase 顺眼些
  • 插件 solon.test Http 测试器 增加 http(int port) 接口,方便本机所有http端口测试(比如 mock server)
  • 插件 solon-test-junit4 增加 mockito-core 依赖,方便 mock 测试
  • 增加 手动检测是否有类存在的方式 Utils.hasClass(() -> AuthUtil.class)
  • 修复 activerecord-solon-pllugin::修复在 ActiveRecordPlugin::start 前不能注入 DbPro 的问题
  • 修复 solon.cache.redisson 默认缓存时间没有生效的问题,及缓存键头没用起来的问题
  • 调整 solon.cache.jedis 缓存键以':'为间隔
  • 调整 Props::getByParse 增加默认值支持
  • 调整 Props::getByExpr 增加默认值支持
  • 调整 Condition 注解重新规范条件属性名
  • 调整 AopContext 增加 Condition::onMissingBean 条件属性支持
  • 优化 solon.test 排除只读类成为代理类
  • 优化 Gateway 根据路由记录数量,自动切换主处理
  • 优化 http 输出长度模式 与 chunked模式 的自动切换
  • 升级 mockito 为 4.11.0
  • 升级 beetl 为 3.14.1.RELEASE
  • 升级 sqltoy 为 5.2.34
  • 升级 snack3 为 3.2.54 ,支持 kotlin data

项目仓库:

posted @ 2023-02-22 00:07  带刺的坐椅  阅读(117)  评论(0编辑  收藏  举报