Skip to content

DamiBus 0.28,本地过程调用框架(主打解耦)

Compare
Choose a tag to compare
@noear noear released this 25 Sep 10:33
· 85 commits to main since this release

本次更新:

  • TopicRouterPatterned 增加排序支持
  • TopicRouterPatterned 分离路由能力,可定制
  • 增加基于 Tag 的路由模式定制
  • dami-springboot-starter,增加 spronboot 2.0 的兼容

新增加的定制效果(详见仓库主页。也可按需定制自己的 Routing):

public class Demo15_path {
    public void main(){
        //切换为模式匹配路由器 + RoutingPath(支持 * 和 ** 占位符;支持 / 或 . 做为间隔)
        DamiConfig.configure(new TopicRouterPatterned(RoutingPath::new));

        //拦截
        Dami.bus().listen("demo/a/*", (payload) -> {
            System.err.println(payload);
        });

        //发送事件
        Dami.bus().send("demo/a/1", "world1");
        Dami.bus().send("demo/a/2", "world2");
    }
}
public class Demo15_tag {
    public void main(){
        //切换为模式匹配路由器 + RoutingTag(":"前为主题,后按 "," 号分割作为tag)
        DamiConfig.configure(new TopicRouterPatterned(RoutingTag::new));

        //拦截
        Dami.bus().listen("demo.a:id", (payload) -> {
            System.err.println(payload);
        });

        //发送事件
        Dami.bus().send("demo.a:id", "world1");
        Dami.bus().send("demo.a:id,name", "world2");
    }
}

疑问:
为什么不用分布式消息队列呢?不好意思,真的是不同的维度。