It turns out my main problem was in fact a dumb coding error I had in a function wrapping the http-kit send! function, so that I wasn't actually sending anything to the socket under certain circumstances - apart from that the code was seemingly sound.
I appreciate the replies, however. Aleph looks cool - will need to check that out. On Saturday, December 6, 2014 at 6:03:41 PM UTC+1, Lars Ole Avery Simonsen wrote: > > Hi guys > > I am trying to implement Server Sent Event support in a small hobby > project based on the http-kit server framework and compojure. > > I am still quite new to clojure in general, so it may very well be that I > am missing something obvious, but this SSE detail has me stumped. > > What I have tried is to take inspiration from the Eventual > <https://github.com/ninjudd/eventual> library for the SSE implementation > (which is aimed at jetty). I have changed the Eventual implementation so > that it uses the http-kit async-channel implementation for data > transmission. What I am seeing is that everything seems to run without > errors except for the fact that no data is being received at the > EventSource in the browser. > > If I allow the sse channel to close immediately after opening (which is > pretty useless), the initial message is received at the browser side, but > if I keep the connection open, nothing gets received. > > Having had a look at the http-kit internals, my suspicion is that the > socket doesn't get flushed and so all my attempts at communication are > sitting in some buffer somewhere. > > All SSE implementations I have looked at for other platforms have explicit > calls to flush the socket buffers on the long lived connection after each > message transmission. > > Does anyone have any suggestions as to a better way to achieve SSE support > in a http-kit based server? Or maybe ideas as to what I might be doing > wrong? > > Thanks in advance. > > LOAS > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.