On Mon, May 27, 2013 at 4:59 PM, Daniel Bevenius
<daniel.bevenius(a)gmail.com>wrote:
Hi,
I've been working on adding support for Sockjs to the SimplePush server.
There is a project named socksj-netty [1] which is an external project
written for Netty 3.x.
We are using Netty 4 and there have been quite a few changes between these
two versions. I've spent some time already trying to upgrade to Netty 4 but
I have not been completely successful. Testing has been hard as there is
only an external test suite [2], so it's been a matter of getting the code
base to compile and trying to change as little as possible to work with
Netty 4.
Perhaps due to my lack of understanding the sockjs-protocol I've found
this to be somewhat of guess work. There are also parts of the
sockjs-protocol that I'm not sure are implemented, like heartbeats.
I'm now considering rewriting the sockjs-netty and use the "Netty 4 way".
This will take some time which was not planned for.
Another option that Matthias brought up was to instead use Vert.x. It was
discussed previously what we should base our implementation on and I got
the impression that we "should" stick with Netty. I've been very happy
with
Netty and would like to continue with it, but this might be that I'm more
familiar with it compared to Vert.x.
I'd not suggest to REWRITE the entire server in vert.x - that would be
wasting time.
I'd try to use Vert.x's SockJS capacity and internally use our SimplePush
Server "as a library" (e.g. like sebi did). Mainly because SockJS is
already implemented and working with vert.x
Right now the SimplePush Server accepts incoming WebSocket request:
* this could be "disabled"
* vert.x could be use to accept incoming SockJS connections. the connection
endpoint, would now talk to your CORE server ("as a library")
However, writing a Netty based Codec for SockJS, would fit the current
approach better (E.g. module up the server inside of the AS etc).
I agree that the rewrite is probably way better instead of fixing the
mentioned project.
So I'd like to hear what people think:
1. Implement Netty Sockjs
2. Switch to Vert.x instead
thanks,
/Dan
[1]
https://github.com/cgbystrom/sockjs-netty
[2]
https://github.com/sockjs/sockjs-protocol
_______________________________________________
aerogear-dev mailing list
aerogear-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev
--
Matthias Wessendorf
blog:
http://matthiaswessendorf.wordpress.com/
sessions:
http://www.slideshare.net/mwessendorf
twitter:
http://twitter.com/mwessendorf