perf: 调整 server.DefaultMessageChannelSize 为 65535,优化默认内存占用
This commit is contained in:
parent
0c5ff894f8
commit
3e9d56ec5b
|
@ -22,7 +22,7 @@ const (
|
||||||
|
|
||||||
const (
|
const (
|
||||||
DefaultMessageBufferSize = 1024
|
DefaultMessageBufferSize = 1024
|
||||||
DefaultMessageChannelSize = 1024 * 4096
|
DefaultMessageChannelSize = 1024 * 64
|
||||||
DefaultAsyncPoolSize = 256
|
DefaultAsyncPoolSize = 256
|
||||||
DefaultWebsocketReadDeadline = 30 * time.Second
|
DefaultWebsocketReadDeadline = 30 * time.Second
|
||||||
)
|
)
|
||||||
|
|
|
@ -69,6 +69,7 @@ func WithWebsocketCompression(level int) Option {
|
||||||
}
|
}
|
||||||
|
|
||||||
// WithMessageChannelSize 通过指定消息通道大小的方式创建服务器
|
// WithMessageChannelSize 通过指定消息通道大小的方式创建服务器
|
||||||
|
// - 足够大的消息通道可以确保服务器在短时间内接收到大量的消息而不至于阻塞
|
||||||
// - 默认值为 DefaultMessageChannelSize
|
// - 默认值为 DefaultMessageChannelSize
|
||||||
func WithMessageChannelSize(size int) Option {
|
func WithMessageChannelSize(size int) Option {
|
||||||
return func(srv *Server) {
|
return func(srv *Server) {
|
||||||
|
|
|
@ -8,13 +8,14 @@ import (
|
||||||
func ExampleNew() {
|
func ExampleNew() {
|
||||||
srv := server.New(server.NetworkWebsocket,
|
srv := server.New(server.NetworkWebsocket,
|
||||||
server.WithDeadlockDetect(time.Second*5),
|
server.WithDeadlockDetect(time.Second*5),
|
||||||
|
server.WithPProf("/debug/pprof"),
|
||||||
)
|
)
|
||||||
|
|
||||||
srv.RegConnectionReceivePacketEvent(func(srv *server.Server, conn *server.Conn, packet server.Packet) {
|
srv.RegConnectionReceivePacketEvent(func(srv *server.Server, conn *server.Conn, packet server.Packet) {
|
||||||
conn.Write(packet)
|
conn.Write(packet)
|
||||||
})
|
})
|
||||||
|
|
||||||
go func() { time.Sleep(1 * time.Second); srv.Shutdown() }()
|
//go func() { time.Sleep(1 * time.Second); srv.Shutdown() }()
|
||||||
if err := srv.Run(":9999"); err != nil {
|
if err := srv.Run(":9999"); err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue