public bool Start(WebSocketServerConfig config) { ServerConfig serverConfig = new ServerConfig { Name = config.ServerName, MaxConnectionNumber = 10000, //最大允许的客户端连接数目,默认为100。 Mode = SocketMode.Tcp, Port = config.Port, //服务器监听的端口。 ClearIdleSession = false, //true或者false, 是否清除空闲会话,默认为false。 ClearIdleSessionInterval = 120, //清除空闲会话的时间间隔,默认为120,单位为秒。 ListenBacklog = 10, ReceiveBufferSize = 64 * 1024, //用于接收数据的缓冲区大小,默认为2048。 SendBufferSize = 64 * 1024, //用户发送数据的缓冲区大小,默认为2048。 //ReceiveBufferSize = 64 * 1024, //用于接收数据的缓冲区大小,默认为2048。 //SendBufferSize = 64 * 1024, //用户发送数据的缓冲区大小,默认为2048。 KeepAliveInterval = 1, //keep alive消息发送时间间隔。单位为秒。 KeepAliveTime = 60, //keep alive失败重试的时间间隔。单位为秒。 SyncSend = false }; if (config.Ip != null && !string.IsNullOrWhiteSpace(config.Ip.ToString())) { serverConfig.Ip = config.Ip.ToString(); } if (!_websocketServer.Setup(serverConfig)) { return(false); } return(_websocketServer.Start()); }
static void Main(string[] args) { _server = SuperWebSocketServer.GetIntance(); _server.OnReceiveMessage += Server_OnReceiveMessage; _server.OnReceiveBytes += Server_OnReceiveBytes; _server.OnClosed += Server_OnClosed; WebSocketServerConfig config = new WebSocketServerConfig { ServerName = "WebSocketServerDemo", Port = 58090, }; Console.WriteLine("Starting..."); var isSuccess = _server.Start(config); if (isSuccess) { Console.WriteLine("Starting Successful."); } else { Console.WriteLine("Starting Fail."); } Console.ReadKey(); }