支持注入连接管理实例
This commit is contained in:
parent
551da36ac9
commit
88112bc2d0
@ -9,6 +9,7 @@ package config
|
||||
|
||||
import (
|
||||
"github.com/go-developer/gopkg/logger"
|
||||
"github.com/go-developer/websocket/storage"
|
||||
"go.uber.org/zap/zapcore"
|
||||
)
|
||||
|
||||
@ -48,14 +49,15 @@ const (
|
||||
//
|
||||
// Date : 7:02 下午 2021/4/17
|
||||
type WSServerConfig struct {
|
||||
Mode string // 运行模式
|
||||
LogEnable bool // 开启日志
|
||||
LogConsole bool // 开启控制台日志输出
|
||||
LogPath string // 日志路径
|
||||
LogFile string // 日志文件名
|
||||
LogLevel zapcore.Level // 日志等级
|
||||
LogSplitInterval logger.TimeIntervalType // 日至切割的时间间隔
|
||||
StoreConnection bool // 存储连接
|
||||
Mode string // 运行模式
|
||||
LogEnable bool // 开启日志
|
||||
LogConsole bool // 开启控制台日志输出
|
||||
LogPath string // 日志路径
|
||||
LogFile string // 日志文件名
|
||||
LogLevel zapcore.Level // 日志等级
|
||||
LogSplitInterval logger.TimeIntervalType // 日至切割的时间间隔
|
||||
StoreConnection bool // 存储连接
|
||||
ConnectionManager storage.IConnection // 连接管理实例
|
||||
}
|
||||
|
||||
// SetWSServerConfig 设置WS-Server的配置
|
||||
@ -110,13 +112,14 @@ func DisableStoreConnection() SetWSServerConfig {
|
||||
// Date : 7:21 下午 2021/4/17
|
||||
func NewWSServerConfig(optionList ...SetWSServerConfig) *WSServerConfig {
|
||||
c := &WSServerConfig{
|
||||
Mode: DefaultMode,
|
||||
LogEnable: DefaultLogEnable,
|
||||
LogConsole: DefaultLogConsole,
|
||||
LogPath: "",
|
||||
LogLevel: DefaultLogLevel,
|
||||
LogSplitInterval: DefaultLogSplitInterval,
|
||||
StoreConnection: DefaultStoreConnection,
|
||||
Mode: DefaultMode,
|
||||
LogEnable: DefaultLogEnable,
|
||||
LogConsole: DefaultLogConsole,
|
||||
LogPath: "",
|
||||
LogLevel: DefaultLogLevel,
|
||||
LogSplitInterval: DefaultLogSplitInterval,
|
||||
StoreConnection: DefaultStoreConnection,
|
||||
ConnectionManager: storage.NewDefaultConnectionManager(),
|
||||
}
|
||||
for _, o := range optionList {
|
||||
o(c)
|
||||
|
@ -12,15 +12,15 @@ import (
|
||||
"github.com/go-developer/websocket/context"
|
||||
)
|
||||
|
||||
var (
|
||||
// Connection 连接管理
|
||||
Connection IConnection
|
||||
)
|
||||
|
||||
func init() {
|
||||
// NewDefaultConnectionManager 默认的内存连接管理实例
|
||||
//
|
||||
// Author : go_developer@163.com<张德满>
|
||||
//
|
||||
// Date : 11:32 下午 2021/4/17
|
||||
func NewDefaultConnectionManager() IConnection {
|
||||
c := &connection{}
|
||||
c.table, _ = easymap.NewSegment(4096, true)
|
||||
Connection = c
|
||||
return c
|
||||
}
|
||||
|
||||
type connection struct {
|
||||
|
Loading…
Reference in New Issue
Block a user