diff --git a/server/options.go b/server/options.go index 83ac09a..371d5fa 100644 --- a/server/options.go +++ b/server/options.go @@ -48,10 +48,13 @@ func WithWebsocketMessageType(messageTypes ...int) Option { } // WithMessageBufferSize 通过特定的消息缓冲池大小运行服务器 -// - 默认大小为 1024 +// - 默认大小为 4096 * 1024 // - 消息数量超出这个值的时候,消息处理将会造成更大的开销(频繁创建新的结构体),同时服务器将输出警告内容 func WithMessageBufferSize(size int) Option { return func(srv *Server) { + if size <= 0 { + return + } srv.messagePoolSize = size } } diff --git a/server/server.go b/server/server.go index 9b179a6..336129c 100644 --- a/server/server.go +++ b/server/server.go @@ -87,7 +87,7 @@ func (slf *Server) Run(addr string) error { var connectionInitHandle = func(callback func()) { slf.initMessageChannel = true if slf.messagePoolSize <= 0 { - slf.messagePoolSize = 1024 + slf.messagePoolSize = 4096 * 1024 } slf.messagePool = synchronization.NewPool[*message](slf.messagePoolSize, func() *message {