草庐IT

keep_mutation

全部标签

php - TCP Keep-Alive PDO 连接参数

PHP的PDO(或它各自的PostgreSQLdriver)是否有启用TCPkeep-alive探测的连接配置选项likeJDBC?我遇到了一个问题,我们通过NAT建立连接,5分钟后连接断开(我无法更改),而我们在外部Postgres实例上运行的查询需要超过5分钟分钟运行,导致我们的客户端永远不会收到来自Postgres实例的响应并最终超时。 最佳答案 PDOPostgreSQL驱动程序建立在libpq客户端库之上。驱动程序允许以键/值对的形式在DSN中传递特定的libpq连接选项,其中包括TCPkeepalives选项。来自Pos

linux - 我可以使 TCP Keep-Alive 对称吗?

我有一个服务器(Ubuntu上的nginx),它有listen80so_keepalive=4m::;。我有一个Windows客户端,我用http://msdn.microsoft.com/en-us/library/windows/desktop/dd877220(v=vs.85).aspx设置了TCPKeep-Alive超时。.我将服务器超时设置为4分钟,客户端超时设置为5分钟。我现在注意到,使用Wireshark捕获它们之间的数据是,4分钟后服务器发送TCPKeep-Alive,然后一分钟后(从开始开始的5分钟)客户端发送自己的TCPKeep-Alive。为什么在收到服务器Kee

linux - 在服务器中使用 TCP Keep-Alives 摆脱空闲客户端

我有一个服务器来收集来自不同客户端的Tcp数据到某个端口。我有一个场景,每当客户端创建tcp连接并保持空闲状态超过假设30分钟时,我就需要关闭连接。我了解了TCPkeepalive以跟踪对等方是否已死,并且大多数情况下我发现了在客户端使用的示例。同样,我可以在服务器端使用来轮询连接是否处于事件状态吗?此外,在linuxsysctl.conf中,有一个配置文件可以编辑这些值。这似乎是整个tcp连接在某些不活动后被破坏。我需要在一段时间不活动后销毁设备的某些连接,但不会关闭整个tcp端口连接。我正在使用ubuntu创建服务器来收集TCP连接。我可以在服务器代码中使用TCPKeep-Aliv

tcp - 将 keep-alive 与负载平衡器和防火墙一起使用很有用

我有客户端和服务器组件。服务器可能安装在防火墙或负载平衡器后面。许多站点/论坛建议使用TCP保持事件功能来避免由于不活动而导致连接终止。问题是来自客户端的保持事件消息是否真的会到达服务器?我尝试使用tcptrace实用程序模拟部署,发现保持事件消息未到达服务器,但客户端仍在获取保持事件消息的ACK。我不确定LB/FW是否以相同的方式工作。在防火墙和负载均衡器的情况下,keep-alive是避免由于套接字不活动而导致连接终止的好选择吗? 最佳答案 答案当然是:“视情况而定”。许多防火墙和负载均衡器保持独立的前端和后端TCP连接,例如:

networking - 当我使用 TCP 连接时,我应该发送 Keep alive 数据包吗?

我的问题是,我已经创建了一个TCP连接,当它停留约1小时而没有传输任何数据时,它已经与服务器断开连接,但它没有通知我它已断开连接,我是否应该发送保持事件数据包到服务器?或者我应该从服务器向客户端发送keepalive数据包吗?还是我应该同时发送给两者? 最佳答案 是的,你应该。几天前我创建了一个TCP套接字/服务器应用程序,我遇到了同样的问题。我通过开始发送保持事件数据包来修复它。如果你发送保活数据包,你的问题就会消失。我听说有人说操作系统会为你发送保活数据包,我对此不是很熟悉,但发送保活数据包对我来说很明确

linux - TCP/IP : set socket option for keep-alive after connection has been established

是否可以在一些假设的应用程序级握手后设置套接字的SO_KEEPALIVE选项(TCP保持事件间隔和TCP保持事件值)?还是必须在调用accept之前设置?我关心Linux、Windows和eCoslwIP堆栈之间的互操作性,因此非常感谢有关这两个平台的信息。 最佳答案 正如EJP所说,你可以随时设置。manpage说:setsockopt()manipulateoptionsforthesocketreferredtobythefiledescriptorsockfd.你可以像这样设置或取消设置SO_KEEPALIVEintiOpt

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用于使套接字保

c++ - boost tcp 接受器和 boost tcp 套接字的 keep_alive 选项

我有几个问题,都与keep_alive有关。basic_socket_acceptor::keep_alive之间有什么区别?和basic_stream_socket::keep_alive?什么时候使用哪个?我们是否需要为ip::tcp::acceptor使用任何类型的keep_alive?这对我来说没有意义,因为接受器本身没有没有连接,但也有一个keep_alive选项,因此困惑。如果设置了keep_alive,那么当BoostAsio检测到连接中断时,它的行为是什么?它如何/何时通知用户代码?它会抛出异常吗?如果是这样,哪个异常(exception)?我在文档中没有看到任何此类详

java - Apache HttpClient TCP Keep-Alive(套接字保活)

我的http请求服务器处理时间过长(大约5分钟)。因为连接闲置了5分钟,所以代理服务器关闭了连接。我正在尝试在ApacheDefaultHttpClient中使用TCPKeep-Alive使连接长时间处于Activity状态(不要将TCPKeep-Alive与发送响应后不会关闭连接的HTTPKeep-Alive混淆)。Apachehttp核心具有以下参数SO_KEEPALIVE:http://hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/org/apache/http/params/CoreConnectionPNames.

http - Keep-alive 用于长期 HTTP session (非持久性 HTTP)

在工作中,我们有一个客户端-服务器系统,客户端通过HTTP向Web服务器提交请求。服务器端处理有时会超过60秒,这是我司IT人员设置的代理超时值,无法更改。有没有办法通过来自服务器或客户端的心跳消息使HTTP连接保持60秒以上(最好是任意长的时间)?我知道有HTTP1.1持久连接,但这不是我想要的。HTTP是否具有保持事件能力,或者这是否必须通过某种套接字选项在TCP级别完成? 最佳答案 This应该让你开始。 关于http-Keep-alive用于长期HTTPsession(非持久性H