Hi everyone, [I'm keeping this short in case it's the wrong list for this topic -- if you think I should go to apache-dev or apache-users instead, just say the word.]
First some background: I'm interested in running a WebSocket endpoint, in production, from inside Apache 2.4. I'm aware that there are architectural issues with long-lived TCP connections hogging Apache resources, and at the moment I'm prepared to live with the consequences of that (or at least I think I am). I've been working with mod_websocket [1] for a few weeks now. Things were going very well until we ran into crashes under heavy load. I _think_ they are related to the threading model used by mod_websocket -- it spins up a new thread and a new bucket brigade to write to the connection, while the original thread and brigade block to read messages. Unfortunately I don't know enough about the brigade system to know whether that's kosher or even fixable. The original author appears to have moved on to other things, if the Github history and open pull requests are any indication. So my initial questions for you are: - Is there enough interest in mod_websocket for my debugging it to be worth anyone else's time? It seems that there was some initial interest in folding mod_websocket back into ASF, but that died at some point. - Does anyone know of a community of mod_websocket users that I'm missing? Contributing fixes back to whomever is using it would be ideal. - Is it even possible/safe to do an asynchronous "one thread reads, one thread writes" operation in a production-quality module? (In other words, is mod_websocket just unfixably broken?) Basically I'm hoping to get some idea of whether I'm wasting my time. I believe the primary alternative would be to use a second WebSocket-savvy server on the backend, and run communication to it through mod_proxy_wstunnel. Thanks for your input! Jacob Champion LabVIEW R&D National Instruments [1] https://github.com/disconnect/apache-websocket