Node.js socket.io客户端和socket.io服务器之间有什么区别?socket.io的替代方案?

Node.js socket.io客户端和socket.io服务器之间有什么区别?socket.io的替代方案?,node.js,socket.io,Node.js,Socket.io,在理解socket.io到底是什么以及它在客户端和服务器之间的整个持久通信中的作用方面,我一直在绞尽脑汁。我脑海中不断浮现的一些基本问题是: node.js和socket.io服务器做同一件事的方式不同吗?比如lighthttpd和apache 如果我有node.js,为什么要使用socket.io服务器 我可以将socket.io客户端与另一种服务器端编程语言(如PHP)一起使用吗 除了使用socket.io客户端,还有其他选择吗 io客户端只是用于websocket通信的另一个javasc

在理解socket.io到底是什么以及它在客户端和服务器之间的整个持久通信中的作用方面,我一直在绞尽脑汁。我脑海中不断浮现的一些基本问题是:

  • node.js和socket.io服务器做同一件事的方式不同吗?比如lighthttpd和apache
  • 如果我有node.js,为什么要使用socket.io服务器
  • 我可以将socket.io客户端与另一种服务器端编程语言(如PHP)一起使用吗
  • 除了使用socket.io客户端,还有其他选择吗
  • io客户端只是用于websocket通信的另一个javascript库吗
谢谢:)

node.js和socket.io服务器做同一件事的方式不同吗?比如lighthttpd和apache

Socket.io是node.js的框架/库

如果我有node.js,为什么要使用socket.io服务器

这是一个为双向交流而设计的框架,如果您愿意,可以使用它

我可以将socket.io客户端与另一种服务器端编程语言(如PHP)一起使用吗

技术上是的。但是,您必须用另一种语言重新实现socket.io服务器以匹配它

除了使用socket.io客户端,还有其他选择吗

很多,谷歌用于websocket/实时通信[在这里输入您的语言]

io客户端只是用于websocket通信的另一个javascript库吗


Socket.io客户端是一个JavaScript库,可与Socket.io服务器兼容(它也是JavaScript库,仅在服务器端,即Node.js)

Socket.io服务器接受来自Socket.io客户端的连接。这与接受客户端连接的任何其他服务器(如Apache之类的web服务器)没有任何区别(如Internet Explorer之类的web浏览器)

js是一个构建在V8 JavaScript引擎之上的平台,该引擎附带一个方便的库,通常用于web和网络应用程序。IO是一个类似web套接字的通信包装器和RPC,它使服务器和客户端能够通过各种传输进行通信(从长轮询JSON到真正的web套接字)。通常,Socket.IO服务器代码在Node.js上运行的JavaScript应用程序中运行,Socket.IO客户端在web浏览器上的JavaScript中运行。(请注意,可以在Node.js应用程序中运行Socket.IO客户端,我过去曾将其用作多个Node.js应用程序之间的快速RPC。)

很多语言都有Socket.IO客户端,是的,我相信PHP也有一个,但我个人没有使用过

如果要与Socket.IO服务器通信,必须使用Socket.IO客户端。这是一个完全独立的协议

node.js和socket.io服务器做同一件事的方式不同吗

与传统的HTTP请求不同,SocketIO实际上是一个I/O引擎,允许客户端和服务器之间进行实时通信

如果我有node.js,为什么要使用socket.io服务器

由于两者不同,我们无法比较

我可以将socket.io客户端与另一种服务器端编程语言(如PHP)一起使用吗

否,因为socketIO服务器在NodeJS环境中运行。 客户端首先发出HTTP请求,然后socketIO向客户端发送一个静态JS脚本。 该脚本建立了双向通信。 但您可以将socketIO服务器与不同的socketIO客户端实现一起使用

除了使用socket.io客户端,还有其他选择吗

任何socketIO客户端实现都可以完成这项工作,因为它们连接到服务器。 但要注意异步通信方式,如Java或PHP

io客户端只是用于websocket通信的另一个javascript库吗

是的,但socketIO的目标是可靠性和易用性,并尽最大努力:为客户选择最佳的传输方式

希望有帮助