Cross-Language Support
Apache Thrift supports numerous programming languages including Java, Python, C++, Ruby, and more, enabling seamless communication between services written in different languages.
Efficient Serialization
Thrift offers efficient binary serialization which helps in reducing the payload size and improves the communication speed between services.
Service Definition Flexibility
Thrift provides a robust interface definition language (IDL) for defining and generating code for services with strict type checking, fostering strong contract interfaces.
Scalability
Due to its lightweight and efficient serialization mechanisms, Apache Thrift can handle a large number of simultaneous client connections, making it suitable for scalable distributed systems.
Versioning Support
Thrift supports service versioning which helps in evolving APIs without disrupting existing services or clients.
Yes, Apache Thrift is considered to be a good option for projects needing cross-language communication and efficient serialization. Its efficiency and wide adoption have proven it to be a reliable framework in many production environments.
We have collected here some useful links to help you find out if Apache Thrift is good.
Check the traffic stats of Apache Thrift on SimilarWeb. The key metrics to look for are: monthly visits, average visit duration, pages per visit, and traffic by country. Moreoever, check the traffic sources. For example "Direct" traffic is a good sign.
Check the "Domain Rating" of Apache Thrift on Ahrefs. The domain rating is a measure of the strength of a website's backlink profile on a scale from 0 to 100. It shows the strength of Apache Thrift's backlink profile compared to the other websites. In most cases a domain rating of 60+ is considered good and 70+ is considered very good.
Check the "Domain Authority" of Apache Thrift on MOZ. A website's domain authority (DA) is a search engine ranking score that predicts how well a website will rank on search engine result pages (SERPs). It is based on a 100-point logarithmic scale, with higher scores corresponding to a greater likelihood of ranking. This is another useful metric to check if a website is good.
The latest comments about Apache Thrift on Reddit. This can help you find out how popualr the product is and what people think about it.
I once read a paper about Apache/Meta Thrift [1,2]. It allows you to define data types/interfaces in a definition file and generate code for many programming languages. It was specifically designed for RPCs and microservices. [1]: https://thrift.apache.org/. - Source: Hacker News / 7 months ago
While gRPC and Apache Thrift have served the microservice architecture well, CloudWeGo's advanced features and performance metrics set it apart as a promising open source solution for the future. - Source: dev.to / over 1 year ago
Services in general communicate via Thrift (and in some cases HTTP). Source: about 2 years ago
Protocol Buffers is the most popular one, but there are many others such as Apache Thrift and my own Typical. Source: over 2 years ago
RPC is not strictly OO, but you can think of RPC calls like method calls. In general it will reflect your interface design and doesn't have to be top-down, although a good project usually will look that way. A good contrast to REST where you use POST/PUT/GET/DELETE pattern on resources where as a procedure call could be a lot more flexible and potentially lighter weight. Think of it like defining methods in code... Source: over 2 years ago
The information can be stored in a database or as files, serialized in a standard format and with a schema agreed with your Data Engineering team. Depending on your information and requirements, it can be as simple as CSV, XML or JSON, or Big Data formats such as Parquet, Avro, ORC, Arrow, or message serialization formats like Protocol Buffers, FlatBuffers, MessagePack, Thrift, or Cap'n Proto. - Source: dev.to / over 2 years ago
How to talk through the service with a Binary method, which will make the transmission efficiency faster It recommends a tool called ApacheThrift. Suitable for use in Big Data applications where most applications are synchronous. If the destination system has a timeout, it should not be called. - Source: dev.to / almost 3 years ago
We are doing something relevant to what you are asking about at my current work (in a very proprietary way). We have a home grown language (sorta extension of GraphQL) language which is (again sorta) backed by python and haskell. Thrift (https://thrift.apache.org/) goes in a similar direction too. Either attempt can express only relatively simple types. Source: almost 3 years ago
IIRC, thrift (https://thrift.apache.org/) could render defined types/structs to an SVG. - Source: Hacker News / about 3 years ago
ASN.1 might not have the best reputation, but it will just work like expected once it gets going https://bellard.org/ffasn1/ There's also https://thrift.apache.org/. Source: over 3 years ago
Https (1.1, 2 or 3) or grpc (over http/2) or Thrift or Websockets? - Source: dev.to / almost 4 years ago
Apache Thrift -- fairly similar to protocol buffers. Source: almost 4 years ago
Apache Thrift is another great way of server-server & client-server communication. Pretty similar to protobuf but feels a bit more mature to me. https://thrift.apache.org/. - Source: Hacker News / about 4 years ago
Do you know an article comparing Apache Thrift to other products?
Suggest a link to a post with product alternatives.
Is Apache Thrift good? This is an informative page that will help you find out. Moreover, you can review and discuss Apache Thrift here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.