1.课中使用apipost工具来测试RigorAck模式,需要在服务端返回seq=1的信息后再向服务端发送一条seq=2的信息。
2.那么在课程前面讲到的私聊功能中,kafka消费到一条信息后,调用client向ws server发送了一条方法为push的消息,此时还会触发ack验证吗?如果触发了ack验证,那么是否需要在task端收到seq=1的信息后再向ws server发送seq=2的消息以在这里输入代码完成ack确认?
func (m *MsgChatTransfer) Consume(ctx context.Context, key, value string) error {
var (
data mq.MsgChatTransfer
)
if err := json.Unmarshal([]byte(value), &data); err != nil {
return err
}
// 记录消息
if err := m.addChatLog(ctx, &data); err != nil {
return err
}
// 这里向ws client发送了一条Method:"push"的消息,是否会触发ack验证?
// 推送消息
return m.svc.WsClient.Send(websocket.Message{
FrameType: websocket.FrameData,
Method: "push",
FormId: constants.SYSTEM_ROOT_UID,
Data: data,
})
return nil
}
登录后可查看更多问答,登录/注册