lovedigit
👽 Chevereto Freak
Hello,
I am trying to set up a geo-steered server instances in multiple locations globally. I am still new to this, but I have played with this system recently. There are few websites that I have been hosting without any problem with this setup, however, Chevereto seems to act a little awkward.
Goal: I want to setup the frontend of the chevereto website in Tokyo, Singapore, Amsterdam, Australia, and US in order to minimize the latency. I am using Amazon's geo-dns to send users to the nearest server location based on their location.
There is a Master-Master Replications across the databases of all these locations individually. i.e. each location has their database synced at all the times, so that when a change is made in one location, it can be replicated to all the datacenters. Moreover, the files are also being synced bidirectionally with the help of unison and ssh key chain.
Result: Everything works perfectly. The system works as it should. I can verify it by using VPN service to change my location and setup the servers to return subdomain of the server location browser is being connected to. For example, if I set my VPN to US, the server returns en.domain.com. Simillarly, when connected to Asia, the webpage is servered by asia.domain.com, Australia by au,domain.com, Europe by eu.domain.com and Japan by jp.domain.com. I tried carrying out natural navigation, and everything worked as expected. Logged in to my account, Created a new account from signup page, deleted an image, renamed an image and so on. I tested whether or not these actions were replicated on other datacenters, and they did.
However, the real and biggest issue with this system is that chevereto seems to start from the same #ID, as if it stores the last id of the image somewhere outside the database. As a result, if I upload an image at Eu server and another image at US server at the same time, they end up sharing the same image ID, which means we have two or more images at the same image ID when accessed from the different locations. For Example, en.domain.com/image/CXjlK will have different image than eu.domain.com/image/CXjlK.
I really can't figure out whether it is something related to Chevereto, this script simply isn't designed to handle the database replications or perhaps I am doing something wrong?
I would like to mention that there are 3 other highly active websites which is working fine with this setup. One of them is a file hosting website.
Any pointers will be a great help to me, as I really want to scale my chevereto website to handle anticipated traffic over the next few months.
I am trying to set up a geo-steered server instances in multiple locations globally. I am still new to this, but I have played with this system recently. There are few websites that I have been hosting without any problem with this setup, however, Chevereto seems to act a little awkward.
Goal: I want to setup the frontend of the chevereto website in Tokyo, Singapore, Amsterdam, Australia, and US in order to minimize the latency. I am using Amazon's geo-dns to send users to the nearest server location based on their location.
There is a Master-Master Replications across the databases of all these locations individually. i.e. each location has their database synced at all the times, so that when a change is made in one location, it can be replicated to all the datacenters. Moreover, the files are also being synced bidirectionally with the help of unison and ssh key chain.
Result: Everything works perfectly. The system works as it should. I can verify it by using VPN service to change my location and setup the servers to return subdomain of the server location browser is being connected to. For example, if I set my VPN to US, the server returns en.domain.com. Simillarly, when connected to Asia, the webpage is servered by asia.domain.com, Australia by au,domain.com, Europe by eu.domain.com and Japan by jp.domain.com. I tried carrying out natural navigation, and everything worked as expected. Logged in to my account, Created a new account from signup page, deleted an image, renamed an image and so on. I tested whether or not these actions were replicated on other datacenters, and they did.
However, the real and biggest issue with this system is that chevereto seems to start from the same #ID, as if it stores the last id of the image somewhere outside the database. As a result, if I upload an image at Eu server and another image at US server at the same time, they end up sharing the same image ID, which means we have two or more images at the same image ID when accessed from the different locations. For Example, en.domain.com/image/CXjlK will have different image than eu.domain.com/image/CXjlK.
I really can't figure out whether it is something related to Chevereto, this script simply isn't designed to handle the database replications or perhaps I am doing something wrong?
I would like to mention that there are 3 other highly active websites which is working fine with this setup. One of them is a file hosting website.
Any pointers will be a great help to me, as I really want to scale my chevereto website to handle anticipated traffic over the next few months.