Although originally conceived for deﬁning the messages communicated between servers, Google’s protocol buffers are also used to describe the format of permanent records stored on disk. They serve a purpose similar to XML, but have a much denser, binary representation, which is in turn often wrapped by an additional compression layer for even greater density.
Thrift is a software library and set of code-generation tools developed at Facebook to expedite development and implementation of efﬁcient and scalable backend services. Its primary goal is to enable efﬁcient and reliable communication across programming languages by abstracting the portions of each language that tend to require the most customization into a common library that is implemented in each language. Speciﬁcally, Thrift allows developers to deﬁne data types and service interfaces in a single language-neutral ﬁle and generate all the necessary code to build RPC clients and servers.
Now who wants to add Perl support?