In case of a Serversocket have full of request in its backlog and doing a long running job what will be the socket behaviour. When I try this, from windows telnet is ok, it connects. But from unix it gets "connection refused". My application is written in java and running on IBM jvm. By the way I came to that point where our application was not responding telnet from unix. Not respoing means it was writing "tyring..." and hangs, not refusing or connecting. Can anybody justify this behavior? Thank you.
相关问题
- Delete Messages from a Topic in Apache Kafka
- Jackson Deserialization not calling deserialize on
- Multiple sockets for clients to connect to
- How to maintain order of key-value in DataFrame sa
- StackExchange API - Deserialize Date in JSON Respo
You should not get "Connection refused", if the socket is in LISTEN state. Until you exhaust the slots provided by the backlog setting, your connect requests should be acknowledged (but nothing more happens). When you reach the backlog limit set by the
listen
system call, "Trying..." is the normal behaviour (the server is dropping packets until a listening backlog slot is available, the client is retransmitting SYN packets until the connect timeout happens or the server acknowledges the connect request).