I have started working on an idea I had for a multi-node (cluster
aware) ESMTP server. I have decided to write it using Google’s Go
language (for reasons which aren’t absolutely clear at the moment). Designed from the ground up to work as a cluster, each node keeps an
index of the available messages by using hashes which are distribute
throughout the cluster. If a message is requested (over POP3 only at the moment, no IMAP4)
that is not available on the local node, a request is sent to the node
with the original message for transmission to the POP3 client. There is also a rudimentary level of replication and caching for
redundancy and to minimize the inter-node traffic. NOTE: Goesmtp is EXPERIMENTAL and is not yet ready for beta testing or
for production deployment. The initial source code has been uploaded… The project can be found here: http://code.google.com/p/goesmtp/ For further updates please follow the GoESMTP development blog here:
http://goesmtp.posterous.com/
aware) ESMTP server. I have decided to write it using Google’s Go
language (for reasons which aren’t absolutely clear at the moment). Designed from the ground up to work as a cluster, each node keeps an
index of the available messages by using hashes which are distribute
throughout the cluster. If a message is requested (over POP3 only at the moment, no IMAP4)
that is not available on the local node, a request is sent to the node
with the original message for transmission to the POP3 client. There is also a rudimentary level of replication and caching for
redundancy and to minimize the inter-node traffic. NOTE: Goesmtp is EXPERIMENTAL and is not yet ready for beta testing or
for production deployment. The initial source code has been uploaded… The project can be found here: http://code.google.com/p/goesmtp/ For further updates please follow the GoESMTP development blog here:
http://goesmtp.posterous.com/