信创,用中国人的Java生态框架。Solon v2.4.3 发布

news/2024/7/10 22:21:13 标签: java, solon, 信创, 开源, 国产化

Solon 是什么?

Java 生态型应用开发框架。它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模)。与其他框架相比,它解决了两个重要的痛点:启动慢,费内存。2023年6月,Maven 单月下载量突破200万

解决痛点?

由于Solon Bean容器的独特设计,不会因为扩展依赖变多而启动很慢(开发调试时,省时、爽快)!以知名开源项目“小诺”为例:

  • “snowy-spring 版” 启动 15-50秒
  • “snowy-solon 版” 启动3-5秒,内存节省1/3(有兴趣的,欢迎拉取代码体验)

相对于 Spring Boot 和 Spring Cloud 的项目,有什么特点?

  • 启动快 5 ~ 10 倍。 (更快)
  • qps 高 2~ 3 倍。 (更高)
  • 运行时内存节省 1/3 ~ 1/2。 (更少)
  • 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
  • 同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image

更新了什么?

  • 增加 solon.cloud.metrics 对 MeterBinder 的自动装配处理
  • 增加 HandlerLoaderFactory,以实现所有 @Mapping 注解解析的重写支持
  • 增加 rocketmq-solon-cloud-plugin 插件,对 ak/sk 的支持
  • 增加 sa-token 插件,对 SaTokenDaoOfRedisson 实现
  • 增加 solon.data.dynamicds 支持各源不同的连接池类型
  • 调整 solon.serialization.fastjson 插件,默认增加字段排序特性
  • 调整 solon-test 依赖,改成 solon-test-junit4 和 solon-test-junit5 的集合
  • 调整 ConvertUtil 内的 LocalDateTime 处理,先通过 Date 中转,统一时间格式
  • 调整 FiledWrap 反射权限改为用时再设置
  • 调整 RouterInterceptorLimiter 标为弃用,由 RouterInterceptor::pathPatterns 替代
  • 调整 ChainManager::getFilterNodes、getInterceptorNodes 输出类型
  • 调整 solon-admin 的 server 和 client 通信为有状态格式
  • 调整 solon 模块结构
  • 调整 solon-admin-server 界面细节
  • 修复 solon.docs.openapi2 插件 ApiImplicitParam::paramType 未生效的问题
  • 修复 solon.docs.openapi2 插件 ApiParam::hidden 未生效的问题
  • sa-token 升为 1.35.0.RC
  • mybatis-flex 升为 1.5.7
  • redisx 升为 1.4.9

项目仓库地址?

  • gitee:https://gitee.com/noear/solon
  • github:https://github.com/noear/solon

http://www.niftyadmin.cn/n/4946209.html

相关文章

【进程与线程】最好懂的讲解

目录 1.CPU的管理 2.进程 2.1.概述 2.2.数据结构 2.3.进程状态 2.4.进程与内存 2.5.PCB队列 3.线程 3.1.概述 3.2.实现 1.CPU的管理 进程和线程是操作系统里面的概念,这个概念其实是对CPU的管理策略。整个操作系统都可以看作计算机硬件的管理软件&#x…

1 树 1.1 树的基本概念 1.1.1 什么是树? 树是n(n > 0)个结点的有限集。当n 0时,称为空树。在任意一颗非空树上应该满足: 有且仅有一个特定的称为根的结点当n>1时,其余结点可分为m(m>0)个互不相…

Vue编程式路由导航

目录 一、使用 一、使用 不使用<router-link>标签&#xff0c;利用$router中的api实现跳转&#xff0c;更灵活 <template><div><ul><li v-for"m in messageList" :key"m.id"><!-- 跳转路由并携带params参数&#xff0c…

【Linux】进程通信篇Ⅱ:共享内存、消息队列、信号量

文章目录 一、共享内存1.1 一些接口1. shmget 函数&#xff1a;申请一个 system v 的共享内存块2. ftok 函数&#xff1a;设置唯一标识码3. shmctl 函数&#xff1a;控制 system v 的共享内存块&#xff08;可以删除、查看...&#xff09;4. shmat 函数&#xff1a;将进程与共享…

Mongodb优化配置项

Evict数据 参数名称含义百分比eviction_target当Cache的使用量达到了对应的百分比时触发Evict线程淘汰page80%eviction_trigger当Cache的使用量达到了对应的百分比时触发Evict线程和用户线程淘汰page95%eviction_dirty_target当”脏数据“所占Cache达到对应的百分比触发Evict线…

如何确保工厂交接班工作的连贯性?

在现代制造业中&#xff0c;工厂的运营和管理日益变得复杂&#xff0c;而确保交接班工作的连贯性变得至关重要。随着技术的不断进步和机器的复杂化&#xff0c;如何有效地传递信息、共享数据&#xff0c;以及预防潜在问题的发生成为了制造企业的一项重要挑战。在这个背景下&…

【Java开发实战攻关】「JPA技术专题」带你一同认识和使用JPA框架进行开发你的应用服务

带你一同认识和使用JPA框架进行开发你的应用服务 什么是JPA框架JPA持久层框架使用JPA实现持久化JPA注解介绍按类别划分的 JPA注解实体注解Entity模型注解Table示例-显示了如何使用此批注指定主表名。 注解TableGeneratorTableGenerator主要属性strategystrategy属性可以是下列枚…

『论文精读』Data-efficient image Transformers(DeiT)论文解读

『论文精读』Data-efficient image Transformers(DeiT)论文解读 文章目录 一. DeiT简介二. 知识蒸馏(knowledge distillation)2.1. KLDivloss2.2. 蒸馏温度 τ \tau τ2.3. distillation in transformer 三. better hyperparameter四. data augmentation五. label smoothing参…