2021-05-26 19:24:25 +08:00
package gate
import (
2021-10-11 22:12:01 +08:00
"Open_IM/pkg/common/config"
2022-03-31 11:28:51 +08:00
"Open_IM/pkg/common/constant"
2021-10-11 22:12:01 +08:00
"Open_IM/pkg/common/log"
2022-02-25 19:49:38 +08:00
"Open_IM/pkg/statistics"
"fmt"
2021-05-26 19:24:25 +08:00
"github.com/go-playground/validator/v10"
"sync"
)
var (
2022-03-01 15:53:33 +08:00
rwLock * sync . RWMutex
validate * validator . Validate
ws WServer
rpcSvr RPCServer
sendMsgCount uint64
userCount uint64
2021-05-26 19:24:25 +08:00
)
func Init ( rpcPort , wsPort int ) {
//log initialization
2022-03-31 11:28:51 +08:00
log . NewPrivateLog ( constant . LogFileName )
2021-05-26 19:24:25 +08:00
rwLock = new ( sync . RWMutex )
validate = validator . New ( )
2022-03-09 11:25:51 +08:00
statistics . NewStatistics ( & sendMsgCount , config . Config . ModuleName . LongConnSvrName , fmt . Sprintf ( "%d second recv to msg_gateway sendMsgCount" , sendMsgCount ) , 300 )
statistics . NewStatistics ( & userCount , config . Config . ModuleName . LongConnSvrName , fmt . Sprintf ( "%d second add user conn" , userCount ) , 300 )
2021-05-26 19:24:25 +08:00
ws . onInit ( wsPort )
rpcSvr . onInit ( rpcPort )
}
func Run ( ) {
go ws . run ( )
go rpcSvr . run ( )
}