What does nodejs mean?
nodejs is a JavaScript running environment based on the Chrome V8 engine. It is a development platform that allows JavaScript to run on the server side, allowing the scripting language JavaScript to be used as a server language. Advantages of node: super high concurrency capability, use of JavaScript syntax, etc.
The operating environment of this tutorial: windows7 system, nodejs version 14.15.4, DELL G3 computer.
Node.js was released in May 2009 and developed by Ryan Dahl. It 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 in A server-side development platform that makes JavaScript a scripting language on par with server-side languages such as PHP, Python, Perl, and Ruby.
Node.js optimizes some special use cases and provides alternative APIs to make V8 run better in non-browser environments. The V8 engine executes Javascript very quickly and has very good performance. It is based on Chrome JavaScript The platform established at runtime is used to easily build network applications with fast response speed and easy expansion.
Node.js uses the Google V8 JavaScript engine because:
V8 is open source software based on the BSD license
V8 is very fast
V8 focuses on network functions and is more mature in HTTP, DNS, TCP, etc.
Advantages of Node.js? Why can the scripting language JavaScript be used as a server language?
Advantage 1 Node.js has super high concurrency capabilities
The first goal of Node.js is Provides a simple development tool for creating high-performance servers and running various applications on the servers.
Compared with classic server-side languages such as Java, PHP or .net, Node.js is like a young and energetic boy. The Java language will create a new thread for each client, and each A client connection creates a thread, which consumes 2MB of memory. That is to say. Theoretically, an 8GB server can have about 4,000 concurrently connected users. To support more users with high concurrency, additional servers must be added.
Node.js does not create a new thread for each client connection, but only uses one thread.
This is because Node is based on a single thread (there is only one main thread to receive requests and respond)
Isn’t this slower? In fact, this is not the case.
When Node.js receives a user connection, it will trigger an internal event. Respond to user behavior through pre-defined functions. The main thread of Node.js does not care about the process of the program. In fact, there is another working thread to help the main thread of Node to access files and read the database. When the working thread reads the file data or the data in the database, The callback function will be returned to the Node main thread for execution, such as transmitting the found data back to the client and closing the connection for some operations. (This is Node non-blocking I/O, event-driven).
Attached below is a picture I drew (please forgive me if there is any inappropriateness)
There should be a prototype in your head, that is - the main thread of Node.js has been busy receiving requests and responding to requests, so that it can continuously receive requests from multiple clients, and it does not have to wait stupidly. In IO operations, when the IO worker thread finds the data, it will trigger the event callback function to tell the main thread that the data has been obtained. At this time, the main thread will execute the callback function and return the data to the client.
Theoretically, a server with 8G memory can accommodate the connections of 30,000 to 40,000 users at the same time.
This is where Node shines (single-threaded, non-blocking IO, event-driven)
Advantages 2 Node uses JavaScript syntax
Node.JS The V8 engine is based on javaScript, which means that as long as you know the syntax of JS, you can use it for back-end development, but Node officially recommends ECMA Script6 (ES6) syntax .
Node breaks the past situation where JavaScript can only run in the browser, unifying the front-end and back-end programming environments, which greatly reduces development costs. (This is very friendly to front-end developers. The more things JS can do, the faster the front-end development will be)
Advantages 3 The emergence of Node.JS promotes front-end engineering Thoughts
The front-end has developed rapidly in recent years, and Node.js plays an irreplaceable role.
Node.js is not only a running environment, but also a completely new JavaScript language. It accommodates the basics of JS syntax and also adds some internal modules
Such as:
http is used Module for processing request response
use using using use ’ s ’ s ’ through using ’ s through through ’s ’ through through through ‐ ‐ to ‐ ‐ ‐ n , ‐ and ‐ ‐ to 1 to 1 , Let us be convenient to download the bags dependent on our project through the command line
::
## NPM Install jQuery## NPM Install -G Webpack
# NPM Install-G Create-React-APP, etc. Define module syntax ↓↓
const http = require('http')
const Jquery = require('jquery');
What is Node.js suitable for?
This is more programming related knowledge, please visit: ProgrammingTeaching! !
The above is the detailed content of What does nodejs mean?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Node.js is a server-side JavaScript runtime, while Vue.js is a client-side JavaScript framework for creating interactive user interfaces. Node.js is used for server-side development, such as back-end service API development and data processing, while Vue.js is used for client-side development, such as single-page applications and responsive user interfaces.

Node.js can be used as a backend framework as it offers features such as high performance, scalability, cross-platform support, rich ecosystem, and ease of development.

To connect to a MySQL database, you need to follow these steps: Install the mysql2 driver. Use mysql2.createConnection() to create a connection object that contains the host address, port, username, password, and database name. Use connection.query() to perform queries. Finally use connection.end() to end the connection.

The following global variables exist in Node.js: Global object: global Core module: process, console, require Runtime environment variables: __dirname, __filename, __line, __column Constants: undefined, null, NaN, Infinity, -Infinity

There are two npm-related files in the Node.js installation directory: npm and npm.cmd. The differences are as follows: different extensions: npm is an executable file, and npm.cmd is a command window shortcut. Windows users: npm.cmd can be used from the command prompt, npm can only be run from the command line. Compatibility: npm.cmd is specific to Windows systems, npm is available cross-platform. Usage recommendations: Windows users use npm.cmd, other operating systems use npm.

The main differences between Node.js and Java are design and features: Event-driven vs. thread-driven: Node.js is event-driven and Java is thread-driven. Single-threaded vs. multi-threaded: Node.js uses a single-threaded event loop, and Java uses a multi-threaded architecture. Runtime environment: Node.js runs on the V8 JavaScript engine, while Java runs on the JVM. Syntax: Node.js uses JavaScript syntax, while Java uses Java syntax. Purpose: Node.js is suitable for I/O-intensive tasks, while Java is suitable for large enterprise applications.

Yes, Node.js is a backend development language. It is used for back-end development, including handling server-side business logic, managing database connections, and providing APIs.

Node.js and Java each have their pros and cons in web development, and the choice depends on project requirements. Node.js excels in real-time applications, rapid development, and microservices architecture, while Java excels in enterprise-grade support, performance, and security.
