2015-04-07 56 views
1

我有一个守护进程脚本,它会连接beanstalkd。该脚本将运行3个小时。它将使用tcp连接放置一个作业,然而,在1.5小时后,将第二个作业放入此连接时。套接字将收到错误“由对等方重置连接”。 Beanstalk将不会关闭连接,所以我想知道Linux内核是否会自动关闭空闲连接?如果是,Linux内核将保留空闲连接多长时间?通过peer重置连接,linux内核保持空闲连接多久

回答

2

是的,Linux内核将重置空闲连接取决于你的ssh配置。 您必须使用选项BatchMode = yes,并在您的ssh-config文件(路径为/home//.ssh/config)中设置ServerAliveInterval,在BatchMode是的情况下,默认值为300。 ServerAliveInterval设置一个超时时间间隔(以秒为单位),在此之后如果没有收到服务器的数据,它将通过加密通道发送一条消息来请求服务器的响应。也可以在你的ssh-config文件中添加TCPKeepAlive = yes选项。 内核将使用这些配置来检测tcp连接状态。但是,它在长时间运行的脚本中很有用。