[ANN] faye-websocket 0.5.0 and websocket-driver 0.1.0

50 views
Skip to first unread message

James Coglan

unread,
May 4, 2013, 9:55:13 PM5/4/13
to faye-...@googlegroups.com
Hello everyone,

This is a very brief announcement to say that faye-websocket, our general-purpose WebSocket library, has just reached version 0.5.0. The major changes are:

* Extract the protocol logic into the websocket-driver library
* Support the Node streams API
* Support the rack.hijack API
    * Works with Rainbows 4.5 and Puma
    * Works on JRuby and Rubinius

The biggest change in this release is that all the wire protocol logic has been extracted into the websocket-driver library, which gives you all the WebSocket processing logic in an I/O-agnostic way. See the readmes for more info, and I will blog about why I did this work soon.


faye-websocket itself should be backward-compatible. I've run the Faye tests and they're all good, but other systems based on faye-websocket should continue to work too. If they don't, please report bugs on GitHub.

James Coglan

unread,
May 6, 2013, 12:40:39 PM5/6/13
to faye-...@googlegroups.com
On 5 May 2013 02:55, James Coglan <jco...@gmail.com> wrote:
This is a very brief announcement to say that faye-websocket, our general-purpose WebSocket library, has just reached version 0.5.0.

Paul

unread,
May 7, 2013, 7:15:12 AM5/7/13
to faye-...@googlegroups.com
Through my fault of not creating a shrinkwrap package + an emergency need to push code to production, I accidentally pushed this upgraded version of faye-websocket without giving it much time in our staging environment. Instead of rolling back, I decided to keep it running and see how things went... and so far I've seen no problems at all.

Bravo on another high quality, excellent release, and thanks for the blog post explaining the decisions behind it.

James Coglan

unread,
May 7, 2013, 7:29:10 AM5/7/13
to faye-...@googlegroups.com
On 7 May 2013 12:15, Paul <psel...@gmail.com> wrote:
I decided to keep it running and see how things went... and so far I've seen no problems at all.

Exactly what I like to hear :) 

Paul

unread,
May 16, 2013, 11:20:59 AM5/16/13
to faye-...@googlegroups.com
I've noticed a sharp increase in memory consumption since this upgrade. I downgraded my other packages back to the previous releases, but unfortunately am not able to downgrade the faye-websocket package to verify because my environment is having an issue with shrinkwrap right now.

Attached is a graph of the memory usage. You can see it spike on the 6th when I deployed.
Screen Shot 2013-05-16 at 11.19.12 AM.png

Paul

unread,
May 16, 2013, 11:57:05 AM5/16/13
to faye-...@googlegroups.com
I was able to downgrade to 0.4.4. I'll let you know if this fixes the memory issue.

James Coglan

unread,
May 16, 2013, 5:13:58 PM5/16/13
to faye-...@googlegroups.com
On 16 May 2013 16:20, Paul <psel...@gmail.com> wrote:
I've noticed a sharp increase in memory consumption since this upgrade. I downgraded my other packages back to the previous releases, but unfortunately am not able to downgrade the faye-websocket package to verify because my environment is having an issue with shrinkwrap right now.

I've just spent a couple of hours running load tests on Faye and on a plain WebSocket server and haven't noticed a significant different in memory usage between 0.4.4 and 0.6.0. I'd be grateful if you could provide some scripts to reproduce your problem, and even more grateful if you're able to diagnose what exactly is leaking on your own system.

I find Node memory issues depend a lot on how fast memory is being consumed vs how fast GC can keep up, which depends on all sorts of things, making this tricky to reproduce, so any input/patches you can find for this would be awesome. 

Paul

unread,
May 17, 2013, 9:35:06 AM5/17/13
to faye-...@googlegroups.com
Downgrading didn't make a material difference in the rate of memory consumption, so something else must be at work here. I'll keep you posted as I diagnose.
Reply all
Reply to author
Forward
0 new messages