Java 超新星开源项目 Solon v1.10.10 发布

时间:2022-11-06 09:06:04

一个更现代感的 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);
    }
}

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

《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

本次更新:

  • 插件 solon.sessionstate.jwt 增加实体设置支持,并支持自动类型回转(自定义了序列化)
  • 插件 solon.boot.smarthttp 对 PRI 请求输出 501 状态码
  • 插件 mybatis-solon-plugin 增加对 typeHandlers 配置节的支持
  • 调整 AopContext::getBeanAsyn, AopContext::getWarpAsyn, EventBus::pushAsyn 为弃用
  • 增加 AopContext::getBeanAsync,AopContext::getWarpAsync,EventBus::pushAsync
  • 增加 注入异常时,显示目标详情
  • 增加 ASM 代理失败时,显示目标详情
  • 增加 HandlerLoader::findMethods 可重写
  • 提示 Action 只有当前类申明的公有函数才被接受(即 getDeclaredMethods)
  • 调整 solon.hotplug 取消直接加载插件配置为属性的机制;以保持 AopContext 统一处理机的制
  • 调整 solon.aspect 增强对热插拨的代理类支持
  • 调整 solon.serialization.hessian 改依赖为 sofa-hessian
  • 调整 nami.coder.hessian 改依赖为 sofa-hessian
  • 升级 snack3 为 3.2.45
  • 升级 enjoy 为 5.0.3
  • 升级 activerecord 为 5.0.3
  • 升级 beetlsql 为 3.19.2-RELEASE
  • 升级 sa-token 为 1.32.0
  • 长级 fastjson2 为 2.0.17
  • 升级 gson 为 2.10
  • 升级 protostuff 为 1.8.0

进一步了解 Solon:

项目仓库: