In our use case, we have 5 proxy clusters for our gaming app distributed around the world. We currently use redis and all of the redis solutions out there use one region only.
If I install gun on all of our server cluster, would they distribute it nicely on multiple regions?
hey @viet ! So gun supports server to server replication (we have some PANIC tests demonstrating this, if you want me to show you). That means even if Alice is connected to a server in the USA she can interact with Bob who is connected to a server in Europe. Obviously this increases chatter, but you could write filters to make it more intelligent.
Note: Please use the 0.5 bleeding edge branch though, it has significant performance improvements that master/stable just doesn't have. Of course if you have any problems, we're pretty active in the gitter channel so get to know everybody there, too!
That's nice to hear! Since it's peer to peer by design and installed on all server is feastableCan all of the servers be accessed under one "localhost" or "127.0.0.1" address?
By the way, specific use case is that I'm building it for this Minecraft plugin: https://github.com/minecraftly/kosmos
Thanks! No (well unless you load balance or something like that), not if they are running on separate (remote, not local) servers, you have to give gun each IP address (you can dynamically add them) for each server you want to sync with. Gun(['https://foo.bar/gun', 'https://bar.foo/gun']) etc.
There are only a few people who have been using/testing this, so you'll definitely want to work with me/them - however I'm swamped with a ton of work for some paying gun customers that are pushing out some production deployments to a ton of people.
Your project looks awesome! You'll have to give me some time, but it looks like you got a lot of skills that could be super helpful between me knowing all the P2P data sync stuff and you with actually running/maintaining servers (devops and stuff is so frustrating to me).
you can dynamically add them
Am I correct in interpreting this as meaning we can register additional peers at runtime against an running instance? Or would we have to tear down the instance and start it again passing in the new list of peers?
@ctrlplusb you can do it at runtime! :D gun.opt(moreOptions)
Also, @ctrlplusb how do you want your name engraved into the repo - from https://www.patreon.com/gunDB contribution?
I was thinking about adding your name in bold to the current readme with a link to your observable extension.
can do it at runtime! :D gun.opt(moreOptions)
✨ 🦄 ✨
I was thinking about adding your name in bold to the current readme with a link to your observable extension.
Ooooooooooh 😊
That sounds great!
Done! Let me know if you want anything else. :)
Also, I'm going to close this issue, since I believe the "issue" has been answered. Please re-open if there is a bug, or use StackOverflow for questions! Thanks.