当前位置 博文首页 > 刘之西东:Spring Boot & Cloud 轻量替代框架 Solon 1.3.35

    刘之西东:Spring Boot & Cloud 轻量替代框架 Solon 1.3.35

    作者:刘之西东 时间:2021-05-11 18:22

    Solon 是一个微型的Java开发框架。强调,克制 + 简洁 + 开放的原则;力求,更小、更快、更自由的体验。支持:RPC、REST API、MVC、Micro service、WebSocket、Socket 等多种开发模式。

    Solon Cloud 是一系列的接口标准和配置规范。是 Solon 的分布式开发套件方案。

    替代?还能说些什么异同之处吗?

    《Solon 特性简集,相较于 Springboot 有什么区别?》

    《Solon Cloud 分布式服务开发套件清单与快速概览》

    《Solon 的架构笔记》

    所谓更小:

    内核0.1m,最小的接口开发单位0.2m(相较于 Dubbo、Springboot 的依赖包,小到可以乎略不计)

    所谓更快:

    本机http helloworld测试,Qps可达12万之多。可参考:《helloworld_wrk_test》

    所谓更自由:(代码操控自由)

    // 除了注解模式之外,还可以按需手动
    //
    //手动获取配置(Props 为 Properties 增强版)
    Props db = Solon.cfg().getProp("db");
    
    //手动获取容器里的Bean
    UserService userService = Aop.get(UserService.class);
    
    //手动监听http post请求
    Solon.global().post("/user/update", x-> userService.updateById(x.paramMap()));
    
    //手动添加个RPC服务
    Solon.global().add("/rpc/", HelloService.class, true);
    
    //手动获取一个RPC服务消费端
    HelloService helloService = Nami.builder().create(HelloService.class);
    
    //手动为容器添加组件
    Aop.wrapAndPut(DemoService.class);
    

    本次版本主要变化:

    1、为REST api增加更友好注解支持(@Get @Post @Delete @Put @Patch 等...)

    普通 HTTP api

    //经典写法
    @Mapping("demo00")
    public String demo00(String name) {
        return name;
    }
    

    REST api(或强调http method的)

    //经典写法
    @Mapping(value = "demo10", method = MethodType.PUT)
    public String demo10(String name) {
        return name;
    }
    
    //新增method注解写法(比经典写法,简洁不少)
    @Put
    @Mapping("demo11")
    public String demo11(String name) {
        return name;
    }
    
    //经典写法
    @Mapping(value = "demo20", method = {MethodType.POST, MethodType.GET})
    public String demo20(String name) {
        return name;
    }
    
    //新增method注解写法(比经典写法,简洁不少)
    @Post
    @Get
    @Mapping("demo21")
    public String demo21(String name) {
        return name;
    }
    

    2、注解 @Inject 增加 required 属性

    3、sureness-solon-plugin 权限认证组件(对 sureness 的适配)

    4、Solon cloud event 增加 kafka-solon-plugin 适配组件

    附:项目地址

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

    附:入门示例

    • Solon 入门教程示例:https://gitee.com/noear/solon_demo
    • Solon Rpc 入门教程示例:https://gitee.com/noear/solon_rpc_demo
    • Solon Cloud 入门教程示例:https://gitee.com/noear/solon_cloud_demo
    • Solon 进阶教程示例:https://gitee.com/noear/solon_advance_demo
    bk
    下一篇:没有了