`
netcomm
  • 浏览: 141487 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

为thrift新增schema的动态支持

 
阅读更多

在今天说到Thrift就不可避免的要谈到AvroAvro出自Hadoop之父Doug Cutting,其目标是要建立一个新的,标准性的云计算的数据交换和存储的Protocol。它偏向实用,主张建立一个统一的标准,并不介意采用特定的优化。Avro的创新之处在于融合了显式,declarativeSchema和高效二进制的数据表达,强调数据的自我描述,克服了以往单纯XML或二进制系统的缺陷。

        Avro-generic方式支持Schema的动态加载,用通用的结构(map)代表数据对象,不需要编译加载直接就可以处理新的数据源,这是相对Thrift的一个非常重要的区别,而这个功能确实在某些情况下非常有用,这正是JD_Thrift开发库的原始启动原因。

     JD_Thrift的开源链接:https://github.com/netcomm/thrift_auto_java 

分享到:
评论

相关推荐

    thrift官方代码+与dubbo集成支持原生thrift协议

    Thrift的编译器负责将IDL文件转换为实际的代码,而SDK则提供了在目标语言中使用Thrift接口的必要库和工具。 描述中提到的"与dubbo集成支持原生thrift协议"是指将Thrift与Dubbo框架结合使用。Dubbo是阿里巴巴开源的...

    thrift实现http协议案例

    Thrift是一种高效的、跨语言的服务框架,最初由Facebook开发,现在是Apache的顶级项目。它提供了强大的代码生成工具,可以从接口定义文件(IDL)生成多种编程语言的客户端和服务端代码,使得不同语言之间可以轻松地...

    使用wireshark抓取thrift协议接口调用

    Wireshark本身并不直接支持Thrift协议的解析。为了得到详细的信息,你需要下载和安装Thrift dissector插件。这个插件允许Wireshark识别Thrift协议并解码其内容。 - 安装Thrift dissector:可以从Wireshark的官方...

    Thrift-java学习小结

    使用thrift编译器,我们可以将上面的.thrift文件转换为Java、C++等语言的代码。生成的代码包括服务接口、结构体类、协议处理类等,这些代码可以直接在项目中使用。 四、服务端实现 在Java环境中,服务端需要实现...

    qt 实现thrift的一个例子

    在IT行业中,Thrift是一种高性能、可扩展的跨语言服务开发框架,由Facebook开源,用于构建分布式服务。...同时,由于Thrift支持多种语言,这使得服务端和客户端可以使用不同的技术栈,增加了系统设计的灵活性。

    thrift-0.13.0.zip

    1. **Thrift IDL**:Thrift IDL文件以`.thrift`为扩展名,用于定义服务、结构体、枚举、常量等。这些定义会被Thrift编译器转换为各种目标语言的代码。 2. **Thrift编译器**:Thrift提供了一个命令行工具,可以根据...

    netty+thrift高并发高性能

    2. **跨语言支持**:Thrift支持多种编程语言,如Java、C++、Python等,这使得不同语言编写的系统之间可以轻松地进行RPC调用。 3. **强大的IDL支持**:Thrift提供了一个接口定义语言(IDL),用于定义服务接口和服务...

    thrift通过openssl加密证书实现双向通信

    thrift框架通过vs2013编译好的静态库,然后通过vs2013实现双向通信代码,通信协议利用openssl加密证书的方式来实现,本资源给出了完整的实现代码,证书可以在网上百度一下,看看如何生成客户端和服务端的,然后编译...

    Thrift-0.5.exe

    Thrift的主要目的是解决分布式系统中的通信问题,它允许开发者定义服务接口,并自动生成相应的客户端和服务器端代码,支持多种编程语言,包括C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, ...

    C++(Qt)下的thrift的使用示例

    而Thrift则是一种开源的软件框架,用于构建可伸缩的服务,它支持多种编程语言,包括C++,并且允许不同语言之间进行高效的数据交换。在这个“C++(Qt)下的thrift的使用示例”中,我们将探讨如何在Qt项目中集成和使用...

    thrift_sasl-0.3.0.tar.gz

    Thrift SASL 0.3.0 版本将SASL与Thrift框架相结合,为Thrift服务提供了安全层。以下是一些关键知识点: 1. **身份验证机制**:Thrift SASL 支持多种身份验证机制,如GSSAPI(Kerberos)、PLAIN、DIGEST-MD5等。这...

    thrift安装

    1. **跨语言性**:Thrift支持众多编程语言,如C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk等,使得服务的开发和调用可以在不同的语言环境中进行。 2. **高性能**:Thrift通过高效...

    thrift通过http传输的java例子

    这个服务定义了一个名为`hello`的方法,接受一个整数参数`num`并返回一个字符串。 接下来,Thrift的编译器会根据这个IDL文件生成Java代码,包括一个服务接口、一个服务处理类(实现服务接口)、一个服务客户端和一...

    thrift-delphi实例

    Thrift,全称为“Transportation Layer Security”,是由Facebook开源的一款高性能、跨语言的服务框架。它最初设计的目的是解决大规模分布式系统中的数据通信问题,通过定义一种中间表示(IDL,Interface Definition...

    maven-thrift-server

    【 Maven-Thrift-Server:构建Thrift服务的Maven实践】 在软件开发中,Thrift是一种高效的跨语言服务开发框架,由Facebook开发并开源。它允许定义数据类型和服务接口,然后自动生成各种编程语言的代码,使得不同...

    thrift详解

    此外,Thrift 支持多种主流编程语言,包括 C++、Java、Python、PHP、Ruby 等,这为跨语言项目提供了极大的便利性。 #### 优点总结: 1. **跨语言支持**:Thrift 支持广泛的编程语言,使得开发者可以在不同的技术栈...

    thrift样例操作实例

    Thrift的主要特点包括高效、类型安全以及支持多种编程语言,如Java、C++、Python等。它通过定义服务接口,使得不同语言之间可以无缝交互,解决了跨语言通信的问题。 `thrift-0.9.3.exe`是Thrift的编译器,用于将IDL...

    thrift入门

    Thrift 的主要特点是支持多种编程语言、跨平台、跨语言的数据交换和 RPC 服务,可以作为二进制的高性能的通讯中间件,支持数据(对象)序列化和多种类型的 RPC 服务。Thrift 适用于搭建大型数据交换及存储的通用工具...

    Windows下QT使用Thrift的样例

    Thrift-0.10.0是这个样例中使用的版本,它支持C++、Java、Python等多种语言,并且具有良好的性能和稳定性。 Boost是一个流行的C++库集合,提供了许多用于提高C++效率和功能的工具。在这个样例中,Boost可能被用来...

Global site tag (gtag.js) - Google Analytics