thrift概述

Apache Thrift 是FaceBook实现的一种跨平台的远程服务调用(RPC)的框架。它采用接口描述语言(IDL)定义并创建服务,传输数据采用二进制格式,相对于XML和Json等常用数据传输方式体积更小。

首先一个完整的RPC模块主要分三部分:

1.服务层(service):RPC接口的定义与实现

2.协议层(protocol):RPC报文格式和数据编码格式

3.传输层(transport):实现底层的通信(如socket)以及系统相关的功能(如事件循环、多线程)

时间: 2024-10-08 03:20:31

thrift概述的相关文章

Apache的开源项目thrift概述

一.作用 Thrift("Scalable Cross-Language Services Implementation")最早是Facebook的项目,后来Facebook提供给Apache作为开源项目. 一般情况下的跨机器的通信框架都是跨软件平台的(Linux,windows), 而Thrift最特别之处在于它是跨语言的:例如,你可以用几乎所有流行语言(C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, J

[ToDo]Thrift学习

可以借鉴以下两个页面: http://blog.csdn.net/poechant/article/details/6618264 Thrift使用入门(1) - Thrift概述及其安装 http://www.ibm.com/developerworks/cn/java/j-lo-apachethrift/ Apache Thrift - 可伸缩的跨语言服务开发框架

Apache Thrift系列详解(一)- 概述与入门

前言Thrift是一个轻量级.跨语言的远程服务调用框架,最初由Facebook开发,后面进入Apache开源项目.它通过自身的IDL中间语言, 并借助代码生成引擎生成各种主流语言的RPC服务端/客户端模板代码. Thrift支持多种不同的编程语言,包括C++.Java.Python.PHP.Ruby等,本系列主要讲述基于Java语言的Thrift的配置方式和具体使用. 正文Thrift的技术栈Thrift对软件栈的定义非常的清晰, 使得各个组件能够松散的耦合, 针对不同的应用场景, 选择不同是方

Apache Thrift with Java Quickstart(thrift入门及Java实例)

thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的.高效的服务. 1. 概述 Thrift最初由facebook开发,07年四月开放源码,08年5月进入apache孵化器.thrift允许你定义一个

计算机程序的思维逻辑 (56) - 文件概述

我们在日常电脑操作中,接触和处理最多的,除了上网,大概就是各种各样的文件了,从本节开始,我们就来探讨文件处理,本节主要介绍文件有关的一些基本概念和常识,Java中处理文件的基本思路和类结构,以及接来下章节的安排思路. 基本概念和常识 二进制思维 为了透彻理解文件,我们首先要有一个二进制思维.所有文件,不论是可执行文件.图片文件.视频文件.Word文件.压缩文件.txt文件,都没什么可神秘的,它们都是以0和1的二进制形式保存的.我们所看到的图片.视频.文本,都是应用程序对这些二进制的解析结果. 作

Thrift的java和php数据交互

Thrift是一个软件框架(远程过程调用框架),用来进行可扩展且跨语言的服务的开发,封装了数据传输格式(二进制.json)和网络通信的服务框架,提供多语言(C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml)的网络服务器端和客户端程序组件 适用于搭建大型数据交换及存储的通用工具,对于大型系统中的内部数据传输相对于JSON和xml无论在性能

HDinsight Storm概述

HDinsight Storm概述 什么是Storm? Apache Storm是一个分布式,容错,开放源码的计算系统,让你来处理数据的实时.Storm解决方案还可以提供有保证的处理的数据,与重试未成功处理的第一次数据的能力. 什么是Azure HDInsight Storm? HDInsightStorm被提供作为一个管理的集群集成到Azure环境,在那里它可以被用来作为一个更大的Azure溶液的一部分.例如,Storm可能会使用来自服务,如ServiceBus队列或事件中心,和使用网站或云服

005-hive概述

Hive概述 名称       hive系统架构 metastore derbymysql   HDFS /usr/hive/warehouse   Mapreduce     hive配置文件 hive-env.shhive-site.xmlhive-log4j.properties     hive命令行 hive --config     hive shell quit.exitresetsetadd.list.delete FILES!<command>dfs<command&g

Mac OS X 下搭建thrift环境

1.概述 thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生产引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的.高效的服务. 2.安装 2.1安装boost 注:先到官网下载boost包,并解压,然后进去该目录. ./bootstrap.sh —p