NewWebsocketHandler에 redisClient를 받음

This commit is contained in:
2023-09-06 19:13:34 +09:00
parent 25fef67c07
commit db3b0c8d08

View File

@ -156,17 +156,12 @@ func init() {
gob.Register([]any{}) gob.Register([]any{})
} }
func NewWebsocketHandler(consumer session.Consumer) (*WebsocketHandler, error) { func NewWebsocketHandler(consumer session.Consumer, redisClient *redis.Client) (*WebsocketHandler, error) {
var config wsConfig var config wsConfig
if err := gocommon.LoadConfig(&config); err != nil { if err := gocommon.LoadConfig(&config); err != nil {
return nil, err return nil, err
} }
redisSync, err := gocommon.NewRedisClient(config.Redis["wshandler"])
if err != nil {
return nil, err
}
sendchan := make(chan send_msg_queue_elem, 1000) sendchan := make(chan send_msg_queue_elem, 1000)
go func() { go func() {
sender := func(elem *send_msg_queue_elem) { sender := func(elem *send_msg_queue_elem) {
@ -185,9 +180,9 @@ func NewWebsocketHandler(consumer session.Consumer) (*WebsocketHandler, error) {
}() }()
return &WebsocketHandler{ return &WebsocketHandler{
redisMsgChanName: fmt.Sprintf("_wsh_msg_%d", redisSync.Options().DB), redisMsgChanName: fmt.Sprintf("_wsh_msg_%d", redisClient.Options().DB),
redisCmdChanName: fmt.Sprintf("_wsh_cmd_%d", redisSync.Options().DB), redisCmdChanName: fmt.Sprintf("_wsh_cmd_%d", redisClient.Options().DB),
redisSync: redisSync, redisSync: redisClient,
connInOutChan: make(chan *wsconn), connInOutChan: make(chan *wsconn),
deliveryChan: make(chan any, 1000), deliveryChan: make(chan any, 1000),
localDeliveryChan: make(chan any, 100), localDeliveryChan: make(chan any, 100),