LinkedIn uses several technologies to scale its services and infrastructure to support over 200 million members. It uses a dynamic discovery and client-side load balancing approach for its web services to improve fault tolerance. The presentation tier is composed of various front-end frameworks while business logic is encapsulated in services. LinkedIn's databases Espresso and Oracle are scaled using techniques like data replication, read replicas and change data capture via Databus. Databus provides a consistent, real-time stream of database changes to power services like search, recommendations and standardization. Messaging is handled using Apache Kafka which provides pub-sub streaming capabilities.