syncloud / platform

Run popular services on your device with one click
https://syncloud.org
GNU General Public License v3.0
400 stars 40 forks source link

replication load balancing #389

Closed lastlink closed 3 years ago

lastlink commented 5 years ago

Is it possibly to run syncloud on more than one device that syncs across devices. I understand that syncthing does the file sharing but what about the next cloud db? could we use something like cockroach db that is postgress compliant and supports replication and sharding? A true backup location has more than one location.

cyberb commented 5 years ago

Before we go into the implementation details, can you explain what exactly are you trying to achieve from a user perspective? Do you experiance load issues?

lastlink commented 5 years ago

From a user perspective I want to avoid downtime by having more than one server up that replicate to each other. If one is down then it shouldn’t matter since we’d be directed to a different one. A traditional backup is more than one location. This creates resiliency, and should allow us to continue to add on new machines/servers to scale horizontally.

cyberb commented 5 years ago

How do you see the process of adding additional devices from user perspective? What about dns names?

I guess you want fail over as opposed to load balancing? Load balancing would mean to keep all devices connected into a single cluster which is not an easy thing to maintain over the internet and potential connection losses.

Also have you implemented anything similar with or without Syncloud?

lastlink commented 5 years ago

I'm researching the options on this, you are right that a load balancer would have to be put in front of the instances, I guess the question would then go for how to enforce replication across syncloud devices which I don't see if you support. I would have to be some database that supports full replication like cochroach db, and some way to sync the files peer to peer like syncthing or resilio.

cyberb commented 5 years ago

When you say server do you mean Syncloud device with all the apps installed on it or you mean Nextcloud app only? Every app uses different set of services, Nextcloud is the only one which uses postgres.

Yes Syncloud itself does not support any replication, we instead rely on apps to provide that at the moment. So if you need Nextcloud to have that feature I would research what they have and try to experiment with two nextcloud instances on two different devices.

cyberb commented 3 years ago

not sure we can do anything at the moment, contributions are welcome of cause.