如何将套接字连接更改为超时与完全关闭?

时间:2013-03-29 17:34:03

标签: sockets networking tcp amazon-ec2 redis

我有一个错误,其中一个长时间运行的进程在前几天工作正常,但随后对redis的查询达到我设置的45秒超时。也就是说,如果redis完全失效,我的程序就会崩溃,但事实并非如此。它等待并等待(45秒)超时并再次尝试一次又一次45秒。

如果我停止这个过程并重新启动它,那么一切都会好好再过几天。

这是在ec2上使用Elastic Load Balancing运行,我的进程在不同于redis的框上运行。

我需要在本地开发环境中重新创建这种情况。我怎么能不杀死我的本地redis,而是把它放到读取超时的状态?

1 个答案:

答案 0 :(得分:1)

也许关掉港口?这可能被解释为拒绝/关闭连接。

也许在该端口上放置另一个非redis应用程序,只是让它没有响应。换句话说,接受传入连接但不响应。您可以编写一个接受TCP连接的简单应用程序,然后不用您选择的语言执行任何操作,并让它从Redis端口启动以测试这种情况。