Building microservices with Node.js

Why build monoliths when you can compose applications from services? Here are some guiding principles for using Node.js and the Seneca framework to create microservices apps

Become An Insider

Sign up now and get FREE access to hundreds of Insider articles, guides, reviews, interviews, blogs, and other premium content. Learn more.

Microservices architecture may be the most important trend in modern enterprise application development. Instead of massive monolithic applications, with their hefty maintenance and infrastructure overheads, microservices-based applications break up functionality into a suite of small services, linking them via APIs. That approach enables elements of an application to be updated and scaled separately.

The most important feature of a microservices architecture is its array of APIs, often built using familiar HTTP-based RESTful techniques, pushing JSON payloads between services. Each service is a single element of functionality and can be built using the most appropriate technology. One might be written In C#, another integrated into a NoSQL database, another a JavaScript UI running in a browser. The result is a service architecture that works well with modern mobile-first application development methodologies and can be easily integrated into a continuous development devops process.

Many popular websites and services are built using a microservices model; Amazon serves as a prime example. At Amazon, small devops teams are responsible for building and maintaining the services that run the site, with 200 or so services coming together to deliver the Amazon home page. The microservices model also means it’s possible to improve service performance one service at a time, a process that Box calls “ratcheting”: setting targets for developers to improve service responsiveness as the company defines targets for agile development sprints.

To continue reading this article register now