博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《精通并发与Netty》学习笔记(07 - 基于Thrift实现Java与Python的RPC调用)
阅读量:4685 次
发布时间:2019-06-09

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

上节我们介绍了基于Thrift实现java与java的RPC调用,本节我们基于Thrift实现Java与Python的RPC调用

首先,修改data.thirft文件,将命名空间由java改为py   

namespace py thrift.generated

然后打开终端,输入命令 thrift --gen py src/thrift/data.thrift 生成Python代码

 打开Pycharm,新建Pure Python项目,将在idea中生成的python文件拷贝至Pycharm中

编写python客户端程序py_client.py

# -*- coding:utf-8 -*-from py.generated import PersonService, ttypes__author__ = 'kpzhang'from thrift import Thriftfrom  thrift.transport import TSocketfrom  thrift.transport import TTransportfrom  thrift.protocol import TCompactProtocoltry:    tSocket = TSocket.TSocket("localhost", 8899)    tSocket.setTimeout(900)    transport = TTransport.TFramedTransport(tSocket)    protocol = TCompactProtocol.TCompactProtocol(transport)    client = PersonService.Client(protocol)    transport.open()    person = client.getPersonByUsername("张三")    print(person.username)    print(person.age)    print(person.married)    print('---------------------')    newPerson = ttypes.Person();    newPerson.username = "李四"    newPerson.age = 30    newPerson.married = True    client.savePerson(newPerson)    transport.close()except Thrift.TException as tx:    print('%s' % tx.message)

分别启动java服务端和Python客户端,查看演示效果,(java端效果和上节效果一样,这里不再截图)

本节我们介绍了基于Thrift实现Java与Python的RPC调用,下节我们结合netty4+springboot来做一个小项目

转载于:https://www.cnblogs.com/happy2010/p/10894311.html

你可能感兴趣的文章
PageRank算法
查看>>
angualrJS学习入门记录
查看>>
git的介绍和配置
查看>>
团队项目 进展
查看>>
简单的NHibernate helper类,支持同一事务的批量数据处理
查看>>
导出数据库指定表所有数据
查看>>
C 语言 习题 1-14
查看>>
密码锁
查看>>
AVL树-查找-插入
查看>>
Codeforces 600E Lomsat gelral(dsu on tree)
查看>>
值类型和引用类型区别,一看就懂
查看>>
UVa 11375 Matches
查看>>
JdbcTemplate
查看>>
leetcode 2. 两数相加(Add Two Numbers)
查看>>
Crimm Imageshop 2.0 发布。
查看>>
分页存储过程
查看>>
不可忽略的知识点
查看>>
Xcode中修改默认文件头部注释
查看>>
从一个针对ASP.NET MVC框架的Controller.Action的请求处理顺序来说整个请求过程。
查看>>
[ZJOI2011]营救皮卡丘
查看>>