切换导航条
此项目
正在载入...
登录
mmm-go
/
partnermg
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
唐旭辉
4 years ago
提交
fea30474bcf737703cbcb4592b6b40bf2dac1eb2
1 个父辈
e293314d
更新
隐藏空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
17 行增加
和
66 行删除
main.go
pkg/constant/kafka.go
pkg/domain/order_bestshop.go
pkg/port/consumer/consumer.go
main.go
查看文件 @
fea3047
...
...
@@ -24,12 +24,12 @@ func main() {
beego
.
Run
()
}()
consumerRun
:=
consumer
.
NewRuner
()
if
err
:=
consumerRun
.
InitConsumer
();
err
!=
nil
{
logs
.
Error
(
"启动kafka消息消费者失败:%s"
,
err
)
}
wg
:=
&
sync
.
WaitGroup
{}
wg
.
Add
(
1
)
go
func
()
{
if
err
:=
consumerRun
.
InitConsumer
();
err
!=
nil
{
logs
.
Error
(
"启动kafka消息消费者失败:%s"
,
err
)
}
consumerRun
.
Start
(
ctx
)
wg
.
Done
()
}()
...
...
pkg/constant/kafka.go
查看文件 @
fea3047
...
...
@@ -14,7 +14,7 @@ var KafkaCfg KafkaConfig
func
init
()
{
KafkaCfg
=
KafkaConfig
{
Servers
:
[]
string
{
"1
06.52.15.41
:9092"
},
Servers
:
[]
string
{
"1
92.168.190.136
:9092"
},
ConsumerId
:
"partnermg_local"
,
}
if
os
.
Getenv
(
"KAFKA_HOST"
)
!=
""
{
...
...
pkg/domain/order_bestshop.go
查看文件 @
fea3047
...
...
@@ -95,6 +95,9 @@ func (good OrderGoodBestShop) CopyToOrderGood(g *OrderGood) {
g
.
Price
=
good
.
Price
g
.
PlanGoodNumber
=
good
.
Nums
g
.
GoodCompute
.
PlanAmount
=
good
.
Amount
g
.
BonusStatus
=
OrderGoodWaitPay
g
.
CurrentBonusStatus
=
OrderGoodBonusWaitPay
{}
g
.
CurrentBonusStatus
.
WartPayPartnerBonus
(
g
)
return
}
...
...
pkg/port/consumer/consumer.go
查看文件 @
fea3047
...
...
@@ -22,20 +22,6 @@ type MessageConsumer struct {
afterHandles
[]
TopicHandle
}
// func NewMessageConsumer() *MessageConsumer {
// topics := []string{}
// for key := range TopicHandleRouters {
// topics = append(topics, key)
// }
// return &MessageConsumer{
// ready: make(chan bool),
// kafkaHosts: configs.Cfg.Servers,
// groupId: configs.Cfg.ConsumerId,
// topicsHandles: TopicHandleRouters,
// topics: topics,
// }
// }
//实现对应的接口
var
_
sarama
.
ConsumerGroupHandler
=
(
*
MessageConsumer
)(
nil
)
...
...
@@ -128,59 +114,21 @@ func (r *Runer) Start(ctx context.Context) {
for
{
select
{
case
<-
ctx
.
Done
()
:
err
:=
r
.
consumerGroup
.
Close
()
logs
.
Warning
(
"ctx cancel;consumerGroup.Close();err:%s"
,
err
)
logs
.
Warning
(
"ctx cancel;consumerGroup.Close()"
)
r
.
consumerGroup
.
Close
()
return
default
:
if
err
:=
r
.
consumerGroup
.
Consume
(
ctx
,
r
.
msgConsumer
.
topics
,
r
.
msgConsumer
);
err
!=
nil
{
logs
.
Error
(
"consumerGroup err:%s
\n
"
,
err
)
//等待重试
timer
:=
time
.
NewTimer
(
5
*
time
.
Second
)
<-
timer
.
C
}
r
.
msgConsumer
.
ready
=
make
(
chan
struct
{})
}
if
err
:=
r
.
consumerGroup
.
Consume
(
ctx
,
r
.
msgConsumer
.
topics
,
r
.
msgConsumer
);
err
!=
nil
{
logs
.
Error
(
"consumerGroup err:%s
\n
"
,
err
)
//等待重试
timer
:=
time
.
NewTimer
(
5
*
time
.
Second
)
<-
timer
.
C
}
r
.
msgConsumer
.
ready
=
make
(
chan
struct
{})
}
}
func
(
r
*
Runer
)
IsReady
()
<-
chan
struct
{}
{
return
r
.
msgConsumer
.
ready
}
//StartConsumer 启动
//返回 Consumer关闭方法 和 error
// func StartConsumer(ctx context.Context) (func(), error) {
// consumer := NewMessageConsumer()
// config := sarama.NewConfig()
// config.Consumer.Group.Rebalance.Strategy = sarama.BalanceStrategyRoundRobin
// config.Consumer.Offsets.Initial = sarama.OffsetNewest
// config.Version = sarama.V0_11_0_2
// consumerGroup, err := sarama.NewConsumerGroup(consumer.kafkaHosts, consumer.groupId, config)
// if err != nil {
// return func() {}, err
// }
// wg := &sync.WaitGroup{}
// wg.Add(1)
// go func() {
// defer wg.Done()
// for {
// if err := ctx.Err(); err != nil {
// logs.Error("ctx err:%s \n", err)
// return
// }
// if err := consumerGroup.Consume(ctx, consumer.topics, consumer); err != nil {
// logs.Error("consumerGroup err:%s \n", err)
// }
// consumer.ready = make(chan bool)
// }
// }()
// //等待 consumerGroup 设置完成
// <-consumer.ready
// logs.Info("Sarama consumer up and running!...")
// return func() {
// wg.Wait()
// if err := consumerGroup.Close(); err != nil {
// logs.Error("consumerGroup.Close err %s", err)
// }
// logs.Info("consumerGroup.Close")
// }, nil
// }
...
...
请
注册
或
登录
后发表评论