建立大容量Web界面的Email系统
- 作者:佚名 来源:互联网 文章点击数:
4. Web客户端
Web界面Email系统的另一个重要的部分就是Web客户端,这一部分的功能将如同个人计算机中的OutLook,负责给用户提供访问自己邮件的能力。由于Web访问本身是无连接的,因此必须保证用户的安全性。基本上,安全性可以通过登录后建立的会话标识、临时目录,并在程序中进行验证来保证。
Web客户端必须以统一的方式来访问服务器,可以通过直接文件访问的方式来获得用户的邮件,或者通过POP3、IMAP等标准协议来访问。对于使用网络文件系统来共享用户邮件的系统,通过直接文件访问的方法最为直接和便利,也不需要额外的消耗。而通过POP3、IMAP协议来访问服务器,其直接的好处就是Web客户端和Email服务器相分离,提高了系统安全性。
当前,已经有一些相当成熟的开放源代码的Web客户端软件,其中IMP是采用PHP来实现的,通过IMAP协议访问服务器的Web邮件客户端软件。而WING则是采用Perl来实现的另一个Web客户端软件。这些开放源代码软件都相当不错,然而,将这些软件与自己的系统相集成,还会需要进行一定改动。此外,还应该遵循其许可要求,将改动的代码对外公开。
5. 实现负载均衡
由于需要提供给大量的用户进行访问,因此单台服务器不能满足这个需要,而必须要使用多服务器的方式。除了按照功能性进行分割之外,如Web服务器、Email服务器以及文件服务器相分离,还需要对一些资源紧张的服务使用多服务器进行负载均衡。虽然当前一些商业厂家也提出了一些服务器集群的方案,但常用的简单而有效的方法还是DNS循环解析,Web服务器重定位和NAT负载均衡等几种。
DNS循环解析是为同一个名字分配多个IP地址,它用在Yahoo等相当大的站点上,实际效果也相当不错。而Web服务器重定位则是由Web服务器随机产生位于不同服务器上的真实页面URL,使不同的浏览器载入不同服务器上的页面,使用它只能实现Web客户端的负载均衡。而NAT负载均衡则利用第四层交换机,使同样的请求转向不同的服务器,除了昂贵的交换机之外,也有一些软件能完成NAT功能,我曾对FreeBSD的natd进行了改动,使其能支持负载均衡,对于因为交换机价格问题而不得不降低性能要求的使用者来讲,也是一种选择。
6. 实例分析
当前在国内最流行的Web界面Email系统为网易公司的系统,它是采用qmail作为基本服务器软件,再加以改动的系统。它采用 NFS网络文件系统作为用户邮件存储空间,使用Maildir作为邮件存储格式,提供多级目录以支持大量用户。其Web客户端为他们自己实现的,通过直接访问用户邮件的方式为用户提供服务。不考虑其软件的小问题,这种实现方式是非常流行且成熟的方式,大部分免费邮件服务系统都是采用的这种模式。
另一种方式是尽量利用已有的开放源代码软件,一种可行的方案是使用Postfix、OpenLDAP、cyrus和IMP来实现大容量Email 系统,其中,主邮件服务器使用Postfix查询LDAP服务器,决定用户的真实邮箱地址,然后转发到真实邮件主机上,该主机通过LDAP查询确认,将邮件放入cyrus服务器中,而IMP通过登录cyrus,使用IMAP访问用户邮件。当用户增多,一台cyrus服务器不够时,可以将新添加的用户放置到新增加的服务器上,只需要在LDAP服务器设置相应的属性就可以了。在这种方式下,由于用户是严格按服务器分割造成了管理等困难之外,这种结构本身较为复杂。然而,如果用户数量不是很多,那么就不需要使用多台cyrus服务器和LDAP服务器,复杂程度就大大降低,比较适合中小型站点使用。
- 相关文章
| ·Web应用程序:下一个开源软件的战场? | 07-15 |
| ·Web网站的设计、管理与维护 | 07-14 |
| ·简单WEB开发规范 | 07-14 |
| ·13个经典网页排版实例(一) | 07-11 |
| ·26个最具个性的现代网页设计(三) | 07-11 |
| ·音频搜索新纪元:告别简单搜索时代 | 07-10 |
| ·推吧,web2.0口碑传播新旗舰 | 07-10 |
| ·国际网页Web设计流程 | 07-09 |
