-
参照RestController跟RequestMapping添加ThriftController注解
@ThriftController(value = "/thriftcaclcu") public class CalculatorController implements TCalculatorService.Iface { @Override public int calculate(int num1, int num2, TOperation op) throws TException{ // your code } }
-
添加spring cloud sleuth支持
-
参照FeignClient添加ThriftClient注解
@ThriftClient(serviceId = "bbthriftserver", path = "/thriftcaclcu") TCalculatorService.Client tcalculatorClient;
-
相关配置
bbthriftserver: endpoint: #cloud情况下默认为空,非空就是直连 connectTimeout: 1000 readTimeout: 10000 thrift.client.max.threads: 10 #默认即10
- 扩展TTransport支持从注册中心获取服务列表并根据既定策略进行负载,详见TLoadBalancerClient类,利用Netflix
- 服务端添加Metrics支持,统计各服务响应时间及各方法调用次数
- 封装TServiceClient支持超时熔断保护利用Hystrix
- 扩展TProtocol支持调用信息采集操作
- 扩展TProcessor支持信息采集操作及安全监测
- 服务请求链路上下文调用链路传递
- thrift-definition thrift定义文件所在工程
- thrift-server是一个关于如何使用的例子,需要在本地启动一个consul agent,里面的常规restcontroller中模拟一个向thriftcontroller请求的例子