实践常见的RPC框架:Thrift

本文介绍了Thrift,一种跨语言服务开发的RPC框架,详细阐述了如何安装Thrift编译器,编写Thrift IDL文件,并通过示例展示了如何在Java环境中实现RPC功能,包括服务端和客户端的代码实现。
摘要由CSDN通过智能技术生成

实践常见的RPC框架:Thrift

一、Thrift介绍

维基百科上对Thrift的介绍如下:

Thrift是一种接口描述语言和二进制通讯协议,[1]它被用来定义和创建跨语言的服务。[2]它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。它通过一个代码生成引擎联合了一个软件栈,来创建不同程度的、无缝的跨平台高效服务,可以使用C#C++(基于POSIX兼容系统[3])、Cappuccino、[4]CocoaDelphiErlangGoHaskellJavaNode.jsOCamlPerlPHPPythonRubySmalltalk。[5]虽然它以前是由Facebook开发的,但它现在是Apache软件基金会开源项目了。该实现被描述在2007年4月的一篇由Facebook发表的技术论文中,该论文现由Apache掌管。[6]

需要安装thrift编译器,将Thrift的接口定义文件编译成对应的技术栈的代码。

二、Thrift使用示例

参考:

2.1 安装Thrift编译器

macbook下:

brew install thrift

可以在IDEA中添加Thrift support插件。

2.2 编写Thrift的IDL文件

参考官方的IDL文件示例:https://git-wip-us.apache.org/repos/asf?p=thrift.git;a=blob_plain;f=test/ThriftTest.thrift;hb=HEAD

myrpc.thrift内容如下:

namespace java com.hef.demo.thrift.api

struct User {
  1: i32 id,
  2: string name
}

service UserService {
   User findUser(1 : i32 id)
}

struct Order {
  1: i32 id,
  2: string name,
  3: double amount
}

service O
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值