Need advice about which tool to choose?Ask the StackShare community!

Apache Thrift

155
237
+ 1
0
gRPC

1.9K
1.3K
+ 1
64
Add tool

Apache Thrift vs gRPC: What are the differences?

Developers describe Apache Thrift as "Software framework for scalable cross-language services development". The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages. On the other hand, gRPC is detailed as "A high performance, open-source universal RPC framework". gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking...

Apache Thrift can be classified as a tool in the "Serialization Frameworks" category, while gRPC is grouped under "Remote Procedure Call (RPC)".

Apache Thrift and gRPC are both open source tools. gRPC with 22K GitHub stars and 5.12K forks on GitHub appears to be more popular than Apache Thrift with 6.48K GitHub stars and 2.97K GitHub forks.

Slack, 9GAG, and Policygenius are some of the popular companies that use gRPC, whereas Apache Thrift is used by Uber Technologies, Slack, and QuizUp. gRPC has a broader approval, being mentioned in 53 company stacks & 48 developers stacks; compared to Apache Thrift, which is listed in 11 company stacks and 8 developer stacks.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Apache Thrift
Pros of gRPC
    Be the first to leave a pro
    • 25
      Higth performance
    • 15
      The future of API
    • 13
      Easy setup
    • 5
      Contract-based
    • 4
      Polyglot
    • 2
      Garbage

    Sign up to add or upvote prosMake informed product decisions

    No Stats

    What is Apache Thrift?

    The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.

    What is gRPC?

    gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking...

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Apache Thrift?
    What companies use gRPC?
    See which teams inside your own company are using Apache Thrift or gRPC.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Apache Thrift?
    What tools integrate with gRPC?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    What are some alternatives to Apache Thrift and gRPC?
    Protobuf
    Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler.
    REST
    An architectural style for developing web services. A distributed system framework that uses Web protocols and technologies.
    Avro
    It is a row-oriented remote procedure call and data serialization framework developed within Apache's Hadoop project. It uses JSON for defining data types and protocols, and serializes data in a compact binary format.
    GraphQL
    GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012.
    JSON
    JavaScript Object Notation is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language.
    See all alternatives