首页 文章

什么是RPC框架和Apache Thrift?

提问于
浏览
80

我需要为大学项目学习Apache Thrift . 正如tutorial所说,它是一个RPC框架,它是除了their documentation之外我唯一可以为Thrift找到的文档 .

有人能告诉我什么是RPC框架,这与Apache Thrift有什么关系?

1 回答

  • 124

    RPC framework 通常是一组工具,使程序员能够在远程进程中调用一段代码,无论是在不同的机器上还是在同一台机器上的另一个进程上 .

    Apache Thrift 的特定情况下,我们讨论了一个旨在高效的框架,并且可以跨OS平台和编程语言使用 . 此外,您在传输(例如套接字,管道等)和协议(二进制,JSON,甚至压缩)方面具有一定的灵活性,还有一些选项,如SSL或SASL支持 .

    For example ,您可以在Linux机器上设置服务器,用C语言编写,通过基于JSON的HTTP协议向全世界提供服务 . 这个服务可以由用Python编写的客户端程序调用,在Windows机器上运行 . 服务器和客户端的代码都是从Thrift IDL文件生成的 . 为了让它运行,你基本上只需要添加预期的程序逻辑并将所有部分组合在一起 .

    Apache Thrift的唯一最好的 reference 仍然是Apache Thrift Whitepaper . 虽然在某些细节上略显过时,但基础概念仍然有效 . 另一个很好的读物是Diwaker Gupta's "Missing Guide",最后一个是Randy Abernethy即将出版的书 .

    对于初学者,我建议从Apache Thrift tutorial suite开始,这些例子展示了很多核心功能 . 如果您遇到问题,欢迎您在此处或Thrift邮件列表上询问 .

相关问题