码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
Python跨语言调用Java服务Rpc接口
一、介绍
RPC(Remote Procedure Call)远程过程调用。RPC技术简单说就是为了解决远程调用服务的一种技术,使得调用者像调用本地服务一样方便透明。
Thrift:
是一个轻量级、跨语言的RPC框架,主要用于各个服务之间的RPC通信。Thrift支持多种编程语言,C++、Java、Python、Ruby、Node.js、Golang等。
使用场景:分布式系统,不同服务部署在不同的机器节点上,之间需要通过网络通信,如订单服务调用会员服务。
Thrift的架构:
从下至上
I/O层:socket
TTtransport:传输层TCP/IP,protobuf、json
TProtocal:协议层
IDL
code
Thrift特性
开发速度快
接口维护简单
学习成本低
多语言/跨语言支持
穩定/廣汎使用
IDL語法:
通用的接口描述语言。
Thrift是一个典型的C/S架构,客户端和服务端可以使用不同的语言开发,一定要有一种中间语言来关联客户端和服务端的语言。thrift采用IDL来定义通用的接口,然后通过thrift提供的编译器,可以将服务接口编译成不同语言编写的代码,通过这个方式来实现跨语言的功能。
IDL文件示例
thrift编译器的安装:
Apache Thrift - Download
IDL文件编译:
生成java:thrift --gen java xx.thrift
生成python:thrift --gen py xx.thrift
示例:D:\Downloads\aaaworkspache\thrift-0.16.0.exe --gen py xx/xx.thrift
可以把thrift配置到系统环境变量
二、Python安装thrift
pip3 install thrift
三、python调用Java
from
相关阅读:
蓝桥杯单片机综合练习——工厂灯光控制
序列模型 - 机器翻译
VIAVI唯亚威SmartPocket V2 OLS-35V2/-36V2 光学光功率计
.NET MAUI Sqlite程序应用-数据库配置(一)
RIAC-V架构开发——CSR指令访问控制与状态寄存器的两种方式(寄存器名字、寄存器编号)
【Mysql】 InnoDB引擎深入- 二级索引、联合索引、回表、索引覆盖
iNFTnews | 迪士尼如何布局Web3
单元测试实战(五)普通类的测试
(其他) 剑指 Offer 46. 把数字翻译成字符串 ——【Leetcode每日一题】
vite vue3 打包配置版本
原文地址:https://blog.csdn.net/m0_37518413/article/details/125530660
最新文章
攻防演习之三天拿下官网站群
数据安全治理学习——前期安全规划和安全管理体系建设
企业安全 | 企业内一次钓鱼演练准备过程
内网渗透测试 | Kerberos协议及其部分攻击手法
0day的产生 | 不懂代码的"代码审计"
安装scrcpy-client模块av模块异常,环境问题解决方案
leetcode hot100【LeetCode 279. 完全平方数】java实现
OpenWrt下安装Mosquitto
AnatoMask论文汇总
【AI日记】24.11.01 LangChain、openai api和github copilot
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
正则表达式工具
cron表达式工具
密码生成工具
京公网安备 11010502049817号