The whole idea is basically you could have a bunch of little servers
4-8GB of ram with optics pulling a huge load using memcache servers
behind them. The memcache servers will need to make sure they have
like 64GB-128GBs of ram. Perfect for the clouds.
You could build a mini-gmail this like this way. Then servers 1-4 only
have to read from there databases and memcache, servers 5-7 perform
writes to the databases and memcache then with optics, the
possibilities are unreal.
The idea started awhile back when I was thinking about cloud shared
hosting. I took ISPconfig and modded it out to use containers for the
users data. and all the configs.
ie: Ports 110, 445, and the ssl ports
Ports 25, 995
Load Balancer
Load Balancer
|
|
|
|
-----------------------------------------------------------------
---------------------------------------------------------
| | |
| | |
|
| | |
| | |
|
server1 server2 server3 server4
server5 server6 server7
w/mysql w/mysql w/mysql w/mysql w/mysql
w/mysql w/mysql
| | | |
| |
|
| | | |
| |
|
--------------------------------------------------------------------------------------------------------------------------------------------
| |
| |
SAN-Servers Memcache Servers
holds db for mail caches user data and mail -
up to one day old
| |
| Loadbalancer
------------- |
Endless storage
----------------------------------------
| |
|
server1 server2
server3
2gthrcloud layout
like this you could have server 1 with 9999 not loadbalanced taking
care of all the backend managed for the control panel for the users,
then as the load increased you could spin up new servers, then as the
load decreased you would just destroy the extra servers, then since
all the configs for all the services and the accounts are on SAN
storage, every new server that is spun up would be referencing the
same data. I was running into problems with file locking and the way
dovecot and courier create files. It just wasn't working thru fuse.
dbmail solved that problem completely. Then I was thinking about the
extra load dbmail would be putting on each of the servers especially
as the userbase grew and got bigger. The solution was memcache since
mysql cache only works to a extent, the cache wouldn't hold as a new
message was added or a user was added or a message was marked read etc
etc. So if you can cache the things dbmail uses the most indefenitly
in ram without losing it, you could save mysql resources and burden
another server or few that has alot ram to do those tasks. End result,
a bunch of little ants marching carrying alot of food. I have
ispconfig modded for the rackspace cloudstorage, I was working on
integrating dbmail into the mail plugin when I left off, its not
really that hard. I lost the dbmail work, but its failrly easy, I just
didnt know untill know that I would have to add user prefixes to the
account names as they were added to dbmail.
2GTHRCLOUD
|
|
ports 80, 443,
25,110,995, 21,53 udp, and the other ssl ports I missed
Load
Balancer
---------------------------------------------------------------------------------------------------------------------------
| | |
| | | |
| | |
| | | |
Server1 Server2 Server3 Server4
Server5 Server6 Server7
All servers have bind, apache, pure-ftpd, dbmail,
mysql(for the users), mysql2(for dbmail) cache1 cache2
cache3
| | |
| | | |
| | |
| | |
| | | |
-----------------------------------------
-----------------------------------------------------------------------------------------------------------------------------
|
SAN
STORAGE |
|
|
----------------------------------------------------------------------
|
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| | |
| | |
| | |
| | |
| | |
| | |
DAEMON MAIL MYSQL ACCOUNT1
ACCOUNT2 ACCOUNT3 ACCOUNT4 ACOUNT5 ACCOUNT ETC ETC ETC ETC ETC
CONFIGS STORAGE STORAGE
_______________________________________________
Dbmail-dev mailing list
[email protected]
http://mailman.fastxs.nl/cgi-bin/mailman/listinfo/dbmail-dev