SuperSocket 1.5 Documentation译文 3 ----- 通过配置启动SuperSocket
为什么要通过配置启动服务器
- 避免硬编码
- SuperSocket提供了很多有用的配置选项
- 充分利用SuperSocket的工具
如何通过BootStrap的配置启动服务器
-
的SuperSocket配置部分使用.NET的默认配置技术,设计SuperSocket配置节:
<configSections> <section name="superSocket" type="SuperSocket.SocketEngine.Configuration.SocketServiceConfig, SuperSocket.SocketEngine" /> </configSections>
-
Server实例配置
<superSocket> <servers> <server name="TelnetServer" serverType="SuperSocket.QuickStart.TelnetServer_StartByConfig.TelnetServer, SuperSocket.QuickStart.TelnetServer_StartByConfig" ip="Any" port="2020"> </server> </servers> </superSocket>
现在,我在这里解释配置的服务器节点:
-
name: appServer实例的名称 serverType: 你要运行的appServer全名 ip: 监听ip port: 监听端口
-
我们将在下一份文档中充分的介绍文中的配置。
-
使用bootstrap启动SuperSocket
static void Main(string[] args) { Console.WriteLine("Press any key to start the server!"); Console.ReadKey(); Console.WriteLine(); var bootstrap = BootstrapFactory.CreateBootstrap(); if (!bootstrap.Initialize()) { Console.WriteLine("Failed to initialize!"); Console.ReadKey(); return; } var result = bootstrap.Start(); Console.WriteLine("Start result: {0}!", result); if (result == StartResult.Failed) { Console.WriteLine("Failed to start!"); Console.ReadKey(); return; } Console.WriteLine("Press key 'q' to stop it!"); while (Console.ReadKey().KeyChar != 'q') { Console.WriteLine(); continue; } Console.WriteLine(); //Stop the appServer bootstrap.Stop(); Console.WriteLine("The server was stopped!"); Console.ReadKey(); }
-
一些简单配置
-
服务器类型的节点:
<superSocket> <servers> <server name="TelnetServer" serverTypeName="TelnetServer" ip="Any" port="2020"> </server> </servers> <serverTypes> <add name="TelnetServer" type="SuperSocket.QuickStart.TelnetServer_StartByConfig.TelnetServer, SuperSocket.QuickStart.TelnetServer_StartByConfig"/> </serverTypes> </superSocket>
-
多服务器实例:
<superSocket> <servers> <server name="TelnetServerA" serverTypeName="TelnetServer" ip="Any" port="2020"> </server> <server name="TelnetServerB" serverTypeName="TelnetServer" ip="Any" port="2021"> </server> </servers> <serverTypes> <add name="TelnetServer" type="SuperSocket.QuickStart.TelnetServer_StartByConfig.TelnetServer, SuperSocket.QuickStart.TelnetServer_StartByConfig"/> </serverTypes> </superSocket>
SuperSocket.SocketService.exe,提供SuperSocket运行的容器
- 直接使用SuperSocket.SocketService.exe
- 确保您的服务器所需的所有组件和SuperSocket.SocketService.exe都在同一个目录
- 将你的SuperSocket配置节点放到SuperSocket.SocketServer.exe.config内
- 直接运行“SuperSocket.SocketService.exe”,你定义的服务器将运行
- 作为Windows服务安装SuperSocket.SocketService.exe
您可以在Windows服务运行一个命令行参数“-i”来安装SuperSocket.SocketService.exe:
SuperSocket.SocketSerrvice.exe -i
Windows service name是在配置文件中定义的,你可以根据你的需求改变它:
<appSettings> <add key="ServiceName" value="SupperSocketService" /> </appSettings>
该服务自然还可以根据命令行参数“-U”来卸载:
SuperSocket.SocketSerrvice.exe -u


浙公网安备 33010602011771号