In running one of the world’s largest online marketplaces, eBay has tackled technical challenges at a scale that few others have. Several open source technologies have made a critical difference within our technology stack, including Hadoop and Kylin, a distinguished open source tool that is now a Top-Level Project at the Apache Software Foundation. Node.js easily qualifies as one of the primary open source tools that eBay leverages.
Padmanabhan is the author of a technology blog post that delves into how Node.js orchestrates services on the eBay platform. As the post notes, our journey with Node.js, started small, leveraging it on the back-end of our platform. Its use at the company has steadily grown since then.
“Our Node.js layer acts as a thin web client. It currently talks to a pool of backend services on our platform, called Experience Services,” said Padmanabhan. “Experience Services power all user-facing experiences, which includes iOS, Android and the web. These services output render-ready data that can be directly consumed by the Node.js layer and rendered as HTML.”
In addition, eBay’s platform team has built some incredible tools to successfully build and deploy Node.js applications to production. It also allows application team members to benefit from very efficient monitoring, allowing them to respond to any issues that arise in real time.
Not all technology tools are appropriate for a platform at the scale of eBay’s, but Node.js has kept pace with our needs, and then some. We have given back to the Node.js community, as well. For example, we have open sourced our build and asset management tool lasso, which is used by all eBay Node.js applications. It is a tested and hardened tool that many developers can benefit from.