From e1890392075ce73bff71c5dc0167f8af46cba0a1 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期六, 21 十月 2023 14:43:21 +0800
Subject: [PATCH] 事件幂等性操作
---
nsq/nsq.go | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/nsq/nsq.go b/nsq/nsq.go
index 3887253..847da9a 100644
--- a/nsq/nsq.go
+++ b/nsq/nsq.go
@@ -10,11 +10,13 @@
"errors"
"fmt"
"sync"
+ "sync/atomic"
)
type consumerManager struct {
- ctx context.Context
- clients sync.Map
+ ctx context.Context
+ clients sync.Map
+ initFlag int32
}
var defaultConsumerManager *consumerManager
@@ -27,6 +29,9 @@
if len(conf.Conf.NsqConf.NodeId) <= 0 {
return errors.New("no NodeId")
}
+ if !atomic.CompareAndSwapInt32(&c.initFlag, 0, 1) {
+ return nil
+ }
if err := initProducer(); err != nil {
return err
}
--
Gitblit v1.8.0