刚开始用thrift,server端是python,看到有下面几个server可用:
- TServer.TSimpleServer
- TServer.TThreadedServer
- TServer.TThreadPoolServer
- TServer.TForkingServer
目前进行了简单测试
- TSimpleServer单线程单进程,并发处理得排队。感觉基本上是用在开发测试环境使一使。
- TThreadedServer和TThreadPoolServer两个测试结果基本一致,20个并发下总时间比TSimpleServer性能高50%左右。
- TForkingServer并发下每个client会fork出一个新进程来处理,在20并发下测试性能远高于上面两个。
不清楚在具体生产环境中大家如何选择,请有经验的同学指教。