# Thrift.Utility **Repository Path**: myjava/Thrift.Utility ## Basic Information - **Project Name**: Thrift.Utility - **Description**: 基于Thrift的微服务框架,使用XML配置对连接进行管理,使用了连接池管理获取Tcp Socket连接。更多介绍请访问博客园地址http://www.cnblogs.com/DKSL - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 21 - **Created**: 2016-06-19 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #Thrift.Utility 使用须知: Thrift跨平台的,java,php什么的都可以调暴露的接口。 此程序集是对Thrift的封装。使用连接池,支持对多个服务端口进行调用。 服务端超时或者抛异常只是当次调用出错,新的请求服务端会重新开线程去让调用端调用。客户端并不会因为服务端超时而获得非该次请求的返回数据。 可以不使用程序集定义的调用方法,由开发者自己约定输入输出的格式,通过调用程序集返回的Client实例,来进行服务端接口的访问, 当然要开发者自己进行错误处理,错误处理也很简单,超时抛IOException,服务端异常抛TTransportException。服务端身份验证要想想怎么处理。 一般情况,服务端和客户端服务器应在同一个内网,所以可以不用进行接口调用的身份验证,只需保证服务端不被外网访问即可。 当然也可以简单的,采用对客户端调用时间戳加密,并把时间戳和密文发到服务端后,用相同的加密算法对时间戳加密,对密文进行比较来验证。 更高安全性验证方式,待考虑。 关于负载均衡,这是一个切分的问题,单一个端口暴露的服务性能不满足时,是部署更多端口还是拆分成多个小服务,待考虑。 但是不建议分布使用对象,即不建议拆分成更多小服务。部署更多端口的话,可以用nginx代理来实现分布式。 还可以考虑使用动态代理来方便调用,这部分暂不开源。有兴趣的私聊。