private static void StartServerByAnnotaions() { var factory = new LoggerFactory(); factory.AddConsole(LogLevel.Debug); var processor = new ThriftServiceProcessor(factory, new Thrifty.ScribeTest()); var config = new ThriftServerConfig() { BindingAddress = "0.0.0.0", Port = 9999, IdleConnectionTimeout = TimeSpan.FromMinutes(10), QueueTimeout = TimeSpan.FromMinutes(10), TaskExpirationTimeout = TimeSpan.FromMinutes(10) }; var server = new ThriftServer(processor, config, loggerFactory: factory); server.StartAsync(); }
/// <summary> /// 构造函数 /// </summary> /// <param name="serviceLocator">服务定位器</param> /// <param name="config">服务器配置</param> /// <param name="handlers">handlers</param> /// <param name="serviceTypes">实例对象类型</param> /// <param name="codescs">自定义codec</param> /// <param name="sslConfig"></param> /// <param name="loggerFactory">logger</param> internal ThriftyServer( IServiceLocator serviceLocator, ThriftServerConfig config, List <ThriftEventHandler> handlers, IEnumerable <Type> serviceTypes, IEnumerable <IThriftCodec> codescs, SslConfig sslConfig = null, ILoggerFactory loggerFactory = null) { this._config = config; this._handlers = handlers; this._serviceTypes = serviceTypes; this._codescs = codescs; this._sslConfig = sslConfig; this._loggerFactory = loggerFactory; this._serviceLocator = serviceLocator; this._logger = loggerFactory?.CreateLogger <ThriftyServer>() ?? (ILogger)NullLogger.Instance; }