You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Came across this library while looking for a good microservice platform for C/C++. This seems to be a good work, but trying to understand more about its capabilities. Any pointers / help is appreciated.
Some of the capabilities I am looking for are:
Load balanced RPC providers (with multiple scheduling methods support, such as Round-Robin, LRU etc.)
Dynamic providers that can come and go anytime (connected through, say, wifi hotspots or any narrowband networks)
Polyglot providers (RPC methods created in various multiple languages, but exposed, with just a line or two code, to the framework as RPC providers)
Mesh capability. Something similar to Seneca Mesh and/or interoperates with similar mesh networks based on patterns (thus creating complete transparency of the provider)
In the Industrial IOT field, these above are the need of the hour and ZeroEQ can be a good starting point to achieve these, since it already has REST and RPC, making it easy to achieve the Polyglot capability. If more architectural details are documented/explained, others like me would be happy to contribute where possible. I would love to see Load-balanced Polyglot RPC providers that dynamically gets discovered through Mesh and provide the services to the clients and go away.
The text was updated successfully, but these errors were encountered:
Thanks for your interest in ZeroEQ. I'm trying to respond to your questions to best of my knowledge
We have no load-balancing on the ZeroEQ level, but the underlying zmq has one for the request-reply sockets aka the Client/Server in ZeroEQ.
That's a basic feature already provided by zmq, hence there shouldn't be anything necessary on the ZeroEQ level. However, we discover new resources via ZeroConf (avahi on Linux, dnssd on mac/windows) which by default is limited to a single network. So for multiple network provider/resource discovery, this has to be implemented.
Multiple languages are easily supported by the HTTP interface for clients, just choose your language of choice with HTTP support. For the 'binary' support, aka Publisher/Subscriber and Client/Server, language bindings can be an option, but today we have none implemented/provided.
Not sure about this one. I have no experience whatsoever with mesh networks. As stated in 2., our current discovery is based on ZeroConf. If a mesh network implementation has a similar API, it can be easily added as part of the Servus library
Hope this helps you a bit more and I'm looking forward to hear back from you.
Cheers,
Daniel
Came across this library while looking for a good microservice platform for C/C++. This seems to be a good work, but trying to understand more about its capabilities. Any pointers / help is appreciated.
Some of the capabilities I am looking for are:
In the Industrial IOT field, these above are the need of the hour and ZeroEQ can be a good starting point to achieve these, since it already has REST and RPC, making it easy to achieve the Polyglot capability. If more architectural details are documented/explained, others like me would be happy to contribute where possible. I would love to see Load-balanced Polyglot RPC providers that dynamically gets discovered through Mesh and provide the services to the clients and go away.
The text was updated successfully, but these errors were encountered: