"node.js" is not software, but a JavaScript running environment; "node.js" is a JavaScript running environment based on the "Chrome V8" engine, which uses an event-driven, non-blocking "I/ O" model, a development platform that allows JavaScript to run on the server side.
The operating environment of this article: Windows 10 system, nodejs version 16, Dell G3 computer.
Node.js is a Javascript runtime environment (runtime), released in May 2009, developed by Ryan Dahl. It is essentially a Chrome V8 engine is encapsulated. Node.js optimizes some special use cases and provides alternative APIs to make V8 run better in non-browser environments.
Simply put, Node.js is JavaScript running on the server side.
is a JavaScript running environment based on the Chrome V8 engine. It uses an event-driven, non-blocking I/O model to allow JavaScript to run on the server-side development platform.
nodejs main functions
The V8 engine itself uses some of the latest compilation technologies. This greatly improves the running speed of code written in scripting languages such as Javascript and saves development costs. Demanding performance is a key factor in Node. Javascript is an event-driven language, and Node takes advantage of this to write a highly scalable server. Node uses an architecture called an "event loop" to make writing highly scalable servers easy and safe. There are a variety of techniques for improving server performance. Node has chosen an architecture that can both improve performance and reduce development complexity. This is a very important feature. Concurrent programming is often complex and full of landmines. Node bypasses these but still provides great performance.
Node uses a series of "non-blocking" libraries to support the event loop. Essentially, it provides interfaces for resources such as file systems and databases. When sending a request to the file system, there is no need to wait for the hard disk (to address and retrieve the file). The non-blocking interface will notify Node when the hard disk is ready. This model simplifies access to slow resources in a scalable way that is intuitive and easy to understand. Especially for users who are familiar with DOM events such as onmouseover and onclick, they will feel familiar.
Although letting Javascript run on the server side is not a unique feature of Node, it is one of its powerful features. We have to admit that the browser environment limits our freedom to choose programming languages. Any desire to share code between servers and increasingly complex browser client applications can only be achieved through Javascript. Although there are other platforms that support Javascript running on the server side, Node has developed rapidly and become the de facto platform because of the above characteristics.
In the short time since Node was launched, the community has contributed a large number of extension libraries (modules). Many of them are drivers for connecting to databases or other software, but many of them are very useful software produced by their capabilities.
Finally, I have to mention the Node community. Although the Node project is still very young, it is rare to see such a passionate community for a project. Whether you are a novice or an expert, everyone uses and contributes their abilities around the project, and is committed to creating a paradise for exploration, support, sharing, and listening to suggestions.
Expand knowledge
Nodejs download and installation
Under Linux Install Node
The following introduces the installation of Node. First, download the relevant installation package according to the operating system on the nodejs website. For installation under Ubuntu (linux), you can proceed as follows:
sudo apt-get update sudo apt-get install node
Or:
sudo apt update sudo apt install node
Installing Node under Windows
The official website now provides installation packages, compilers and corresponding APIs Documentation (English).
Recommended learning: "nodejs video tutorial"
The above is the detailed content of Is node.js software?. For more information, please follow other related articles on the PHP Chinese website!