Any distributed application includes individual components, often written in different languages and hosted in multiple locations, which must communicate quickly and efficiently. Apache Thrift is a communication framework that enables cross-language remote procedure calls and serialization. Apache Thrift supports embedded, mobile, web, and server environments and a host of languages ranging from JavaScript to C++. It's perfect for back end services and embedded systems where size, scalability and performance are mission critical.
The Programmer's Guide to Apache Thrift provides comprehensive coverage of the Apache Thrift framework along with a developer's-eye view of modern distributed application architecture. Packed with complete code examples and pragmatic discussion, this book lays the best practices for multi-language distributed application development. You'll take a guided tour through transports, protocols, IDL and servers as you explore complete example programs in C++, Java and Python. You'll also learn how to work with platforms ranging from enterprise servers to mobile clients.
Four-and-a-half stars. A very solid description of the Apache Thrift RPC (Remote Procedure Call) system and how to program against it(*). The examples, which are simple, clear and annotated, are primarily in C++ Java and Python (although third section of the book covers a bunch of other langues too). While it does give guidance on using Thrift's built in server code to build RPC servers, it does not cover at all how those servers should be started or managed, which is a bit of a lack.
(* In an earlier portion of my life I did a bunch of work using ONC-RPC, and actually wore out a copy of Power Programming with RPC, so I am not sure how well this would work as a first introduction to RPC.)