草庐IT

Commons-Io

全部标签

tcp - 给定 TCP,当 IO 是非阻塞时,State Design Pattern 是否用处不大?

在我的TCP应用程序中,只要IO处于阻塞状态,状态设计模式似乎就很有用。我的SwingWorker的doInBackground()可以通过引用一个对象循环访问TCP连接中的读取、写入和接受状态。请参阅维基百科讨论页上的示例:http://en.wikipedia.org/wiki/Talk%3AState_pattern.然而,当我将服务器重构为非阻塞IO时,它似乎不再有用了。Select()返回一组准备好进行IO的channel,这些channel通过引用一系列if语句中的SelectionKey状态来处理。任何人都可以根据经验或理解来确认当IO是非阻塞时状态设计模式是否仍然有用?

node.js - 确定 socket.io 是 TCP 还是 HTTP

这是我的Node服务器vario=require('socket.io').listen(8889);io.sockets.on('connection',function(socket){socket.emit('news',{hello:'world'});socket.on('myotherevent',function(data){console.log(data);});});我正在尝试在socket.io.js的帮助下从客户端连接到此Node服务器我的连接没有任何问题我的要求是我想创建一个客户端可以连接的TCP连接但是我怎么知道并确认服务器是TCP类型还是HTTP类型

WebSocket 报java.io.IOException: 远程主机强迫关闭了一个现有的连接。

在客户端强制关闭时,或者窗口强制关闭时,后端session没有关闭。有时还会报:java.io.EOFException:这个异常前端心跳没有收到信息,还在心跳。CloseReasonclose=newCloseReason(CloseReason.CloseCodes.NORMAL_CLOSURE,"关闭客户端,下线!");session.close(close);所以在 @OnClose,@OnError在这两个方法中,不管是关闭还是发生未知错误,都关闭session

http - 使用 HTTP keep-alive 和 websockets (socket.io) 时的 TCP 连接数

我已经使用数据库驱动的session管理实现了一个成熟的节点http服务器,并且能够在顶部使用socket.io来实现文件上传进度条和聊天应用程序。我还使用了node-http-proxy并且能够代理w​​ebsockets。在这种背景下,我有以下问题,我认为我需要知道这些问题才能成为一名有效的socket.io开发人员。我没有被困在任何特定的代码中,但下面要求的信息是成为有效的套接字开发人员所必须的,但似乎没有任何解释。我的理解:一个。HTTP使用TCP套接字作为底层传输。在旧的HTTP实现中,每个请求使用一个套接字。在较新的版本中,“Keep-alive”header用于使套接字保

perl - IO::Socket 与 Socket 我都是 "use"吗?

我正在为我的网络类(class)编写一个小程序,但遇到了一些困惑。我目前的工作正常,但我发现我发现的perl网络示例之间存在一些不一致。有的人导入了Socket模块,有的人导入了IO::Socket模块。更令人困惑的是,有些同时导入了Socket和IO::Socket。有道理吗?我以为IO::Socket会导入Socket?我问是因为我正在尝试使用函数“getaddrinfo()”,它一直对我大喊“未定义的子例程&main::getaddrinfo在./tcp_server.pl第13行调用。”在Socketperldoc中。我通过手动指定主机IP让它工作...但我希望它自动检索它正在

http - std::io::TcpStream::read_as_string 返回空字符串

我想在Rust中创建一个类似curl的函数。到目前为止,这是我使用的代码:matchUrl::parse(url){Ok(u)=>{matchTcpStream::connect(u.host.as_slice(),80){Ok(mutsocket)=>{letreq=format!("GET{:s}HTTP/1.1\r\nHost:{:s}\r\nAccept:*/*\r\nContent-Length:0\r\nContent-Type:aplication/x-www-form-urlencoded\r\n",u.path.path.as_slice(),u.host);sock

node.js - 我应该使用 WebRTC 还是 Websockets(和 Socket.io)进行 OSC 通信

我正在开发一个应用程序,它将发送OSC控制消息,据我所知,这是一个数据报包,从网页到OSC接收器(服务器),例如Max/MSP或Node或任何其他。我知道通常使用UDP,因为速度在使用OSC完成的实时/视听控制工作中很重要(这也是我将要做的工作),但我知道可以使用其他方法。例如,现在我将OSC从浏览器发送到node.js服务器(使用socket.io),然后从node.js服务器发送到Max(这是我最终想要数据的地方),还有使用socket.io。我相信这意味着我正在使用websockets并且延迟/延迟还不错。不过,我很好奇,既然WebRTC已经出来了,我是否应该把我future的工

c# - NetworkStream 获取 System.IO.IOException : Unable to write data to the transport connection

我正在使用NetworkStream来保持打开的TCP/IP连接,消息可以通过该连接发送。我收到一条消息,处理它,然后返回一个ACK​​。我正在使用一个偶尔会收到消息的站点,但是当我发送ACK时,我收到了IOException。有时这只会持续一两条消息(我可以收到下一条消息),而其他时候它会一直持续到服务停止并重新启动。下面是我的NetworkStream的代码,没有任何处理:using(NetworkStreamstream=client.GetStream()){stream.ReadTimeout=ReadTimeout;...if(stream.CanRead&&stream.

解决docker拉取镜像报错:Error response from daemon: Get “https://registry-1.docker.io/v2/“: dial tcp

1、问题:今天做完一个新项目,搭建了一个新的虚拟机,打算使用docker来搭建各种环境,发现拉取镜像报错2、报错信息:Errorresponsefromdaemon:Get"https://registry-1.docker.io/v2/":dialtcp如下:3、解决过程一看,挺新奇,一开始只是简单的以为我打错命令了,以为docker没有这个镜像,然后查询下mysql镜像:dockersearchmysql发现是有的,说明我没有打错,然后翻译了一下,显示说:来自守护程序的错误响应:Get“https://registry-1.docker.io/v2/“:拨号tcp然后我重启docker试试

Javascript Node.js 和 Socket.IO 广播服务器

我只需要一个简单的例子来解释如何做一个Node.JS服务器。基本上Node.JS将有2个服务器运行:-一个粗糙的TCP服务器和-一个Socket.IO服务器目标是将数据从TCPClient转发到对其感兴趣的各种Socket.IO客户端这样做的原因是为了更容易与其他语言进行通信(我将让一个java服务器在tcp套接字中发送消息,因为我找不到更好的方法来做到这一点-所有可用的java库(socket.io服务器和用java实现的客户端)是错误的)因为几乎每种语言都有套接字api。TCP客户端将在连接后立即发送一个字符串,Node.JS服务器将使用它创建一个命名空间并为其提供数据,因此Soc