开发者社区 > 云原生 > Serverless > 正文

使用rocketMQ 通过eventbridge进行触发,这个推送格式怎么在s.yaml中声明?

使用rocketMQ 通过eventbridge进行触发,这个推送格式怎么在s.yaml中声明?

提问28.png

我想直接收mq里的原始数据,我现在收到的被eventbridge转了一道,多了很多内容。

展开
收起
Java工程师 2023-05-06 10:00:50 142 0
3 条回答
写回答
取消 提交回答
  • 值得去的地方都没有捷径

    在 Serverless 应用中使用 RocketMQ 通过 EventBridge 进行触发时,您可以在 s.yaml 文件中使用 eventbridge 触发器,并通过 parameters 属性指定 EventBridge 规则的名称和事件模式。例如:

    triggers: - name: rocketmq-trigger type: eventbridge parameters: name: my-eventbridge-rule event_pattern: '{"source": ["my-rocketmq-source"], "detail-type": ["my-rocketmq-event"]}' yaml 在上述配置中,name 属性指定了 EventBridge 规则的名称,event_pattern 属性指定了 EventBridge 规则的事件模式,即过滤条件。根据您的需求,可以修改 event_pattern 属性,以获取不同类型的事件数据。

    如果您想直接接收 RocketMQ 中的原始数据,可以在代码中使用 RocketMQ 的 SDK,通过消费者订阅 RocketMQ 的 Topic,然后处理消息。这样可以避免 EventBridge 转换消息格式的问题。

    2023-05-06 16:50:38
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    使用 RocketMQ 通过 EventBridge 进行触发时,您可以在 Serverless Devs 的 YAML 配置文件中使用 eventBridge 触发器,并在其中设置 eventSource 属性为 acs:mq,以指定触发器的事件源为 RocketMQ。

    以下是一个使用 eventBridge 触发器触发 RocketMQ 的示例:

    triggers:
      - eventBridge:
          eventBus: <event_bus_name>
          eventSource: acs:mq
          detailType: RocketMQ Message
          detail:
            topic: <rocketmq_topic_name>
            tags:
              - tag1
              - tag2
    

    在上面的示例中,eventBus 属性用于指定要使用的 EventBridge 事件总线名称,eventSource 属性用于指定事件源为 RocketMQ,detailType 属性用于指定事件类型为 "RocketMQ Message",detail 属性用于指定触发事件的详细信息,例如 RocketMQ 的主题名称和标签等信息。

    RocketMQ 的消息体格式是自定义的,您需要根据您的业务需求来设置正确的消息体格式。如果 RocketMQ 的消息体格式不符合 EventBridge 触发器的要求,您可能需要编写自定义代码来将 RocketMQ 消息转换为 EventBridge 触发器所期望的格式。

    2023-05-06 12:03:45
    赞同 展开评论 打赏
  • 只有改成事件流然后把这个改成rawData才行

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-05-06 10:03:42
    赞同 展开评论 打赏

快速交付实现商业价值。

相关电子书

更多
RocketMQ Client-GO 介绍 立即下载
RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载