3

我让自己对如何去做这件事有点困惑。我的计划是使用 PHP 来执行最终的页面构建,这个 PHP Web 应用程序将联系多个服务,我也将开发这些服务来获取数据。可以说其中一项服务是用 Java 完成的。我将定义一个由具体类实现的 Java 接口。这就是我感到困惑的地方 - Thrift 如何将 PHP Web 应用程序与 Java 服务链接起来,还是我完全搞混了?

谢谢

4

2 回答 2

6

Thrift 基于使用IDL(接口定义语言)。使用维基百科的定义:

接口描述语言(或者,接口定义语言)或简称 IDL,是一种用于描述软件组件接口的规范语言。IDL 以与语言无关的方式描述接口,使不共享语言的软件组件之间能够进行通信——例如,用 C++ 编写的组件和用 Java 编写的组件之间的通信。

Thrift 教程中提供了有关如何使用 Thrift 界面语言的示例。

通过使用.thrift文件,您可以定义所需的接口(根据类型和服务)。例如,在您的 .thrift 文件中,您可以定义一个简单的函数,例如:

i32 add(1:i32 num1, 2:i32 num2)

表示对两个整数求和的函数。

准备好.thrift文件后,您可以使用 Thrift 生成器生成 Java、PHP、Erlang 以及您需要的任何代码(服务器端或客户端)。

有关更多信息,请参阅Thrift wiki

于 2010-04-05T09:52:17.487 回答
1

我很想看看 Thrift 和 PHP/Java 桥http://php-java-bridge.sourceforge.net/pjb/之间的基准。心里我会提倡 Thrift,但我怀疑它和 php/java 桥一样快。

于 2010-10-04T00:41:49.177 回答