博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.net Thrift 之旅 (二) TServer
阅读量:4678 次
发布时间:2019-06-09

本文共 741 字,大约阅读时间需要 2 分钟。

上一次做了一个简单的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 通过设置最大线程数来支持并发,就不再贴图。

 

转载于:https://www.cnblogs.com/wangxm123/p/4121476.html

你可能感兴趣的文章
loongson 2f 和u-boot中的cache命令对照
查看>>
Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 1) B. Bear and Blocks 水题
查看>>
Codeforces Beta Round #8 C. Looking for Order 状压
查看>>
SCOJ 4484 The Graver Robbers' Chronicles 后缀自动机
查看>>
PHP+jquery+ajax实现分页
查看>>
务虚的全栈式开发
查看>>
[Coci2015]Divljak
查看>>
centos7中keepalived+nginx做双机热备和反向代理
查看>>
HDU 1250
查看>>
Introduction to my galaxy engine 6: Differed Lighting 2
查看>>
Python_深浅拷贝
查看>>
Oracle 中 not exists (select 'X' ...) 的含义
查看>>
Android必备的Java知识点
查看>>
ASP.NET网站实现中英文转换(本地化资源)【转】
查看>>
vue中 关于$emit的用法
查看>>
计算机基本介绍
查看>>
使用Flickr的图片拼出你的句子
查看>>
Visual Studio中web应用程序和网站区别
查看>>
浅析/dev/shm
查看>>
BZOJ4010 HNOI2015 菜肴制作 拓扑排序+贪心
查看>>