server
职责
- 接收业务消息
- 白名单判断
- 将消息传给给下游pchan
源码实现
源码实现请见server.go
server结构
type Server struct {mqs []string //已注册mq类型tcp net.Listener //tcp监听对象unix net.Listener //unixSocket监听对象path string //socket文件地址Input chan<- []byte //下游pchan中的input管道locker *sync.RWMutex //锁counter int64 //成功发送消息计数failcnt int64 //失败消息计数validTopic map[string]bool //kafka rocketmq nsa 白名单validExchange map[string]bool //rabbitmq 白名单exit chan struct{} //退出信号}
