I don't really care about the loading, I know that HN traffic can overwhelm sites. The scrolljacking, on the other hand, is infuriating, especially replacing the standard "swipe to go back/forward" with "swipe to go down/up".
All major providers of Platform supports MQTT and MQTT is going to be most widely used. Most of the current implementations are over REST which will not scale up as the frequency goes up.
interested to know what is the protocol you use today.
Not only does it works well for iot, but it also is very nice for the web and micro-service oriented architectures.
It's based on websocket, so it kinda works out of the box on most networks without bugging your local sysadmin, and has a bonus benefit of TLS support. And it's open standard with lots of open source clients, like MQTT.
It's also higher level, so you get (routed) RPC and PUB/SUB, with transparent result and error propagation accross language (you JS code in the browser can call you Java code on android discussing with your C# code in the cloud and your python code on the raspi).
The main implementation for the router, crossbar.io, works very well, with plenty of knobs for introspection, security, performance, etc. And you get authentication backed in.
No really, MQTT is very low level to my taste compared to WAMP.
With MQTT, there are a number of broker implementations which offer redundancy/resiliency. I did a quick check and didn't find any place stating anything about any of the routers being able to run in a redundant/resilient mode. If that is available, running WAMP becomes feasible, as I saw some interaction between MQTT and WAMP being possible.
WAMP is just websocket, so basically any web load balancer can offer redundancy, like the would do with another web service. I haven't done it, but I'm pretty sure you can spaw 4 crossbar instances, put nginx in the front and it will work.
The problem with this approach is that the 4 Crossbar instances will need to have a connection/session with at least an instance of each service you want to have global visibility of. This is because WAMP is a session-based protocol, every peer needs to be connected to a Router in order to interact with other peers. A Router cannot initiate sessions, only clients can.
Tomorrow I am presenting Bondy (our OSS WAMP router implementation) in the Riak London Meetup (https://www.meetup.com/riak-london/events/250813756/) and it will be available in Youtube later. As opposed to everything you might have seen, BONDY works in cluster. It is written in Erlang and uses eventual consistency model where data is replicated throughout the cluster using a gossip algorithm (plumtree - epidemic broadcast trees http://asc.di.fct.unl.pt/%7Ejleitao/pdf/srds07-leitao.pdf). Bondy embedds an HTTP/REST API Gateway and will provide an MQTT gateway in the future.
We use MQTT for IoT type of stuff. I've been really really happy with it vs trying to use REST style stuff. MQTT has TLS support as well. The library is so lightweight that you can run it in a variety of environments. I did have to roll an RPC-over-MQTT convention, but it was pretty straightforward to do.
The scrolljacking is horrible. Without unblocking cloudflare JS I can't even scroll. This is 100 times more horrible than the usual scroll highjacking. That should be forbidden.
19 comments
[ 2.1 ms ] story [ 62.9 ms ] threadDo check the medium link of the post -
https://medium.com/bevywise/mqtt-vs-rest-from-iot-implementa...
Does MQTT have any sort of future? I played with it about six months ago and it felt like a half-baked thing with no momentum.
All major providers of Platform supports MQTT and MQTT is going to be most widely used. Most of the current implementations are over REST which will not scale up as the frequency goes up.
interested to know what is the protocol you use today.
Not only does it works well for iot, but it also is very nice for the web and micro-service oriented architectures.
It's based on websocket, so it kinda works out of the box on most networks without bugging your local sysadmin, and has a bonus benefit of TLS support. And it's open standard with lots of open source clients, like MQTT.
It's also higher level, so you get (routed) RPC and PUB/SUB, with transparent result and error propagation accross language (you JS code in the browser can call you Java code on android discussing with your C# code in the cloud and your python code on the raspi).
The main implementation for the router, crossbar.io, works very well, with plenty of knobs for introspection, security, performance, etc. And you get authentication backed in.
No really, MQTT is very low level to my taste compared to WAMP.