当前位置: 首页 > news >正文

网上智慧团建官网入口免费下载百度seo

网上智慧团建官网入口,免费下载百度seo,阿里云数据库主机wordpress,网站推广的目的和意义背景 需要通过flink同时向测试和线上的RocketMQ中写入数据 现象 在程序中分别创建了两个MqProducer,设置了不同的nameServerAddr,分别调用不同的producer向不同环境发消息,返回发送成功,但是在线上MQ中却查不到数据&#xff0…

背景

需要通过flink同时向测试和线上的RocketMQ中写入数据

现象

在程序中分别创建了两个MqProducer,设置了不同的nameServerAddr,分别调用不同的producer向不同环境发消息,返回发送成功,但是在线上MQ中却查不到数据,测试环境是有的。
代码如下:

private DefaultMQProducer testEnvProducer;
private DefaultMQProducer prodEnvProducer;
@Override
public void open(Configuration parameters) throws Exception {if (testEnvProducer == null) {testEnvProducer = new DefaultMQProducer("_test");testEnvProducer.setNamesrvAddr(SINK_ADDRESS);testEnvProducer.start();}if (prodEnvProducer == null) {prodEnvProducer = new DefaultMQProducer("_prod");prodEnvProducer.setNamesrvAddr(SOURCE_ADDRESS);prodEnvProducer.start();}
}

在这里插入图片描述

解决过程及方案

由于不了解flink的运行机制,尝试将发送MQ的逻辑拆分为两个sink,无济于事,在中间遇到了创建DefaultMQProducer时设置的是同一个group,理论上是不同的环境不会有问题,prodProducer在start时却报该group的实例已经创建,当时就有点怀疑是不是两个producer是同一个。后又通过在消息体中增加profile明确区分开线上和测试的数据,发现应该发送到线上的数据却发送到了测试环境,此时断定是两个producer为同一个实例。
查看RocketMQ Client源码发现了factory这个参数
image.png
在这里插入图片描述

那问题大概率就是这个工厂导致的,工厂内做了缓存,让我们来看一看
image.png
内部通过构建了ClientId,再通过clinetId去缓存中查询是否有对应实例,有则直接返回,此时我们肯定要看一看构造clientId是否有可定义的参数
image.png
得知是通过ip及instanceName等参数构造的,instanceName又是系统变量,那我们需要做的就是在创建producer实例之前先修改该系统变量,修改后问题解决

public void open(Configuration parameters) throws Exception {if (testEnvProducer == null) {//需要覆盖该环境变量,因为mq client有内部缓存,使用了该环境变量作为获取client instance的条件,详情见 org.apache.rocketmq.client.ClientConfig#buildMQClientIdSystem.setProperty("rocketmq.client.name", "SEND_TO_TEST_CLIENT");testEnvProducer = new DefaultMQProducer(JOB_TAG + "_test");testEnvProducer.setNamesrvAddr(SINK_ADDRESS);testEnvProducer.start();}if (prodEnvProducer == null) {//需要覆盖该环境变量,因为mq client有内部缓存,使用了该环境变量作为获取client instance的条件,详情见 org.apache.rocketmq.client.ClientConfig#buildMQClientIdSystem.setProperty("rocketmq.client.name", "SEND_TO_PROD_CLIENT");prodEnvProducer = new DefaultMQProducer(JOB_TAG + "_prod");prodEnvProducer.setNamesrvAddr(SOURCE_ADDRESS);prodEnvProducer.start();}
}

大家在实际开发中如果有这种场景的话也要注意哦!
在这里插入图片描述

http://www.15wanjia.com/news/25536.html

相关文章:

  • 福田网站建设龙岗网站建设龙岗网站建设龙岗网站建设太原网站建设方案优化
  • wordpress 侧滑seo同行网站
  • 遂溪 网站今日新闻热点大事件
  • 宁波专业网站建设公司深圳品牌seo
  • 企业网站实名审核中心电商平台推广方案
  • 网站英语潍坊网站定制模板建站
  • 营销网站运营的基本环节seo课程培训班
  • 深圳网站制作公司东莞市网站建设
  • 个人注册网站一般做什么短视频搜索seo
  • 企业站官网网页开发培训网
  • niche网站建设百度图片
  • 手机如何创建个人网站seo诊断工具有哪些
  • 网站推广手段有哪些贵州网站seo
  • 网站用户后台是怎么做的厦门seo全网营销
  • 长沙网站备案近期国家新闻
  • 广州seo网站营销青岛快速排名优化
  • 老外做的中国方言网站电商平台开发
  • 广西省建设厅建委网站网络推广公司简介
  • 黄骅贴吧windows优化大师怎么彻底删除
  • .net商城网站模板下载全球搜索大全
  • 企业网络拓扑图的设计方案网站优化网
  • 找工程去哪个网站seo短视频网页入口引流
  • 在南昌市做网站到哪seo的推广技巧
  • 下载别人做的ppt的网站海外游戏推广平台
  • 公安网站备案流程湖南优化电商服务有限公司
  • 保定市清苑区网站建设优化营商环境个人心得体会
  • 合肥网站建设技术合肥网络seo
  • 哪些公司做外贸网站好网站seo优化技巧
  • wordpress信息分类主题搜索引擎优化包括哪些方面
  • 蒙阴做网站搜索引擎优化是指