Hello,
I am using Jetty 9.4.35.v20201120 for a Websockets word game with 2000
users and while it works pretty stable, every minute or so I observe the
following bursts in the log:
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-937: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-953: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-953: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-937: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-953: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-937: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-937: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1001 reason=
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-937: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-953: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-757: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-929: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-756: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-938: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
INFO:words:qtp100555887-951: onWebSocketClose: hostname=77.111.244.123
mUid=0 statusCode=1006 reason=Disconnected
I check the IP address (BTW I have changed it in the above log excerpt) -
and it is a legit player, that is not some script kiddie.
Those bursts do not come for every user, but only for few of them.
Does anybody have an idea, what is happening?
Is it some nature of the Websockets protocol or some older browser/several
browser tabs being opened? Or maybe the fact that I have haproxy 1.8.23 in
front of the Jetty?
Below is my simple Java code and the excerpt from haproxy.cfg
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
# for WebSocket connections
timeout tunnel 1h
timeout client-fin 1m
frontend slova_de
bind 95.216.113.92:80
bind 95.216.113.92:443 ssl crt /etc/pki/tls/certs/slova.de.pem no-sslv3
http-request deny if { path_beg /xmlrpc.php }
redirect scheme https if { hdr_end(host) -i slova.de } !{ ssl_fc }
default_backend jetty_ru
backend jetty_ru
server domain 127.0.0.1:8080 send-proxy
@Override
public void onWebSocketClose(int statusCode, String reason) {
// getHostString does not use DNS resolving
String hostname = (mSession == null ? "unknown" :
mSession.getRemoteAddress().getHostString());
LOG.info("onWebSocketClose: hostname={} mUid={} statusCode={}
reason={}", hostname, mUid, statusCode, reason);
disconnect();
}
@Override
public void onWebSocketError(Throwable ex) {
// getHostString does not use DNS resolving
String hostname = (mSession == null ? "unknown" :
mSession.getRemoteAddress().getHostString());
LOG.warn("onWebSocketError: hostname={} mUid={} ex={}", hostname,
mUid, ex);
disconnect();
}
Thank you for any input
Alex
_______________________________________________
jetty-users mailing list
[email protected]
To unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users