python - thrift 返回 TSocket read 0 bytes 求助!!!!
问题描述
关键代码(服务器1 start_server.py):
# Server 端对中文字段处理 if isinstance(value, unicode): value = value.encode('utf8') setattr(tobj, k, value)
关键代码(服务器2 start_server.py):
# Server 端对中文字段处理 if isinstance(value, unicode): pass setattr(tobj, k, value)
这样看可能更清楚:
client主要代码:
client.get_user(1)
操作:python start_server.py
python client.py
主要现象:
服务器1返回正常数据。服务器2返回正常数据。
但是,如果机器1用机器2的代码,或者服务器2用服务器1的代码,那么返回:TSocket read 0 bytes
我的问题:
为什么相同的代码在两台配置相同的机器会出现不同的结果(一个正常一个不正常)?服务器相关配置:服务器1:Ubuntu 14.04.5 LTSPython 2.7.6Apache Thrift 版本 Thrift version 0.10.0
服务器2:Ubuntu 14.04.2 LTSPython 2.7.6Apache Thrift version 0.10.0
其它依赖均从requirements.txt安装。具体内容:sqlalchemy==1.0.12MySQL-Python==1.2.5thrift==0.10.0
顺便附上我的一篇博客内容:thrift中的一些坑。原来并不是版本问题。
问题解答
回答1:是因为客户端发过去的字符不一样导致的吧
相关文章:
1. docker绑定了nginx端口 外部访问不到2. java - 为什么此私有静态变量能被访问呢?3. angular.js - angular内容过长展开收起效果4. docker容器呢SSH为什么连不通呢?5. nignx - docker内nginx 80端口被占用6. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?7. docker网络端口映射,没有方便点的操作方法么?8. php - mysql 模糊搜索问题9. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下10. php - 第三方支付平台在很短时间内多次异步通知,订单多次确认收款
