While SSE wins over WebSockets in terms of simplicity, it should be noted that intermediate http proxies may not deal with the protocol in the required ways (i.e. the proxy may not forward the request until the whole response has been read).  One way around that is to use https, which will implicitly make the proxy forward the connection directly to the origin server, but may be forbidden by some proxies altogether.  WebSockets share the problem, but as they are defined a bit more strictly than SSE, they may see more support in intermediate proxies.

The only universally safe way to push events from a HTTP server to a client is to use (long) polling.  Other methods are not advisable if universal availability of the service is desired.

It is unfortunate that there is no maintained WebSockets service that works well with Hunchentoot.  There once was Hunchensocket, but it did not receive any love over the last few years and thus requires considerable work to bring it up to date.

-Hans