Microservice Architecture
4 min read

Microservices at eBay-What it looks like today

By Ranju RAug. 30, 2021, 3 p.m. Application development company
Share This Article
Choose the best microservices vendor and trim the cost

A majority of the big corporations in the world are going the microservices way. Microservices are small independent but interconnected services that make up an application. This is unlike the earlier approach, when companies functioned with a single larg

Download Ebook

Table of Contents

eBay has been using microservices for over 10 years. In this blog, we'll take a look at how we use microservices at eBay today, what are the benefits & challenges!


Subscribe to Our Blog

We're committed to your privacy. SayOne uses the information you provide to us to contact you about our relevant content, products, and services. check out our privacy policy.

Some of the largest corporations in the world, from Google to Amazon, encounter problems at enterprise levels that are not always easy to solve. Their scale of operations required that they look out for new and innovative solutions. They made the most out of the infrastructure they possessed. The eBay eCommerce site is one such mammoth operation that currently uses microservices as its backbone. Let us see what lies under the hood of microservices at eBay.

Microservices at eBay – A brief picture of the journey

  • eBay started their operations in 1995. However, they are on the 5th generation architecture system.
  • They started off with a monolithic Perl application that their founder wrote over a weekend in 1995.
  • Then they moved to a monolithic C++ application which had up to 3.4 million lines of code in a single DLL.
  • In earlier times, there existed an architecture review board on eBay that was set up to review and approve all large-scale project suggestions.
  • Soon, this body turned into a bottleneck that said no to most projects because it was a little too late by the time they finished studying and approving the project.
  • This prompted them to move to a distributed and partitioned system in Java.
  • Today, eBay has quite a lot of Java, but also functions on a polyglot set of microservices, that is, they are written in more than one language.

Download and read our book, Porting from Monoliths to Microservices – Is the shift worth it?

The eBay system works with over 1000 microservices. The front-end experiences, such as the web and native iOS and Android apps, call various intermediate services that orchestrate the calls, which, in turn, talk to the back-end services.

There is an independent development team for each of the services. Whenever a team wants to set up a new service, they use an internal cloud portal to provision the servers for development, testing, staging, and production.

The independent team manages the entire infrastructure for setting up the service. This kind of setup also removes unnecessary dependencies and makes it easier for them to spin up new services whenever required. For operations at eBay, this is almost a daily occurrence.

In this highly distributed environment, eBay employs a circuit breaker pattern within its microservices architecture to ensure reliability and fault tolerance. Given the complexity and scale of over 1000 microservices interacting with each other, managing failures efficiently is crucial to maintaining a seamless user experience.

With microservices communication, each service can interact seamlessly with others through well-defined APIs, allowing for efficient data exchange and functionality integration. This decentralized approach enhances agility, as teams can implement changes or deploy new features without disrupting the entire system. Additionally, it promotes scalability, enabling eBay to adapt to fluctuating demand while maintaining optimal performance across its platform. This streamlined communication framework not only improves operational efficiency but also fosters innovation, allowing teams to experiment with new ideas and quickly bring them to market.

Ecosystem of services at eBay

On eBay, there are hundreds of thousands of independent services all working together.

  • Modern large-scale systems in corporations compose their services in a relationship graph; it is not a hierarchy or not set in tiers.
  • Each of the services depends on many other services and many are dependent on this one at the same time.

The services were a result of evolution rather than design. A new service was created whenever there was a problem that needed to be solved. Sometimes, the service is extracted from another existing service or product. Most of eBay’s large-scale systems were developed from the bottom-up.

Download Ebook for FREE "How to choose the best microservices vendor and trim the cost"

eBay is a huge eCommerce site that has over 800 million items listed at any point in time. eBay has also given the liberty to product listers to provide listing descriptions. However, eBay also provides a layer of structured data over these listings so that listings for a single item can be found and kept together.

Moreover, this system allows a proper understanding of pricing and supply and demand, while being able to identify deals and give better recommendations and display finer search results. It also makes onboarding inventories easier.

Want to foray into microservices? Contact our expert developer team today!

eBay’s integration infrastructure is full container dependent with Docker containers and clustering using Kubernetes. They are also using more containers for applications and libraries, and everything else that is required for delivering a service on a server. Ebay has also been able to manage the scaling of operations very well using microservices. 

Conclusion

Most of the microservices at eBay evolved without an architect and the design of the system was always from the bottom up. Most large corporations, including eBay, ultimately settled down as a set of polyglot microservices that are currently functioning as per user requirements and, of course, still evolving continuously.

Are microservices required for your organization? Consult with us today!

Share This Article

FAQs

Yes, eBay uses microservices in its architecture. The company has been utilizing a microservices-based architecture since 2017. This approach allows the company to develop and deploy features faster, scale more efficiently, and reduce downtime.

PayPal uses microservices to break down their platform into smaller, independent services. This helps them to build and deploy applications faster, deploy new features quickly, and scale faster. Microservices also help to reduce the complexity of their systems and make them easier to maintain. PayPal uses microservices for services such as payments, identity, fraud management, and customer service.

Yes, Amazon uses a microservice architecture for its web services. Its core services are built using this architecture, allowing different components to be developed and maintained independently. This helps Amazon maintain and scale its services more effectively.

Subscribe to Our Blog

We're committed to your privacy. SayOne uses the information you provide to us to contact you about our relevant content, products, and services. check out our privacy policy.