因此,我们使用单线程来处理客户端请求。但是,一个严肃的服务器有很多处理器,因此也有很多核心。假设有一个线程为客户端提供服务,那么其他线程在做什么呢?它们在后台执行用户请求,并在准备就绪后将其转发到“事件队列”?
sqyvllje1#
服务器通常具有管理资源使用的操作系统。大多数操作系统能够同时运行多个应用程序。因此,其他应用程序可能会使用未使用的资源。当且仅当您的服务器除了NodeJS应用程序之外没有其他应用程序在运行时,理论上只有一个CPU线程将被使用,而所有其他线程将处于空闲状态。PS:NodeJS也提供了Workersnode:worker_threads模块允许使用并行执行JavaScript的线程。https://nodejs.org/api/worker_threads.html#worker-threads
1条答案
按热度按时间sqyvllje1#
服务器通常具有管理资源使用的操作系统。
大多数操作系统能够同时运行多个应用程序。因此,其他应用程序可能会使用未使用的资源。
当且仅当您的服务器除了NodeJS应用程序之外没有其他应用程序在运行时,理论上只有一个CPU线程将被使用,而所有其他线程将处于空闲状态。
PS:NodeJS也提供了Workers
node:worker_threads模块允许使用并行执行JavaScript的线程。
https://nodejs.org/api/worker_threads.html#worker-threads