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

福州网站制作有限公司潍坊做网站多少钱

福州网站制作有限公司,潍坊做网站多少钱,微信官方网站首页,建设英文网站公司哪家好本人理解#xff0c;顺序消息如果不分消息组#xff0c;那么会影响并行处理速度#xff0c;所以尽量消息组分的散一些 首先上要求#xff0c;官方文档如下#xff1a; 总结#xff1a; 1.必须同一个消息组#xff0c;消息组和消费组不是一个概念#xff0c;不要混 2.必…本人理解顺序消息如果不分消息组那么会影响并行处理速度所以尽量消息组分的散一些 首先上要求官方文档如下 总结 1.必须同一个消息组消息组和消费组不是一个概念不要混 2.必须单一生产者也就是说线上生产只能开一个 pod感觉局限有点高无法多 pod 接入 3.必须串行发送这个点也不太好限制过高 以上三点 在我的案例中企业微信回调消息 那么只能开一个接口服务Pod 来接收微信回调如果挂了那完蛋开多个 pod的话那只有把请求放队列通过队列pop进行消费再生产消息到 mq,这样同时也解决了第三点的串行发送。 生产的时候如何确定是顺序消息,只需要生产消息的时候给设定一个消息组 msg : rmq_client.Message{ Topic: Topic,Body: []byte(this is a message : strconv.Itoa(i)), } // set keys and tag msg.SetKeys(a, b) msg.SetTag(ab) // 这里设置消息组 msg.SetMessageGroup(fifo)分组分的越细越好 提高消费速度 当拿到消息后根据消息分组来进行并发处理每个分组内进行串行处理关键代码如下 func (m *RocketMq) ConsumerOrderly(funcMap map[string]func([]byte) error) {var err errorm.consumerOnce.Do(func() {Log().Info(##############pro consume orderly start#############, m.MqConfig)errTmp : m.proSimConsumer.Start()if errTmp ! nil {Log().Panic(MQ启动失败, errTmp)return}})defer m.proSimConsumer.GracefulStop()// 总体保证有N个在运行var ch make(chan int, m.MaxGoroutine)for {fmt.Println(start receive message)mvs, errReceive : m.proSimConsumer.Receive(context.TODO(), 8, 20*time.Second)if errReceive ! nil {if strings.Contains(errReceive.Error(), no new message) {Log().Info(errReceive)} else {Log().Error(顺序消息拉取MQ消息失败:, errReceive)}time.Sleep(time.Second * 2)continue}var msgGroupMap make(map[string][]*rmq_client.MessageView, 0)for _, v : range mvs {if _, ok : funcMap[*v.GetTag()]; !ok {Log().Error(v.GetTag(), : action do not exist)continue} else {// 根据msgGroup汇总msgGroup : v.GetMessageGroup()msgGroupMap[*msgGroup] append(msgGroupMap[*msgGroup], v)}}// 最大程度多线程消费for _, item : range msgGroupMap {ch - 1go func(item []*rmq_client.MessageView) {for _, v : range item {fmt.Println(*v.GetTag(), *v.GetMessageGroup(), string(v.GetBody()))action, _ : funcMap[*v.GetTag()]if errTmp : action(v.GetBody()); errTmp ! nil {Log().Error(mq顺序消费失败, errTmp)break} else {m.proSimConsumer.Ack(context.TODO(), v)}}-ch}(item)}} }最后需要注意的点 同一个消费者 Group ID 下所有的 Consumer 实例必须保证订阅的 Topic 一致并且也必须保证订阅 Topic 时设置的过滤规则Tag一致。否则您的消息可能会丢失 请保证订阅一致性
http://www.dnsts.com.cn/news/267637.html

相关文章:

  • 网站开发模板代码网站开发实战视频
  • 策划文案的网站做零售外贸网站有哪些
  • 企业营销型网站建设品牌如何在手机上制作游戏
  • 苏州网站关键词优化福建省公司注册网上核名
  • 网站建设3a模型是什么意思html5手机网站开发经验
  • 陕西网站建设电话互助县公司网站建设
  • 做网站图片做网站开发平台
  • 成都哪里好玩的地方排行榜前十名连云港市网站优化
  • 信息网站开发北京网站建设有哪些浩森宇特
  • 商务网站开发公司夜晚直播
  • 中山企业建站程序wordpress新建查询跳转
  • 网站建设排期表苏州seo关键词优化
  • 广州深圳做网站软件开发者
  • 德州网站优化公司怎样增加网站权重
  • 新媒体 网站建设 影视优秀免费h5页面制作
  • 营口网站seowordpress 主机主题
  • 快速优化工具seo教程seo入门讲解
  • 普洱市住房和城乡建设局网站网站设计一般什么字体
  • 如何使用记事本做网站网络购物平台哪个最好
  • 百度网站优化工具免费开店的平台有哪些
  • 陕西省住房和城乡建设部网站官网zoho企业邮箱
  • 小学校园网站怎么建设常熟有哪些网站建设公司
  • 怎么自己编程做网站扬州将建设网站
  • 网站app制作教程澄迈网站制作
  • 免费注册建网站香河网站建设
  • 博物馆门户网站建设方案whois查询 站长工具
  • 招聘网站做沙龙北京建机官网
  • win7dw做asp购物网站泰州网站建设方案开发
  • 西部数码网站管理助手4.0 教程百度帐号登录入口
  • 一站式网站建设设计wordpress gill sans