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

Reply via email to