4

What is your experience working with Websync (comet framework)? Have you considered any alternatives before using it?

So far I can say that

Pros:

  • Very straightforward and easy to use
  • Does not require any server configuration

Cons:

  • Expensive (turned out to save us tons of money on bandwidth, so not quite)
  • Lack of documentation (there are still few gotchas with WebSync3, but documentation is very nice and comprehensive)
  • Javascript framework is not flexible enough (turned out to be flexible enough, although it took a while how to do everything we needed with WebSync2 only to see it to become one of the typical usage scenarios in WebSync3 (authentication and such)

Conclusion: The framework is amazingly straightforward and flexible, and allowed us to use it in ways that authors never even thought of ;)

As for the price: it turned out to be totally worth the money. Plus the support is just beyond awesome.

Egor Pavlikhin
  • 17,503
  • 16
  • 61
  • 99
  • Just FYI, we've released a new version of WebSync (WebSync 3), which has *massively* improved documentation (http://api.frozenmountain.com), and also adds more flexibility to the JavaScript framework by 1) arranging better namespaces, so functionality is better segregated (for example, we have fm.network.jsonp, fm.network.xhr, fm.json, etc) and 2) supporting extensions (http://api.frozenmountain.com/?class=getting-started-server-extensions). Hopefully that'll help with some concerns! – Jerod Venema Jul 01 '10 at 16:14

1 Answers1

3

I'll leave it to someone else to post their thoughts on their use of WebSync, but I figured I'd at least attempt to address the cons ;)

1) Relative to open source solutions, sure. But, what you pay in up front costs, IMHO, you'll easily make up for due to ease of use and time of implementation :). I don't think you'll find a comet solution that's faster or simpler to implement. Relative to other closed-source solutions, we're pretty darn cheap; some other comet solutions run 20k+ for a license and require support subscriptions.

2) Yeah, I know that one. The examples and documentation cover the basics, and it's enough to pull together a decent app, but doesn't go into enough detail for more advanced scenarios, etc. We're working on upgrading it.

3) I'd love to know what additional flexibility you'd like to see in the javascript framework; was there something in particular you were looking for? Drop a note in the comments!

Jerod Venema
  • 44,124
  • 5
  • 66
  • 109
  • Glad to hear. The framework is nice, but a lot of things are not a part of the API, although they are present in the DLLs (I dug in with reflector). Can't discuss specifics of the project, but it would be nice if it was possible to pass data with a subscribe message, for instance. – Egor Pavlikhin Apr 11 '10 at 03:05
  • Yeah, as mentioned, we're working on cleaning up the API documentation, especially for the .NET client; it'll be a lot better in the next release. RE: passing data with a subscribe message, you can use the "ext" parameter for that; check out the documentation for "ext" here: (http://www.frozenmountain.com/websync/support/documentation/clients#javascript-using-subscribe) – Jerod Venema Apr 11 '10 at 21:48
  • One more question. There is onReceive handler in the subscribe function, but how do I send data to it from my server-side handler? I have tried setting message.Data, but with no result. – Egor Pavlikhin Apr 11 '10 at 23:59
  • I'm not sure I'm following what you're attempting 100%, but if you're looking to *override* the data in the incoming message, you're doing it correctly; just make sure you specifiy [EventContinue.OnComplete] and call e.Complete() in your method; if not, WebSync is set up to err on the side of performance, and your server-side handler will execute asynchronously, and won't change the data until it's too late :) You can also just use [NameOfYourHandlerClass].DirectPublish("/channel", data); to push data from the server side. – Jerod Venema Apr 12 '10 at 12:39
  • Future readers please note that the above comments are related to an older version of WebSync; see our new documentation for general stuff (http://docs.frozenmountain.com), and for server-side publishing, see specifically http://docs.frozenmountain.com/#class=server-server-side-code-websync-methods – Jerod Venema Feb 03 '11 at 14:19