Articles of 套接字

将子域redirect到同一服务器的不同端口上的服务

我有一个拥有1个IP的VPS。 如果我运行两个套接字服务器,一个在端口8080,另一个在端口8081,有没有一种方法可以将service1.mydomain.com映射到端口8080上的套接字服务器,将service2.mydomain.com映射到端口8081上的套接字服务器? 我没有运行Web服务器,而是运行在8080端口上的websocket服务器和8081上的套接字服务器。 我之前看到过这个问题,但似乎总是关于Apache,我可以在其中编辑VirtialHosts文件。 由于我没有使用Apache,我不能这样做。 是否有可能做到这一点? 或者我将不得不继续使用mydomain.com:8080和mydomain.com:8081? 该服务器正在运行Debian 8。 谢谢

套接字和交换空间

我有一个系统内存不足,有很多开放的连接。 但是我的交换空间并没有被用完。 套接字/套接字文件描述符可以使用交换空间吗? 这是一个Linux系统顺便说一句。 谢谢

Linux:如何显示为特定界面打开的所有套接字?

如何显示为特定界面打开的所有套接字?

套接字应用在NAT中失败

我们有一个在我们的环境中运行的套接字应用程序(客户端和服务器)。 在我们的客户端,他们正在使用NAT。 当我尝试将客户端(从客户端的NATed环境中的NATed IP)连接到客户端的NATed环境中的服务器时,它将失败。 什么是要检查的东西?

closuresssh ControlPath

我在kerneltrap的邮件归档中find了说明:“scp batch mode?” 当我发出closures连接的命令的时候,要有洞察力 # Bring the connection down. ssh -S /tmp/ssh_socket -O exit dummy 我的ssh抱怨说它不支持-O (即大写的o)选项。 我的问题是:是否足以删除/tmp/ssh_socket ,正确closures连接,或者我在这里错过了一些重要的步骤?

什么是与MySQL

我试图安装这个名为socialengine的应用程序,除了在mysql屏幕上,我一直在收到这个错误 The MySQL storage engine is not installed. 我注意到我的袜子文件在这里 mysqld –verbose –help | grep ^socket 110602 10:06:06 [Note] Plugin 'FEDERATED' is disabled. socket /var/run/mysqld/mysqld.sock 所以它似乎在运行 所以在线阅读,我想我可以通过添加到我的vim /etc/mysql/my.cnf文件来解决这个问题 [client] port = 3306 socket = /var/run/mysqld/mysqld.sock [mysqld_safe] socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] key_buffer = 224M sort_buffer_size = 4M read_buffer_size = 4M read_rnd_buffer_size = 4M myisam_sort_buffer_size […]

如何解决Windows Server 2003 SP2上间歇性的winsock 10054错误

在运行Windows Server 2003 SP2的一台服务器上,我们在几个应用程序中收到了10054个错误。 这种情况是间歇性的,我们也有其他类似的服务器成功运行相同的应用程序。 我们可以采取哪些故障排除步骤来解决这个问题?

Nginx + SSL + Rails + Juggernaut(Node.js)+ Engineyard

我在同一台服务器上有两个不同的应用程序。 其中一个在80端口(mydomain.com)上运行,另一个在端口443(sub.mydomain.com)上运行,并具有通配符证书。 第一个应用程序仅用于信息目的,不需要websockets支持。 第二个应用程序应该有安全的websockets支持(wss协议)。 我尝试在engineyard云上为我的rails应用程序和nginx服务器设置juggernaut gem(用于websockets),但是我遇到了一个问题。 Engineyard云只提供两个打开的端口:80和443.我知道nginx并不完全支持http 1.1反向代理,所以我不能使用nginx中的代理redirectwebsockets请求到特定的本地端口(在我的情况下,这个端口是8080)。 我试过使用HAProxy,它对我来说只是使用不安全的websocket,但是我需要支持安全的websocket。 正如我所知,在这种情况下,我应该使用像隧道隧道我的https请求,而不是使用HAProxy,但是当我testing它 – 我看到服务器必须工作几次慢,我仍然没有工作,使用安全套接字连接:( 也许我做错了什么? 也许有人会告诉如何为多个应用程序设置nginx(其中一个应该通过https工作),并使用两个端口(80和443)来保护websocket。 ps另外我用了一个node-http-proxy,在这种情况下,我可以为不同的nginx应用程序设置代理,但是我不能运行websockets(只发生在通过nginx的“handshake”上,而不是“切换协议”)

SocketException(超时)仅在按计划任务运行时

我在属于本地pipe理员组的用户下运行Windows Server 2003实例上的C#web-scraper应用程序(我写的)。 当我在桌面/远程桌面会话中运行它时,应用程序运行成功,但是当我安排它在桌面会话之外的相同用户/安全上下文下运行时,所有套接字连接超时。 计划任务调用一个batch file,然后调用应用程序。 Windows Server 2003实例具有非常基本的configuration,甚至没有连接到域。 我找不到任何防火墙或安全configuration,这是防止这个,但也许我已经忽略了一些东西,任何人都可以得到任何援助? System.Net.WebException:无法连接到远程服务器—> System.Net.Sockets.SocketException:连接尝试失败,因为连接方没有>正确响应一段时间,或build立连接失败,因为连接在System.Net.ServicePoint.ConnectSocketInternal(布尔connectFailure,套接字s4,套接字s6,套接字和套接字,IP地址和地址,ConnectSocketState状态,IAsyncResult> asyncResult,Int32超时,exception和exception)—结束内部exception堆栈跟踪—在System.Net.HttpWebRequest.GetResponse()

数据包大小修改套接字

我在QT中进行套接字编程,我必须devise一个协议,通过TCP / IP传输数据。 现在我的协议devise是SIMPLE,它以一种方式发送命令,每写入一次写入套接字的数据的第一个BYTE就是COMMAND。 所以每当我用socket-> write(“CDATA”)写入第一个字节时,在这种情况下,“C”意味着服务器执行某些操作的命令。 我只想知道一件事,那就是这个写是否会被分解成多个在服务器上的读取? 我知道在服务器上将有一个缓冲区大小的读取。 但是当写入在服务器的缓冲区限制内时,客户机上的socket-> write()是否可以在服务器上的多个READ中被接收? 要清除这个问题,我将给出一个例子让我们说服务器上的套接字的缓冲区读取大小是4096 BYTES。 客户端将socket-> write(“CDATA”)写入服务器。 现在有没有可能,服务器将在多于一个接收这个读取? 因为我在服务器上有一个while循环: while{ char str[] = socket->read(); // What is the coomand in the first byte if(str[0] == "C"){ // Do something } } 如果客户端发送的数据被多次读取(即使客户端在一次写入中发送),我的协议devise将会失败 您的意见非常感谢。