LinkedIn is among the most visited websites in the world. At ProgrammableWeb, we are more interested in number of API calls that the LinkedIn platform is serving per day and we can definitely say that it is among the API Billionaires with conservative estimates putting the number at around a few billion API calls per month. If you are looking at understanding and better still using the framework that powers the LinkedIn REST based API, we need to thank LinkedIn for opensourcing Rest.li, their RESTful Service Architecture Framework.
Joe Betz, Staff Engineer at LinkedIn announced Rest.li to the world. In his words, Rest.li is a REST+JSON framework for building robust, scalable service architectures using dynamic discovery and simple asynchronous APIs. The framework has evolved at LinkedIn and addresses their own requirements, chief among them being standard way to describe the resources available, enable access by diverse clients written in any language, standardizing common API operations, ability to support large scale of operations and developer friendliness.
The architecture diagram above contains:
- R2, a REST transport layer abstraction in Java.
- D2, a dynamic discovery and client-side load balancing layer. It is interesting to see the use of Apache Zookeeper as their registry for services.
- Rest.li, a Java framework for building REST-style services. It contains Java client libraries for use on both client and server side. The framework also specifies an IDL for describing REST resources.
The framework has been in use for over a year at LinkedIn and they are actively moving other properties to this framework. You can checkout the Github project for sources and visit the Rest.li Getting Started guide.
It is interesting to see how companies are now releasing in house frameworks that have helped them scale to handle the data volumes that are the norm today on popular social networks. Netflix was in the news recently for making available management tools for AWS that they have built over the years. Visit the Netflix Tech Blog to learn more about their initiatives.