Hi Chris,
Is it possible to set up Sequoia embedded in a client application so that all the clients share the same data? I need to include new clients when they start up and safely allow clients to detach and shut down without data loss.
The problem is that all your clients would have to be able to connect to the same group communication channel that will totally order all messages. This is not really realistic in a WAN context, so all your clients would have to be on the same local network. Moreover, you'll need always at least one client to be up so that others can synchronize against it, otherwise it's going to be a nightmare in terms of management.
The first issue I see is the static URL in the documentation, but I suppose I can create some kind of multicast message to acquire a cluster URL. (sort of an auto-discovery/zero-conf feature)
You don't need that, your application will always connect to the local embedded database (so a local URL to the controller is fine). The real auto-discovery thing will be handled by the group communication membership service.
I guess the other issue would just be speed. I can imagine 80 databases replicating with each other might pretty much bring the network to its knees, sobbing in pain. Then again, it would be a lot smaller than YouTube's bandwidth usage, so maybe it'd be doable.
You are right, the scalability of the group communication is highly dependent on how many members (i.e. controllers) are in the group.
I would really appreciate any thing you could do to help me focus on the relevant issues - should I even consider doing this?
It's hard to tell given the little context you gave but it could make sense to use Sequoia more as a cache and use a remote database cluster for all clients. Or maybe you just don't need a database and a peer-to-peer technology could do the trick for you.

Thanks for your interest in Sequoia,
Emmanuel
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to