Skip to content
MERCIL

Technologies

Node.js

A JavaScript runtime for servers, well suited to APIs and integration services that spend most of their time waiting on databases and other systems.

Part of Tailor-made Software Development

Node.js runs JavaScript on the server. Its event-driven, non-blocking model lets one process handle many concurrent connections without a thread per request.

Where it fits

Work dominated by waiting: API layers, services that combine data from several upstream systems, real-time features and integration middleware. When a request spends most of its time waiting on a database or a third-party call, Node.js handles that pattern efficiently.

Using one language on the front and back end also lets a team share validation logic and types, and makes it easier for developers to work across the stack.

Its limits

CPU-heavy work, such as large data transformations, image processing or complex calculations, blocks the event loop and slows every other request in that process. That work can move to worker threads (the worker_threads module), to a job queue with its own worker processes, or to a separate service.

How we use it

We handle errors deliberately. Since Node.js 15, an unhandled promise rejection ends the process by default, so we run services under a process manager or orchestrator that restarts them. We also implement graceful shutdown on SIGTERM, so in-flight requests finish before the process exits, and we monitor memory use in production.

System Integration & API Development, Web Application Development

Cookies on this site

We use essential cookies to make this site work and, with your consent, Google Analytics and Hotjar session recordings to understand how it is used. Forms are hidden in recordings. Cookie policy