Solon

rocketmq-solon-cloud-plugin

v2.7.5 </> markdown
<dependency>
    <groupId>org.noear</groupId>
    <artifactId>rocketmq-solon-cloud-plugin</artifactId>
</dependency>

1、描述

分布式扩展插件。基于 rocketmq4 client(代码仓库)适配的 solon cloud 插件。提供事件总线服务。

2、能力支持

云端能力接口说明备注
CloudEventService云端事件服务支持 namespace;支持 group

3、配置示例

  • 简单配置
solon.app:
  group: demo       #配置服务使用的默认组
  name: helloproducer    #发现服务使用的应用名

solon.cloud.rocketmq.event:
  server: localhost:9876   #rocketmq服务地址
  • 更多可选配置
solon.app:
  group: demo       #配置服务使用的默认组
  name: helloproducer    #发现服务使用的应用名
  
solon.cloud.rocketmq.event:
  channel: "biz" #多个 soon cloud event 插件同用时,才有用
  server: "localhost:9876" #rocketmq服务地址
  accessKey: "LTAI5t6tC2**********"  #v2.4.3 后支持
  secretKey: "MLaRt1yTRdfzt2***********" #v2.4.3 后支持
  publishTimeout: "3000" #消息发布超时(单位:ms)
  consumerGroup: "${solon.app.group}_${solon.app.name}" #消费组
  consumeThreadNums: 0 #消费线程数,0表示默认
  maxReconsumeTimes: 0 #消费消息失败的最大重试次数,0表示默认
  producerGroup: "DEFAULT" #生产组

4、应用示例

//订阅
@CloudEvent(topic="hello.demo2", group = "test")
public class EVENT_hello_demo2 implements CloudEventHandler {
    @Override
    public boolean handle(Event event) throws Throwable {
        System.out.println(LocalDateTime.now() + ONode.stringify(event));
        return true;
    }
}

//发布(找个地方安放一下)
Event event = new Event("hello.demo2", msg).group("test");
return CloudClient.event().publish(event);

5、演示项目