- Monolithic architecture are single-tiered, self-contained traditional unified model for the design of a software program, wherein the program's components or functions are tightly coupled (multiple components are combined into one large application). Due to how it is structured, each component and its associated components must all be present for code to be executed or compiled and for the software to run.
- Microservices are both an architecture as well an approach to writing software. In this approach to developing softwares, applications are broken down into their smallest components, independent from each other. Instead of a traditional, monolithic, approach, where everything is built into a single piece, microservices are all separated and work together to accomplish the same tasks. Each of these components, or processes, is a microservice. It is a major component of optimizing application development towards a cloud-native model. It is the opposite of and addresses most issues faced when using monolithic architecture.
- Microservices appeals to me more. This is because microservices architecture separates the functionalities of a software into many distinct units, allowing these units to operate entirely on their own. It make it easy to add new functions to a section of software without affecting the entire software. Compared to monolithic apps, microservices are easier to build, test, deploy, and update.
- According to Node.js documentation, a Node.js application runs using the event loop. The event loop is what allows Node.js to perform non-blocking I/O operations and explains how Node.js can be asynchronous. The event loop, also known as the main thread, allows running one thing at a time.
Node.js runs JavaScript code on a single thread
, which means that your code can only do one task at a time.However, Node.js itself is multithreaded and provides hidden threads through the libuv library
, which handles I/O operations like reading files from a disk or network requests. Through the use of hidden threads, Node.js provides asynchronous methods that allows code to make I/O requests without blocking the main thread.
- REPL stanbds for Read-Eval-Print Loop. It is a computer environment (an interactive toplevel or language shell) where user inputs are read and evaluated, and then the results are returned to the user.