Hi Pedro, You may have as many lookup services as you like in a network, clients can discover and utilise multiple. There's no leader election capability for fail over redundancy, but you can duplicate services, duplicating state requires additional effort on the developers part. The big issue for River: it was well ahead of it's time, somewhat poorly marketed and limited mostly to local networks by IPv4, NAT, fitewalls and some security issues relating to the underlying java platform. There is support for IIOP Corba and other languages outside of the jvm, but they're not first class citizens.
You could say that Jini was one of the first Iop demonstrations, automating all sorts of things. It was marketed, that way by sun, but relied on a full jvm (Java SE) due to the lookup service requiring support for dynamic code download, so didn't really fit that space as well as it did enterprise distributed service based systems. Dynamic proxy's that didn't require dynamic code downloads were developed later in Jini 2.0, but had they been introduced much earlier could have changed the direction of development. I encourage you to experiment and explore and welcome any questions etc. Cheers, Peter. Sent from my Samsung device. Include original message ---- Original message ---- From: Pedro Villanueva <pedroroma...@gmail.com> Sent: 17/06/2016 05:56:13 pm To: dev@river.apache.org Subject: [Question] Apache River as distributed framework for IoT Hi Devs! I am a grad student and software developer, currently working on my thesis about heterogeneous distributed systems (IoT like). Looking at JINI documentation(now Apache River), I found many useful characteristics that would be convenient to use. That's why I am planning to use River base code and apply some changes to it. Primary, I will focus the changes on some common distributed system problems (master election, split-brain scenarios, voting algorithms), however the primary goal is to build a framework to manage small IoT networks (the client and service model works perfectly with this). I am still reading the whole documentation, and it appears that the only big issue for River to become a pure heterogeneous distributed framework is the centralized lookup service. So one of my goals will be to make it totally distributed, or at least as much as possible. My question is: Do you know about similar approaches being done in the past? I don't want to rework if there are some other alternatives out there. Any other advice, suggestion or additional information will be really appreciated :) Thanks, Pedro Villanueva