<div dir="ltr"><div><div>If you want to take advantage from another Erlang system for your development, take a look to RabbitMQ. There is a Web STOMP plugin (using SockJS or plain WebSockets). I'm not sure what are the pros and cons of STOMP vs plain WebSocket (bandwith, performance, scalability, etc) but it is easy to integrate.</div><div><br></div><div>You can develop your own Erlang application an deploy it with the broker in the same cluster, to avoid AMQP overhead (direct connection). Or you can develop your own plugin using Erlang and using all RabbitMQ infrastructure.</div><div><br></div><div>There is also a plugin for MQTT over WebSockets under development.</div></div><div><br></div><div>sorry for my english!</div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div><br></div>--<div>Santiago</div></div></div>
<br><div class="gmail_quote">On Fri, Jan 29, 2016 at 12:19 PM, Loïc Hoguin <span dir="ltr"><<a href="mailto:essen@ninenines.eu" target="_blank">essen@ninenines.eu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 01/28/2016 03:08 PM, Fred Hebert wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I would be interested to hear any experiences you might have in this<br>
domain, and any recommendations you might have for erlang libraries,<br>
servers, etc. Has anyone done this? What stack did you deploy? What<br>
were the issues you encountered?<br>
<br>
</blockquote>
<br>
Sadly I'm afraid I can't be of much more help there. I've left a lot of<br>
my web dev work behind me. Something equivalent in spirit to the<br>
<a href="http://socket.io" rel="noreferrer" target="_blank">socket.io</a> of old, but with the Erlang frame of mind is 'bullet',<br>
developped to work with cowboy: <a href="https://github.com/ninenines/bullet" rel="noreferrer" target="_blank">https://github.com/ninenines/bullet</a><br>
<br>
It's what I would consider your best bet, but I'm out of the game when<br>
it comes to that stuff and don't know what else may exist.<br>
</blockquote>
<br></span>
My recommendation today is to go with Websocket directly.<br>
<br>
If you take a look at <a href="http://caniuse.com/#feat=websockets" rel="noreferrer" target="_blank">http://caniuse.com/#feat=websockets</a> you can see that it will just work on close to 90% of the global market share. Chances are your local market share is higher than that, but it could also be lower (in particular if you are writing an enterprise system).<br>
<br>
Depending on when you will ship, it might not even make sense to ask yourself this question anymore. If you ship even in 1 year it already makes little sense, it's much easier to partially disable functionality with a message recommending people update or switch browser.<br>
<br>
Note that in those %s, nearly 5% are about Opera Mini. Opera Mini is a very particular browser that supports very little interactive features. I would not count it in market share and so the total of browsers that do support Websocket today is closer to 95%. If you need to support Opera Mini, I don't think even something like Bullet or Sockjs or other will work.<br>
<br>
As far as which Websocket implementation to use, I would suggest Cowboy of course, since I wrote it, but I will go as far as to suggest Cowboy master if you care about Websocket compression, although master is about to receive more breaking changes from the work toward 2.0.<br>
<br>
Cheers,<span class="HOEnZb"><font color="#888888"><br>
<br>
-- <br>
Loïc Hoguin<br>
<a href="http://ninenines.eu" rel="noreferrer" target="_blank">http://ninenines.eu</a><br>
Author of The Erlanger Playbook,<br>
A book about software development using Erlang</font></span><div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</div></div></blockquote></div><br></div>