Hacker News new | past | comments | ask | show | jobs | submit login

when you say kill the server, do you mean kill the server process or kill the box that the server runs on? I have no problem with the former, but I have a problem with the latter, and I can't tell why. It's pretty consistent.



It's a TCP issue. When the other end of the connection goes away silently (power goes of, cable is cut off etc.) TCP doesn't inform ZeroMQ that the connection is broken, so ZeroMQ uses it furthe without trying to handle the error.


It's only an issue with TCP if you forget to enable keep-alive (http://www.gnugk.org/keepalive.html). Keep-alive solves this problem, and it solves other problems too, like when your network equipment decides a connection is no longer needed and disables it. Or, you can implement application-level heartbeats--whenever you send you have the chance to recognize that your peer has gone away.


That's an interesting thought. I need to look into whether I have TCP keepalive turned on for my private interfaces.


I'd call that a characteristic of TCP, not an 'issue'.


I mean "kill -9" on the server process. I'm not under that much load, though. From reading the other comments, my suspect is REQ/REP socket lockstep, which I've never encountered, but that I guess would happen if something dies while the REQ server waits for a reply that it never gets. Do you have timeout handling in your system?


I have no problem with kill -9. I use PUB/SUB sockets. I only have problems with reboots.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: