首页 > 代码库 > .net Thrift 之旅 (二) TServer
.net Thrift 之旅 (二) TServer
上一次做了一个简单的HelloWorld程序,但是只是简单的调用是远远不够的,还是要不断深入了解Thrift。
这回了解一下服务端的TServer
首先在命名空间Thrift.Server下,有3种Server
首先TSimpleServer,就是单线程的服务,每次同时只能处理一个连接,意思就是不支持并发
THreadedServer,就是多线程服务,每次请求创建一个连接。这样有个问题就是比较耗cpu
THreadedServer,就是基于线程池的服务,可以设置连接池最大线程池。有池就不会每次连接都创建连接,可以提高性能。
举个例子
1.服务端使用TSimpleServer,开启服务
2.客户端open()连接口,不要关闭
transport.Open(); DateTime begin = DateTime.Now; var users = client.GetAllUser(); DateTime end = DateTime.Now; Console.WriteLine(string.Format("cost {0} ms ", (end - begin).TotalMilliseconds)); //transport.Close();
3.打开2个客户端
你会看到第二个客户端一直在等待,当你关掉第一个客户端后,第二个客户端就继续执行了
THreadedServer和THreadedServer 通过设置最大线程数来支持并发,就不再贴图。
.net Thrift 之旅 (二) TServer
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。