Fair enough, indeed a man with a plan. However I don't think splitting the ecore
is a prudent move, this could do more damage than good. I have an idea that might work a bit better.
The idea is E2
is big sluggish and costs a fortune in bandwidth.
So we spread the load around. Its quite tricky and has to be done correctly but this would be the plan:
stays where it is, but stop running apache
, no web pages, all it does is host the database
In front of that machine is a DNS
machine that all DNS
requests come to. This machine can be anywhere in the world.
Then you have web servers, as many as you need where ever you need. I think between 10 and 20 would be a good place to start.
This set-up up would enable E2 to stay centralised, all Gods and Editors would remain the same with the same power, E2 would look and feel the same except it would be an awful lot quicker. This is how it would work.
- Noder at home would type in the address bar www.everthing2.com
- That request would arrive at the DNS machine that would then say "Right then, the last person who visited was sent to web2.e2.com, so you are going to web3.e2.com" (now this would need testing as you could also use something like mod_rewrite to load balance it too)
- Noder's request then sends him to the IP address of the webserver. Not of the E2 core machine but to the IP address of another machine hosted by someone else possibly in another Country.
- Noder arrives at the E2 site. He types in his Username and password or whatever and web3.e2.com sends an encrypted request to ecore for database info via a VPN.
- Whatever the Noder does is then written back to the ecore machine so any other web server will pick up the change, so all the E2 servers will be the same
This set-up means you can have 50 web servers around the world serving web pages in an even way and the ecore machine just sends out text from the database, this will mean the web servers have a small spread bandwidth and the ecore gets a huge reduction in bandwidth because there is no web pages.
Its a bit more technical than that, but its just about as straight forward as that.
If done correctly, E2 would always be up.
This would also mean that if the ecore machine had to be hosted elsewhere, it could and would only cause a couple of hours downtime with a new location and IP than it would as it is now with a whole DNS propagation of 2 days. Well that's what I would do.
Sorry if this was a bit rushed, but I just saw this WU and thought "ooh ooh, I know, do it this way" I love E2 and although I wouldn't want to stop its development. I would hate it to lose its very special way of working, Splitting it down too far I think would really hurt it and damage the E2 community. I believe that something needs to be done to spread the workload but not at the expense of the central administration of the wu's.
Sorry again, just adding while I think of it.
You could also get a bit clever with it as well, Say you have few machines in the US and a couple in the UK. If the Noder is in the UK you can tell the system to say "Hey, you're in the UK, well, it just so happens that there is a server there too! I'll send you there instead" Again this would speed up the connection to the site as its only having to travel to the US to get MySQL text. If we use the DNS way of balancing the load there is a cunning spin off to that too, any one else going to E2 that connects to the internet with the same ISP as that guy would auto-magic-ally be sent to the same E2 web server.
I would be more than happy to host the E2 server its self at no cost, however I live in the UK and I suspect that might be frowned upon, although it would be hooked up to a 86Mb Line that is peered with BT Telehouse, which is nice, but I suspect the Gods would prefer a US location. Still the offer is always there.