Tag: 套接字

应用程序如何使用端口80 / HTTP而不与浏览器冲突?

如果我理解正确,应用程序有时使用HTTP发送消息,因为使用其他端口很容易引起防火墙问题。 但是,如何在不与其他应用程序(如Web浏览器)冲突的情况下工作? 事实上,一次运行多个浏览器怎么不冲突呢? 他们都监视港口,并得到通知…你能分享一个港口吗? 我有一种感觉,这是一个愚蠢的问题,但不是我曾经想过的事情,在其他情况下,我已经看到了问题,当2个应用程序configuration为使用相同的端口。

selectvs民意调查vs epoll

我正在devise一个新的服务器,需要支持数千个UDP连接(大约100,000个会话)。 任何input或build议使用哪一个?

正确的方法来停止TcpListener

我目前使用TcpListener来解决传入的连接,每个连接都有一个处理通信的线程,然后closures那个单一的连接。 代码如下所示: TcpListener listener = new TcpListener(IPAddress.Any, Port); System.Console.WriteLine("Server Initialized, listening for incoming connections"); listener.Start(); while (listen) { // Step 0: Client connection TcpClient client = listener.AcceptTcpClient(); Thread clientThread = new Thread(new ParameterizedThreadStart(HandleConnection)); clientThread.Start(client.GetStream()); client.Close(); } listenvariables是一个布尔types,它是类中的一个字段。 现在,当程序closures时,我希望它停止监听客户端。 将listen设置为false将防止它接受更多的连接,但是由于AcceptTcpClient是一个阻塞调用,它将至less取下一个客户端,然后退出。 有什么办法可以迫使它只是突然停止,那么在那里? 调用listener.Stop()时有什么效果,而另一个阻塞调用正在运行?

套接字与SocketChannel

我想了解一般的SocketChannels和NIO 。 我知道如何使用常规套接字以及如何制作简单的每客户端服务器(使用常规阻塞套接字)。 所以我的问题: 什么是SocketChannel? 当使用SocketChannel而不是Socket时,额外获得的额外function是什么? 频道和缓冲区之间的关系是什么? 什么是select器? 文档中的第一个重要性是A selectable channel for stream-oriented connecting sockets. 。 那是什么意思? 我也读过这个文件 ,但不知何故,我没有得到它…

使用JavaScript从浏览器连接到TCP套接字

我有一个vb.net应用程序打开一个套接字,并在其上侦听。 我需要使用运行在浏览器上的JavaScript通过这个套接字与该应用程序进行通信。 这就是我需要发送一些数据在这个套接字,以便在这个套接字上侦听的应用程序可以采取这些数据,做一些东西使用一些远程调用,并获得更多的数据,并把它放回我的JavaScript需要的套接字阅读并在浏览器中打印。 我试过,socket.io,websockify,但没有certificate是有用的。 因此,这个问题,我正在尝试什么? 有没有一种方式,在浏览器中运行的JavaScript可以连接到一个TCP套接字,并发送一些数据,并监听它在套接字上的更多的数据响应,并将其打印到浏览器。 如果这是可能的,那么有人可以指出我正确的方向,哪个能帮助我确立目标。

获取Linux上的一个接口的IP地址

如何从C代码获取Linux上的接口的IPv4地址? 例如,我想获取分配给eth0的IP地址(如果有的话)。

简单的Socket服务器在Bash?

有没有办法快速绑定到TCP端口/ IP地址,只需将所有信息打印到STDOUT? 我有一个简单的debugging解决scheme,它将事情写入127.0.0.1:4444,我希望能够简单地绑定一个来自bash的端口,并打印所有的内容。 是否有捷径可寻?

将(而且应该)在C + + 11中有套接字?

新的C ++ 11将包含任何套接字库? 所以可以做一些std::socket -ish? 看到如何添加std::thread ,感觉好像套接字也应该被添加。 C型sockets是一种痛苦…他们感觉非常不直观。 不pipe怎样:C ++ 11中是否会有C ++套接字(使用Googlesearch,但无法find答案)? 如果没有,他们是否有任何计划join? 为什么(为什么不)?

性能:TCP环回连接与Unix域套接字

使用基于Android和iOS的应用程序,需要与运行在同一设备上的服务器进行通信。 目前使用TCP环回连接与应用程序和服务器进行通信(应用程序写在用户层,使用Android NDK编写的C ++服务器) 我想知道是否用Unix域套接字replace交互会提高性能? 或总体来说有没有证据/理论certificate,Unix域套接字将提供更好的性能,然后TCP环回连接?

Java中的asynchronousIO?

什么selectasync io(基于套接字)在那里Java和其他然后java.nio? 此外,java.nio在后台使用线程(因为我认为.NET的asynchronous套接字库,也许它已经改变),或者是真正的asynchronousio使用适当的select呼叫?