NodeJS 是否需要多核 VPS
Does NodeJS require a multi cores VPS
我想用 Nuxt.js 或 Next.js 1 核 CPU 2.4Ghz, 1GB RAM 开发一个网站。
我的网站 运行 可以像开始一样快吗?
每秒有多少请求可用?
Node 应用程序是否受益于多核取决于应用程序。
一般情况下,如果不涉及子进程或集群模块,
那么你的系统上就不需要有多个内核,因为 Node.js 将只使用一个内核,因为请求处理程序总是在同一个事件循环上运行,而事件循环在单个线程上运行。
How to achieve process concurrency and high throughput:
因为 JavaScript 在 Node.js 中的执行是单线程的,所以保持 Node 服务器速度的一个好的经验法则是:避免阻塞事件循环。您可以在下面我的参考资料中的官方文档中阅读相关内容。
Simple Illustration:
考虑这样一种情况,每个对 Web 服务器的请求都需要 50 毫秒才能完成,而这 50 毫秒中的 45 毫秒是可以异步完成的数据库 I/O。
选择非阻塞异步操作可以释放每个请求 45 毫秒的时间来处理其他请求。
这是仅仅选择使用非阻塞方法而不是阻塞方法,在你的应用程序容量和处理速度上的显着差异。
参考:
- https://nodejs.org/en/docs/guides/dont-block-the-event-loop/
- https://nodejs.org/en/docs/guides/blocking-vs-non-blocking/
希望对您有所帮助。
我想用 Nuxt.js 或 Next.js 1 核 CPU 2.4Ghz, 1GB RAM 开发一个网站。
我的网站 运行 可以像开始一样快吗?
每秒有多少请求可用?
Node 应用程序是否受益于多核取决于应用程序。
一般情况下,如果不涉及子进程或集群模块, 那么你的系统上就不需要有多个内核,因为 Node.js 将只使用一个内核,因为请求处理程序总是在同一个事件循环上运行,而事件循环在单个线程上运行。
How to achieve process concurrency and high throughput: 因为 JavaScript 在 Node.js 中的执行是单线程的,所以保持 Node 服务器速度的一个好的经验法则是:避免阻塞事件循环。您可以在下面我的参考资料中的官方文档中阅读相关内容。
Simple Illustration: 考虑这样一种情况,每个对 Web 服务器的请求都需要 50 毫秒才能完成,而这 50 毫秒中的 45 毫秒是可以异步完成的数据库 I/O。 选择非阻塞异步操作可以释放每个请求 45 毫秒的时间来处理其他请求。 这是仅仅选择使用非阻塞方法而不是阻塞方法,在你的应用程序容量和处理速度上的显着差异。
参考:
- https://nodejs.org/en/docs/guides/dont-block-the-event-loop/
- https://nodejs.org/en/docs/guides/blocking-vs-non-blocking/
希望对您有所帮助。