• >
  • >
  • >
  • >
  • >
Lightbend > Case Studies > WhitePages Rebuilds Core Parts of Application Stack with Scala and Akka to Improve Scaling

WhitePages Rebuilds Core Parts of Application Stack with Scala and Akka to Improve Scaling

Lightbend Logo
Customer Company Size
Large Corporate
Region
  • America
Country
  • United States
Product
  • Scala
  • Akka
  • Spray framework
  • Typesafe stack
Tech Stack
  • Scala
  • Akka
  • JVM
Implementation Scale
  • Enterprise-wide Deployment
Impact Metrics
  • Cost Savings
  • Digital Expertise
  • Productivity Improvements
Technology Category
  • Platform as a Service (PaaS) - Application Development Platforms
  • Application Infrastructure & Middleware - Middleware, SDKs & Libraries
Applicable Industries
  • Software
Applicable Functions
  • Business Operation
Use Cases
  • Edge Computing & Edge Intelligence
  • Factory Operations Visibility & Intelligence
Services
  • Software Design & Engineering Services
  • System Integration
About The Customer
WhitePages is a leading provider of contact information for individuals and businesses in the United States. With over 50 million unique monthly users and powering more than 2 billion searches annually, WhitePages offers consumers easy access to contact details for over 200 million adults. The company also provides users with the ability to edit and control their own listings. WhitePages' suite of mobile products includes a top-50 mobile website and popular Android and iPhone apps, boasting over 18 million active monthly mobile users. As a large corporate entity, WhitePages operates a complex service-oriented architecture that integrates numerous in-house and third-party services across hundreds of servers.
The Challenge
WhitePages faced significant challenges with its existing service-oriented architecture, which relied heavily on legacy languages like Perl and Ruby. These languages were not only costly to scale but also inefficient in terms of hardware utilization. The company was running over 80 servers to handle 400 QPS, leading to high hardware costs and significant latencies due to single-threaded applications. The existing setup also required extensive serialization and deserialization of data, consuming 70% of server time. WhitePages needed a more efficient, scalable, and reactive development environment to reduce hardware costs, improve throughput, and enable rapid development iterations.
The Solution
To address the challenges, WhitePages decided to transition from legacy languages to a more modern, reactive framework. After evaluating several options, including Node.js, Clojure, Java, Erlang, and Go-lang, the team chose Scala for its ease of transition for Ruby developers, maturity of the Akka framework, strong type system, and the availability of proven Java components. The Akka framework, in particular, offered asynchronous programming patterns that aligned with WhitePages' goals of improving scalability and reducing hardware requirements. The transition to Scala and Akka allowed WhitePages to rebuild core components of its stack, such as the search coordinator, resulting in significant improvements in latency, stability, and consistency.
Operational Impact
  • WhitePages achieved radically more efficient hardware utilization, significantly reducing the number of servers needed for its most resource-intensive services.
  • The transition to a Reactive, event-driven, asynchronous non-blocking software stack resulted in substantial improvements in latency and throughput.
  • The use of Scala and Akka provided a more productive local test and development environment, enhancing the developer workflow and attracting high-caliber programming talent.
Quantitative Benefit
  • Reduced the number of servers required from sixty to five for a high-throughput service.
  • Achieved a 15x reduction in server count for the most resource-intensive services.
  • Improved latency by as much as two-orders of magnitude at the 99th percentile for network-bound application processes.

Case Study missing?

Start adding your own!

Register with your work email and create a new case study profile for your business.

Add New Record

Related Case Studies.

Contact us

Let's talk!
* Required
* Required
* Required
* Invalid email address
By submitting this form, you agree that AGP may contact you with insights and marketing messaging.
No thanks, I don't want to receive any marketing emails from AGP.
Submit

Thank you for your message!
We will contact you soon.