<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, May 27, 2013 at 4:59 PM, Daniel Bevenius <span dir="ltr">&lt;<a href="mailto:daniel.bevenius@gmail.com" target="_blank">daniel.bevenius@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hi, <div><br></div><div>I&#39;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. </div>
<div>We are using Netty 4 and there have been quite a few changes between these two versions. I&#39;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&#39;s been a matter of getting the code base to compile and trying to change as little as possible to work with Netty 4. </div>

<div>Perhaps due to my lack of understanding the sockjs-protocol I&#39;ve found this to be somewhat of guess work. There are also parts of the sockjs-protocol that I&#39;m not sure are implemented, like heartbeats. </div>

<div><br></div><div>I&#39;m now considering rewriting the sockjs-netty and use the &quot;Netty 4 way&quot;. This will take some time which was not planned for. </div><div>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 &quot;should&quot; stick with Netty. I&#39;ve been very happy with Netty and would like to continue with it, but this might be that I&#39;m more familiar with it compared to Vert.x.</div>
</div></blockquote><div><br></div><div><br></div><div style>I&#39;d not suggest to REWRITE the entire server in vert.x - that would be wasting time.</div><div style>I&#39;d try to use Vert.x&#39;s SockJS capacity and internally use our SimplePush Server &quot;as a library&quot; (e.g. like sebi did). Mainly because SockJS is already implemented and working with vert.x<br>
</div><div style><br></div><div style>Right now the SimplePush Server accepts incoming WebSocket request:</div><div style>* this could be &quot;disabled&quot;</div><div style>* vert.x could be use to accept incoming SockJS connections. the connection endpoint, would now talk to your CORE server (&quot;as a library&quot;)</div>
<div style><br></div><div style><br></div><div style><br></div><div style>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).</div><div style>
I agree that the rewrite is probably way better instead of fixing the mentioned project.</div><div style><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr">
<div><br></div><div>So I&#39;d like to hear what people think:</div><div>1. Implement Netty Sockjs</div><div>2. Switch to Vert.x instead </div><div><br></div><div>thanks,</div><div><br>
</div><div>/Dan</div><div><br></div><div>[1] <a href="https://github.com/cgbystrom/sockjs-netty" target="_blank">https://github.com/cgbystrom/sockjs-netty</a></div><div>[2] <a href="https://github.com/sockjs/sockjs-protocol" target="_blank">https://github.com/sockjs/sockjs-protocol</a></div>

</div>
<br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br>
<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div>