[EXTERNAL] Re: Export Go - for preview
+1 on Drasko's rankingstoggle quoted messageShow quoted text
From: edgex-golang-bounces@... [mailto:edgex-golang-bounces@...] On Behalf Of Drasko DRASKOVIC
Sent: Friday, February 23, 2018 4:57 PM
To: JamesWhite2 <James.White2@...>
Cc: Trevor.Conn@...; dejan.mjc <dejan@...>; manuel@...; edgex-golang@...; Garcia, Gorka <Gorka.Garcia@...>
Subject: [EXTERNAL] Re: [Edgex-golang] Export Go - for preview
On Fri, Feb 23, 2018 at 5:51 PM, <James.White2@...> wrote:
Dell - Internal Use - ConfidentialTo clarify, my personal order of preference would be:
- NATS - for MVP, because of simplification of the system
- gRPC - because Google is behind it and it is extremely well maintained and documented framework, used in industrial products and with several additional benefits (protobuf, TLS, rate limiting, circuit breaker, ...)
- Nanomsg - because it is a pure TCP and probably very performant
MQTT broker is not adequate for micro-service comm, I think. It is not built for this purpose (like NATS, AMQP, RabbitMQ, Kafka, ...). In any case - there is no native Go implementation of MQTT broker, which would bring us to similar problem of cross-compilation.
Both of the 3 technologies are very good, and if you think that brokerless design is needed - then I would rather investigate gRPC, unless there is some special argument to use TCP-based messaging:
overhead, performance, etc...
I can also advise you to make a small PoC of several microservice communication with NATS, just to get a feel of how simple it is, so you can make an estimation would this actually simplify the system, or make i more complex (extra Docker, etc...).
In any case - it would be hard to say for me which technology is the best for particular EdgeX use-case: all 3 technologies look great, and I think we will need to do research and make a comparison matrix to select the best candidate. Maybe also try to engage a wider dev community out of our edgex-golang group (for example ask on edgex-dev later).
Mainflux Author and Technical Advisor
https://urldefense.proofpoint.com/v2/url?u=http-3A__www.mainflux.com&d=DwICAg&c=oTZJxWjXA97U5efbDJZGEg&r=ng_tkMHyi7CGJozkvpxBfnH8oKpxLQBNTCY3LrRYwLU&m=MSwP_LnC5diIczR5jLmF5q8MALF-t1GjDNAzSrPHlN4&s=2SmhVUY72JOmYFpq4Rdo1YtQ1jhrQvrVGXSAr5BmGCk&e= | Industrial IoT Cloud
Engineering Division | Paris, France
EdgeX-GoLang mailing list