gpt4 book ai didi

jquery - 客户端如何处理带有来自服务器的多个响应的node.js

转载 作者:太空宇宙 更新时间:2023-11-03 23:46:47 25 4
gpt4 key购买 nike

服务器( Node )似乎具有类似线程的行为,因为它处理同步请求,但我们知道客户端的 JavaScript 不支持多线程。我只是问客户端(javascript)如何处理node.js,特别是来自服务器的多个响应?例如,我想同时渲染两个对象。

用node.js制作一个快速分阶段的实时游戏应用程序是否合适?

有没有办法或模式来处理这个问题?

最佳答案

将 Node 视为指挥官,它处理任务的监控,没有任何阻塞。所以如果你这样想的话, Node 不需要是多线程的,它执行任务时没有任何等待时间,因此不需要创建新线程,因为没有任何阻塞。

你在评论中提到了套接字,想想看,Node 有一个网络线程来监视 TCP/UDP 连接的数据,当它收到一个数据包时,它会询问你的 Node 脚本你想用这个数据包做什么,您立即告诉网络线程将这个新数据包作为回复发送出去,然后网络线程在调用下一个事件时执行此操作。

<小时/>

看看下面的图片和段落,这应该能解释

In node.js, you aren’t supposed to worry about what happens in the backend: just use callbacks when you are doing I/O; and you are guaranteed that your code is never interrupted and that doing I/O will not block other requests without having to incur the costs of thread/process per request (e.g. memory overhead in Apache).

Having asynchronous I/O is good, because I/O is more expensive than most code and we should be doing something better than just waiting for I/O.

enter image description here

An event loop is “an entity that handles and processes external events and converts them into callback invocations”. So I/O calls are the points at which Node.js can switch from one request to another. At an I/O call, your code saves the callback and returns control to the node.js runtime environment. The callback will be called later when the data actually is available.

来源:http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/

<小时/>

请务必阅读该文章,这是第一篇让我完全了解后端架构的文章。

关于jquery - 客户端如何处理带有来自服务器的多个响应的node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9151788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com