




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)大容量邮件系统的设计和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大容量邮件系统的设计和实现 学科专业:计算机应用技术 论文题目 摘要 大容量邮件系统的设计和实现 硕士生:金星( 9 9 s 6 2 6 )导师:彭寿全教授 l 自从电子邮件系统诞生以后,电子邮件就成为网络重要应用之一,随着 中国互联网应用的日益普及和逐步深入,其重要性也越加体现出来。传统的 电子邮件存在着种种的局限性,在负载不断增加时日益明显。在此情况下, 大容量邮件系统应运而生,它有扩展性强、可移植性好、速度快和性能稳定 等特点。特别是,系统的伸缩性和扩展性使服务商可以根据自己的具体要求 和实际情况,进行不同容量的系统配置和扩充容量。 大容量邮件系统集成了应用服务器的概念,至少就有三个层次的体系结 构。在实现可扩展性和负载均衡时,系统根据情况采用不同的算法,选择进 程、线程的模式,实现多服务器对请求的分担。此外,大容量邮件系统有 两个重要的组成部分,邮件列表服务器和日志系统。邮件列表服务器实现了 邮件列表的管理和收发,是一个独立的服务器。日志系统对系统信息进行记 录和读取,是了解系统运行情况的窗口一 本文阐述了大容量邮件系统的概念、发展、体系结构、软件模型,描述了应 用服务器的功能和特点,重点讨论了大容量邮件系统中应用服务器层和邮件 列表服务器,日志系统的分析、设计和实现。最后,对大容量系统的作用, 系统实现的不足和发展方向做了一个小结。 关键词:大容量邮件系统f 可扩尼鼯应用服务器f 邮件列表服务器f 日志系统 第1 页,共6 8 页 大容量邮件系统的设计和实现 a b s t r a c t m a j o r :c o m p u t e ra p p l i c a t i o nt e c h n o l o g y s u b j e c t l a r g e - s c a l ee m a i ls y s t e m sd e s i g na n di m p l e m e n t a t i o n m a s t e r :j i n x i n ga d v i s o r :p r o f :p e n gs h o u q u a n f r o mt h eb i r t ho fe m a i ls y s t e m 。e m a i la 口p l i c a t i o nh a sb e c o m et h em o s t i m p o r t a n ta p p l i c a t i o no ft h ei n t e m e t w i t ht h ed e v e l o p i n go fi n t e m e t ,e m a i l s y s t e mb e c o m em o r ea n dm o r ec o u l l n o na n dp o p u l a r t h et r a d i t i o n a le m a i l s y s t e mh a sm a n yf l a w 。i t b e c o m e sm o r eo b v i o u sw h e nw i t ha h e a v yl o a d l a r g e s c a l ee m a i ls y s t e mh a sf e a t u r e ss u c ha sh i g hs c a n l a b i l i t y , g o o dp o r m n l i t n l i 曲 s p e e da n dh i g ha b i l i t y m o s ti m p o r t a n t ,t h eh i g hs c a n l a b i l i t ym a k e si n t e m e tp r o v i d e r sc o n f i g u r e 山e i ro w n s y s t e ma n de n l a r g es c a l e 、v i t hs i t u a t i o n l a r g e - s c a l ee m a i ls y s t e mh a sac o n c e p to fa p p l i c a t i o ns e w e r l a r g e - s c a l ee m a i ls y s t e mh a sa n a r c h i t e c t u r ea tl e a s tt h r e et i e r s i no r d e rt oa c c o m p l i s h s c a n l a b i l i t ya n dl o a db a l a n c e ,s y s t e ma d o p t d i f f e r e n ta l g o r i t h ma n dc h o o s ep r o c e s s ,t h r e a dm o d e la c c o r d i n gd i f f e r e n ts i t u a t i o n ,t h a nr e a l i z e l o a db a l a n c ea m o n gs e v e r a ls e r v e r s a d d i t i o n a l ,t h es y s t e mh a sa n o t h e rt w oi m p o r t a n tp a r t :m a i l l i s ts e r v e ra n dl o gs y s t e m m a i lf i s ts e r v e ra c c o m p l i s ha d m i a i s m a f i o na n dr e c e i v e ,s e n dm a i ll i s t ,i t i sa na l o n es e r v e lt h e l o gs y s t e mr e c o r di n f o r m a t i o na n dp r o v i d er e a di n t e r f a c e ,i ti saw i n d o wt o c m a i ls y s t e m t h i st h e s i st a l ka b o u t l a r g e s c a l e e m a i l s y s t e m sc o n c e p t ,d e v e l o p i n g s i t u a t i o n ,i n f r a s t r u c t u r e a n ds o f t w a r e m o d e l ,d e s c r i b e a p p l i c a t i o n s e r v e r s f u n c t i o na n df e a t u r e ,t h e nd i s c u s sa p p l i c a t i o ns e r v e rl a y e r , m a i ll i s t s e r v e r ,l o g s y s t e m sd e s i g n a n da c c o m p l i s h m e n t a tl a s t ,t a l ko v e ra b o u tt h e i m p o r t a n t , s h o r t c o m i n g sa n dd e v e l o p d i r e c t i o na sas u bt o t a l k e yw o r d s :l a r g e s c a l ee m a i ls y s t e m | a p p l i c a t i o ns e r v e r | s c a n l a b i l i t y | m a i ll i s ts e r v e r | l o g s y s t e m 第2 页,共6 8 页 大容量邮件系统的设计和实现 第一章:概述 1 1 电子邮件服务现状 自从电子邮件系统诞生以后,电子邮件作为网络重要应用之一,受到众 多人士的关注。根据中国互联网络信息中心( c n n i c ) 2 0 0 1 年7 月发布的 最新中国互联网络发展状况统计报告,目前我国上网用户已超过两千六 百万,其中有7 4 9 将电子邮箱视为最常使用的i n t e m e t 服务,平均每人拥 有2 6 个e m a i l 账号,平均每周收到1 2 9 封电子邮件,发出8 2 封电子邮件。 而随着中国互联网应用的日益普及和逐步深入,这些数字仍在不断增长着。 而电子邮件系统作为支撑电子邮件服务的基础和核心,其稳定性、可靠 性、安全性以及性能优劣、功能多少都对用户能否真正拥有稳定的电子邮件 服务起着至关重要的作用。伴随中国互联网的发展和政府、企业信息化的进 程,电子邮件系统的重要性越来越显著。 随着我国i n t e r n e t 的推广和普及,以及人们对电子邮件服务的功能、性 能要求的日益提升,电子邮件的应用也不断在发展着。在技术上,电子邮件 系统在国内的发展经历了从传统电子邮件系统的c t o c ( c o p y t oc h i n a ) ,到 电子邮件服务提供商组织技术力量开发自己的邮件系统,到顺应市场需求, 产生满足不同目标用户需求的商业化电子邮件系统产品的发展过程。早期, 国外一些可免费下载使用的电子邮件系统( 如s e n d m a i l 、q m a i l 等) 曾被国 内用户广泛采用。这些系统可满足一定用户数的基本邮件收发需求,但随着 用户数规模的扩大和对电子邮件功能、性能需求的日益提升,这些免费”舶 来品”的缺陷日益突出,表现为:系统性能随着用户数的增多急剧下降:可 靠性低,收发邮件不稳定甚至丢失邮件;安全性差,易被黑客攻击,商业机 密易泄露:中文处理经常出现问题,代码之间难转换等。这些传统电子邮件 系统的缺陷促使了国内自主开发、自主品牌的电子邮件系统的诞生。 在这种情况下,新一代大容量电子邮件系统( 所谓大容量邮件系统,通 常是指支持5 万用户量以上的系统) 应运而生。它有扩展性强,可移植性好、 速度快和性能稳定等特点。特别的,系统良好的伸缩性和扩展性使服务商完 全可以根据自己在容量、功能与成本上的具体要求和实际情况,自由地进行 不同容量的系统配置和系统扩容。 第3 页,共6 8 页 大容量邮件系统的设计和实现 1 2 电子邮件系统的发展 电子邮件系统并非一开始就这么复杂。它有一个漫长的发展过程。据电 子邮件的发明人雷汤姆林森( r a yt o m l i n s o n ) 回忆,电子邮件的诞生是在 1 9 7 1 年秋季( 确切的时间已经无法考i i e ) ,它最初是作为大型机用户与其他使 用简单消息系统的用户进行联系的一种便捷工具而出现的。 1 2 1 早期大型机电子邮件系统 两个大型机的用户,每一个分别通过不同的终端连接同一台主机,希望 在他们之间共享信息。简单的方法就是建立一个能够直接给其他用户终端发 送文本消息的系统,这有点像原始的聊天对话。如图1 1 所示。 图1 1 :大型机消息系统 该系统的底层要求两个用户都同时登陆到大型机上。随着大型机消息系 统变得更加流行,用户希望能够给其他当前没有登录到主机上的用户发送信 息。这样,一个为各用户存储信息的系统诞生了。如图1 2 所示。 第4 页,共6 8 页 大容量邮件系统的设计和实现 图1 2 :大型机消息存储系统 消息存储系统最主要的好处在于它能够给当时没有登录到主机上的用 户发送消息。当然,这就使得邮件软件变得更加复杂,因为它要求设计一个 能够在其中进行存储和恢复消息的系统。这种系统的一个缺点就是它们只传 输文本消息。没有系统能够把诸如可执行文件之类的二进制数据从一个用户 传递给另一个用户。 1 2 2 多主机邮件系统 随着大型机的成熟,它们的通信系统也逐渐完善。不久之后就已经在两 个主机之间采用复杂的专有协议来传输数据。如图1 3 所示。 第5 页,共6 8 页 大容量邮件系统的设计和实现 图1 3 :多主机邮件传递模型 在多主机环境下,对用户的标准命名约定变得必不可少。由于多个主机 加入了通信系统,每一台计算机都需要用一个唯一的名字来进行识别。要能 够成功的把消息传递到主机上正确的用户,必须要有用户的电子邮件地址和 对应的主机名。从此,就形成了今天电子邮件系统的原型 1 2 3e u d o r a 电子邮件管理系统 在电子邮件发展的头2 0 年,电子邮件在学术殿堂里并不是太引人注目, 在电脑研究者的心目中地位也不高。但随后个人电脑和互联网的发明对电子 邮件的发展起到了极大的促进作用,使它逐渐成为一种主流。 使电子邮件成为主流的第一个程序是e u r o d a ,是由史蒂夫道纳尔在 1 9 8 8 年编写的。由于e u r o d a 是第一个有图形界面的电子邮件管理程序,它 很快就成为各公司和大学校园内主要使用的电子邮件程序。e u r o d a 使用p o p 协议进行邮件的收发,可以离线和在线操作。 不久,随着因特网的兴起,n e t s c a p e 和微软相续推出了它们的浏览器和 相关程序。微软和它开发的o u t l o o k 使e u r o d a 逐渐走向衰落。 第6 页,共6 8 页 大容量邮件系统的设计和实现 1 2 4i n t e r n e t 邮件系统 在过去5 年中,关于电子邮件发生的最大变化是基于因特网的电子邮件 的兴起。人们可以通过任何联网的计算机在邮件网站上维护他们的邮件帐 号,而不是只能在他们家中或公司的联网电脑上使用邮件。这种邮件是由 h o t m a i l 网站推广的。 图1 4 :邮件传输中涉及的代理 i n t e m e t 邮件系统由一组r f c ( r e q u e s tf o rc o m m e n t ) 文档定义。在 i n t e r n e t 上进行传输。它由信件,把信件从一个地方传递到另一个地方的协 议和用户执行各种相关任务的接口组成。一般来说,它由一个m t a ( 邮件 传送代理) 路由邮件,一个m d a ( 邮件投递代理) 投递邮件,一个m u a ( 邮件用户代理) 为用户提供一个界面。 m t a 从各种来源接受邮件,在收到每个邮件时,m t a 就确定这个邮件 要路由到哪里和如何路由,如果必要的话,它重新写地址,然后把邮件交给 m d a 投递。 m d a 负责把该邮件投递到另一个位置,这个位置可以是另一个m d a 、 一个用户的信箱或执行特殊任务的程序。根据这次投递是成功还是产生永久 或临时的故障,m d a 决定这次事务分别是完成、产生一个错误返回给发信 人、还是在将来重新发送。 邮件用户代理( m u a ) 负责为用户提供管理邮件的界面。这个管理包 括查看信件、管理邮件夹、写和发送新邮件、以及回复信件和把现有的信件 发送给其他的用户。 通过使用i n t e m e t 电子邮件系统,电子邮件由局域网走向了互联网,从 第7 页,共6 8 页 大容量邮件系统的设计和实现 而成为五大洲四大洋各种种族的人相互联系的桥梁。 在过去5 年中,关于电子邮件发生的最大变化是w e b 邮件系统的兴起。 人们可以通过任何联网的计算机在邮件网站上维护他们的邮件帐号,而不是 只能在他们家中或公司的联网电脑上使用邮件。这种邮件是由h o t m a i l 网站 推广的。 1 2 5 大容量邮件系统 大容量邮件系统是近年根据电子邮件发展趋势而发展起来的一种新兴 的电子邮件系统。它克服了普通电子邮件的若干局限性,在性能上,功能上 都有大跨度的扩充。下面我们介绍大容量邮件系统的特点 所谓大容量邮件系统,是指支持5 万用户量以上的系统。通常的大容量 邮件系统支持超过百万的用户,它具备以下的特点。 1 采用分布式系统结构 电子邮件系统一般分为两种结构,一种是集中式,另一种是分布式。集 中式的特点是邮件系统的所有模块都运行于同一台服务器上,不能够将不同 的功能模块放在不同的机器上进行负载分担。这种结构所能够支持的用户量 受到硬件本身功能的限制,只能单纯地通过提升服务器的硬件性能来增加所 支持的用户量,在达到一定的限额之后,所支持的用户量与硬件的系统升级 不能成比例地增长,因此这类系统通常适用于支持用户量在1 5 万以下的系 统。 分布式邮件系统的特点是可以将软件的不同模块,如收发模块、用户认 证模块、邮件存储模块、用户接入模块等,分别运行在不同的机器上,共同 完成整个电子邮件系统的功能。如果需要的话,每一种模块还可以再拆分在 不同的服务器上运行实现负载分担,因此系统可以根据需要和用户的使用模 式进行定制。这种结构所支持的用户量有比较大的灵活性。最为著名的电子 邮件站点h o t m a i l 就是采用多台机器分布式并行操作的方式,目前其用户已 经达到近3 0 0 0 万,而网道大容量邮件系统也是采取分布式的系统结构。 2 具有邮件列表服务 邮件列表是电子邮件系统所能够提供的一种重要的功能,是i n t e r n e t 上的 一种重要工具。邮件列表可以允许任意的用户进行订阅和退定,对用户的订 阅和退定请求的处理都是自动进行的,不需要管理员的人为干预。每个邮件 第8 页,共6 8 页 大容量邮件系统的设计和实现 列表有一个所有者,它可以给所有订户发送信息邮件。电子邮件系统是否支 持灵活的邮件列表功能是评判邮件程序的一个重要准则。邮件列表用于各种 群体之间的信息交流和信息发布。邮件列表的用途很广包括企业应用中的新 产品发布、与客户保持联系、产品的技术支持、信息反馈;用于w e b 站点 进行主页更新、信息反馈;用于组织和俱乐部吸引新用户的加人、提供成员 之间的交流工具;用于同学和亲友间保持快速、方便的联系;用于电子杂志, 您可以主办自己的电子杂志,通过邮件列表的方式,向数十万用户同时发送; 用于技术讨论,邮购业务,股票信息,新闻的发布等等。邮件列表具有传播范围 广的特点,因而被广泛的用于各大网站的商业营销中。现在,一个网站是否具 有吸引大用户群的能力,能否能提供完善的邮件列表服务,进行功能强大的 邮件列表管理是一个有力的指标。 3 支持虚拟主机和虚拟域 虚拟主机和虚拟域功能是大容量电子邮件系统的另一个重要增值服务 特性。拥有大容量电子邮件系统的i s p ( i n t e r n e ts e r v i c ep r o v i d e r 因特网服 务提供商) 可以为小型企业提供电子邮件虚拟主机和虚拟域服务,在同一套 服务器上提供多个域名,并且为每一个域指定一名管理员,这样小型企业的 用户就不必为自己专门建立电子邮件服务器,也就省掉了管理和维护费用。 i s p 提供这种托管服务就可以获得增值收入。 w e bm a i l 对于大型i s p ,特别是提供免费电子邮件的i s p 来说是非常重 要的特性。首先一些用户没有自己固定的计算机,习惯于使用w e b 界面实 现邮件收发和邮箱管理。一些提供门户站点的i s p ,免费w e bm a i l 作为其 服务的重要组成部分将大大提高门户站点的访问量。大容量邮件系统通常提 供自己的一套w e b 接口。 5 系统可管理性 大容量邮件系统通常提供自己的一套管理系统,以便管理用户权限、进 行邮件过滤、转发限制、任务管理、服务器配置、存贮器配置、设置察看日 志、统计容量、用户、流量。为了结合命令行和图形界面的管理优势,方便 托管邮件用户管理,很多系统采用w e b 方式进行管理。 为了提高对系统运行情况的控制,大多数大容量邮件系统提供日志系统 和统计功能进行管理。f t 志系统记录各种数据,数据进行统计后显示出来, 作为系统管理员管理系统的参考。 第9 页,共6 8 页 大容量邮件系统的设计和实现 6 支持各种公共协议 大容量邮件系统一般都能支持多种协议,比如说s m t p 、e s m t p 、p o p 3 、 i m a p 、l d a p 、m i m e 、d n s 、s s l 等电子邮件领域的标准。只有兼容性和 互通性好,用户在使用电子邮件的时候才能不需要考虑其信件在n t e r n e t 上 的通行问题。 7 。平台的支持 邮件系统所支持的平台数也是评估一种邮件系统忧劣的重要特性之一。 现在除了w i n d o w sn t 平台以外,仅u n i x 的平台的种类就非常之多,如s u n s o l a r i s 、h p u x 、i b m a i x 、s g ii r i x 、d i g i t a lu n i x 等,每一种平台的应用 都非常广泛,大容量邮件系统一般能支持多种平台。 1 3 邮件系统的发展趋势 随着数字时代媒体的使用越来越广泛,技术的发展越来越迅猛,传统的文 字电子邮件也有了新的分支,比如说可视邮件和语音邮件- 这是统一讯息系统 ( u m s :u n i t e dm e s s a g es y s t e m ) 微露的曙光 统一讯息系统是把我们日常生活中所能使用到的所有的信息载体如语 音信息( 如电话、广播) 、视频信息( 如电视、可视电话会议的视频部分) 、 电子信息( 如电子邮件) 、文字信息( 如传真) 等等数码化,并使用同一种 形式来存放。发送方可以使用电子邮件、传真、语音邮件、手机、可视邮件、 电话中的任何一种工具发出信息,这些信息经过转化和传输后将集中存放在 这个系统的中央服务器中,而接受方则可以在自己方便的任何时刻、任何地 点,使用电话、电脑、传真、呼机中的任何一种工具连接到系统的服务器, 并获取所需信息。 毋庸置疑,这是一项令我们的生活又一次改变,沟通更加便捷的技术, 然而这项技术在两年前并不被看好,原因主要是各项软硬条件没有成熟。令 人欣喜的是,近一年来全球讯息市场开始腾飞。首先是语音网络转向口。 传统的语音和数据通常由独立的网络来传输,今天有更多的应用为了更简便 有效的通讯而将语音数据结合到一条线路上传输。语音实际上已经是数字化 的数据,而在口网络上传输语音标准也早已确立,这都使得统一讯息成为 可能。其次是大量服务提供商进入u m s 市场。随着无线用户的剧增,u m s 的前景被人所广泛看好。大量服务提供商进入u m s 市场,全方位的提供产 品和功能的服务,包括新的功能性产品,已有功能性产品的延伸以及产品平 台,互联网与u m s 的连接。第三是用于语音信息、传真信息及非语音消息 第l o 页,共6 8 页 大容量邮件系统的设计和实现 ( 如e m a i l ) 系统进行交换的协议,如v p i m ,f p i m 等互联网标准被广泛 接受。v p i m 不仅支持s m i m e ,而且也支持新的扩充的s m t p ( e s m t p ) 协议,能够实现在e m a i l 地址与电话号码之间进行转换,且适用于所有的 t c p 口网络,包括i n t e r n e t 和i n t r a n e t 。另外,u m s 的服务商们开始将封 闭的方案转向开放的互联网标准,大大促进了产品的适用性。而大量流动的 专业人士和在家办公的企业家人数的快速增长也从需求上促进了统一讯息 系统的迅速发展。 电子邮件由于拥有巨大的用户数和成熟的技术,从而成为统一讯息中的 一支主力军。用电子邮件作为载体,传送视频和音频信息的技术和规范逐渐 成熟,并且已经拥有具体的产品和用户群。利用电子邮件不仅可以和数据网 络中的用户进行交流,而且也可以和移动网络的用户进行交流。由此可见, 邮件系统向着统一讯息系统发展的前景是明朗的。 1 4 课题来源以及我的任务 大容量邮件系统是在国内对高质量邮件服务的强烈需求下应运而生的, 大容量邮件系统的设计和实现是网道技术有限公司的一项开发课题。在性能 上,邮件系统要实现百万以上的用户,支持每秒2 0 0 次的点击率。在功能上, 除了基于w e b 的邮件系统的普通功能外,还具有托管服务,邮件列表服务 等增值功能。 在大容量邮件系统中,有这样三个部分。一是应用服务器层,这是实现 大容量邮件系统可扩展性的核心,它简化的模拟了应用服务器( 如m m w e b s p h e r e3 5 等) 可扩展性部分,以实现邮件系统的对称分布式。它实现 线程池对线程的管理,并且向上登记服务器,向下对功能服务器传递请求。 二是日志系统,它是邮件系统管理员和用户了解系统运行情况的窗口。日志 系统抽象出邮件系统各种需要统计的信息的共性,以读日志和写日志服务器 对其进行记录和分析。三是邮件列表服务器。它从w e b 端和m t a ( 通过 m t a 代理) 获取邮件列表请求,经过b s s ( 业务逻辑服务器) 和m d s ( 邮 件投递服务器) 处理后,返回m t a 进行发送,内有大量的规则处理。因为 邮件列表服务器针对邮件列表实现了w e bm a i l 和管理两大功能,可以说,它 是针对邮件列表的一个邮件收发和邮件管理系统。 在大容量邮件系统的设计和实现中,我的任务是参与对邮件系统基本体 系结构和功能模块的分析和实现;分析和实现日志模块,统计和分析系统的 信息;开发邮件列表服务器,把基本体系结构移植在邮件列表服务中,建立 起一个独立的邮件列表服务器。 第1 1 页,共6 8 页 大容量邮件系统的设计和实现 因此,在这篇论文中,我主要介绍邮件系统中实现可扩展性的应用服 务器,日志系统和邮件列表服务器的分析、设计与实现。这三部分概括了大 容量邮件系统的大部分重要概念和实现细节,所以,对本论文的阅读者,是 了解大容量邮件系统的一个窗口。 第2 章网道大容量邮件系统概述 目前,国内电子邮件系统应用产品的市场已逐渐形成“三足鼎立”的格 局,有三类较成熟的电子邮件系统产品及解决方案: ( 1 ) 满足各行业企业、i c p i s p a s p 邮件服务需求的商业化电子邮件 系统。 它是根据用户实际应用状况和投入成本灵活设计具有高度可扩展性的 个性化邮件解决方案,并以功能选件包的方式为用户提供可无缝扩展的升级 能力。如i p m o t o r 公司的q u a r k m a i l 系统。 ( 2 ) 为电信运营商提供增值邮件服务的大容量电子邮件系统。 电子邮件服务已成为i n t e r n e t 时代电信运营商为用户提供的标准服务之 一。它是以较高的硬件配置实现百万级、千万级用户数的大容量电子邮件系 统解决方案。如亚信公司的a i m c 系统。 ( 3 ) 满足邮件服务的群件产品 微软、n o v e l l 以及l o t u s 等厂商在自己的群件产品中集成了邮件服务功 能,以满足企业用户的内部交流需要。 我所参与的邮件系统属于电信级邮件系统,也就是上面三种解决方案的 第二种,是专门为电信级信息服务商量身定制的新一代百万级大容量电子邮 件系统。下面,我们介绍它的体系结构、软件结构和一些重要的概念。 2 1 体系结构 系统构造图如下 第1 2 页,共6 8 页 大容量邮件系统的设计和实现 盟b + l 口一1 l 口一i in r n i i i ? l l + a i 柚c a i c n s e r u e rp p p l i c a l j c n s e r v e r a p p l i c d i c n s e r v e r i i 、hi f # 刊 f 一一f i c l i o f 图2 1 系统构造 下面对系统构造的各个模块详细加以描述 1 s l b 负载平衡系统 i i 、 j 二:一 :q 甜e 一爿一 系统负载平衡s l b ( s y s t e ml o a db a l a n c e r ) ,将客户端的请求分布到各 台h t t p 服务器,保证系统中各台服务器资源均能够平均、高效的使用,从 而可以让系统不断扩充。当现有s e r v e r 不足以负担所有的请求进程时,s l b 允许添加s e r v e r 来分担任务,从而平衡各台s e r v e r 的工作量,以期系统可 以得到最优的利用与最理想的运行状态。 系统的负载均衡将是长期的问题,它决定了该系统的可扩展性。 2 h t t p s e r v e r w e b 服务器 w e b 服务器,提供基于w e b 的e m a i l 访问以及提供基于w e b 的系统管 理和监控界面。 3 a p p l i c a t i o ns e r v e r - 应用服务器 第1 3 页,共6 8 页 大容量邮件系统的设计和实现 基于扩展性的考虑,a p p l i c a t i o ns e r v e r 能够分布在一台或多台服务器 上。a p p l i c a t i o ns e r v e r 使用线程池对线程的管理,有效提高了系统性能、系 统资源的再利用和对数据库、存储设备的高效访问。同时,建立在a p p l i c a t i o n s e r v e r 上的每一层服务程序,都可以按照实际的负载将工作分担到下一层中 的多个服务器上去。 4 f u n c t i o ns e r v e r 一功能服务器 代表标准的e m a i l 处理系统,支持s m t p ,p o p 3 和i m a p ,也代表其 他服务器,如a d m i n 服务器等。同样采用了可扩展性设计,同时结合数据库 的使用,完成具体的功能。 5 d a t a b a s e 一数据库 负责存储系统的管理信息和各用户的个人数据。系统的管理信息包括系 统配置信息、域及域中组的配置信息;用户的个人信息包括如用户名、用户 密码、用户权限等。 6 s t o r a g e 一存储器 用于存放用户邮件的具有大容量高可靠性的存储系统。 了解了系统体系结构图和图中各个组件的功能,接下来,从一个具体的 应用人手,介绍系统体系结构是如何实现系统的重要特性可扩展性和系统 具体功能的。用户启动客户机的浏览器,在浏览器中键入连接到大容量邮件 应用的网站上的u r l ,系统进入初始页面,然后,用户键人用户名和密码。 以上是一个身份验证请求。现在,我们就看看身份验证请求是如何在这个可 扩展分布式大容量邮件系统中一步步得到处理的。 首先,身份验证请求到达s l b ,s l b 实时检测各台h t t p 服务器的负载 情况,根据负载隋况和权值加以计算,决定将请求分配给哪一台h t t p 服务器。 这样,系统的负载由多台h t t p 服务器分担,而且,当某一台服务器负担较重 时,其余的服务器可以帮助分担。更重要的是,当若干台h t t p 服务器都不足 以支持系统的负载时,可以在s l b 之下增加新的服务器。 验证请求到达h t t p 服务器,其中的j a v a 小服务程序s e r v l e t 将请求定位 到应用服务器,应用服务器可以是多个,h t t p 服务器以循环的方式将请求分 配到应用服务器,每一个应用服务器下又有多个具体功能服务器,请求经应 用服务器可以分配到多个具体功能服务器中的一台中进行具体处理。我将在 设计这一章中详细介绍这种可扩展性是怎样实现的。比如上面的验证请求被 第1 4 页,共6 8 页 大容量邮件系统的设计和实现 分配给a d m i n 服务器( 图2 1 中的一个f u n c t i o n 服务器) 。 作为可扩展性的一个重要部分,从应用服务器向下的扩展分为功能扩展 和性能扩展。功能扩展是指将功能独立为服务器,如管理功能独立为a d r r f i n 服务器,w e b m a i l 功能独立为w e b m a i l 服务器。这样,不仅支持可扩展性, 对程序的模块化和灵活配置也有好处。性能扩展是指对于每一类的功能服务 器,可以由多个机器组成,而且可以在线增加服务器,由此,可以看出系统 的确在几个层次上实现了可扩展性。 a d m i n 服务器将对验证请求做具体的处理,包括对数据库的访问。如果 是发信或收信的动作,还将使用到s t o r a g e 进行信件的存储和访问。 处理后,结果经a d m i n ,应用服务器,h t t p 服务器,返回到客户的浏览器 端,浏览器显示进入页面,一次请求的处理完成了。 2 2 软件结构 网道大容量邮件系统由j s p f r o n d e n d ,a p p l i c a t i o ns e r v e r ,a d m i n i s t r a t i o n s e r v e r ,m l i s ts e r v e r ,w e bm a i ls e r v e r ,m t a ,p o p 3 ,l o gs e r v e r , a u t h e n t i c a t i o n , l o gm e ,i n f o n - n a t i o nc e n t e r ,n f s 等模块组成,下面介绍各个模块的功能。 第1 5 页,共6 8 页 大容量邮件系统的设计和实现 |j s p f r o n t e n dl l u m a i l t xa p p l i c a t i o ns e r v e r j 。j 、 ,7j 、 a d m i n i s t r a t i o nm l i s ts e r v e rw e bm a i lu m t a ( p r o v i d e r p o p 3 l o g s e r v e rs e r v e r fis m t p f o ru s e r )s e r v e r ffff 席n f s 脚,一a u t h e r 麦t i c 挚a t0 n j 点匡乌 i l i n f o r m a t i o n c e n t e rj 图2 2 :软件结构 1 j s pf r o n d e n d ( j a v as e r v e r p a g e sf r o n d e n d ) j s pf r o n d e n d 是w e b m a i l 邮件系统用户及管理员操作界面。如:读邮件, 写邮件,用户邮箱管理,配置系统参数等。j s p 模块作为系统的前端,将用 户请求传递给a d m i n i s t r a t i o ns e r v e r 和b a s i cw e bm a i ls e r v e r 。并显示请求处理 后返回的页面。 2 u m a i l - t x a p p l i c a t i o ns e r v e r 一应用服务器 u m a i l t xa p p l i c a t i o ns e r v e r 基于扩展性的考虑,能够分布在多台服务 器上。a p p l i c a t i o ns e r v e r 使用线程池对线程的管理,有效提高了系统性能、 系统资源的再利用和对数据库、存储设备的高效访问。同时,建立在 a p p l i c a t i o ns e r v e r 上的每一层服务程序,都可以按照实际的负载将工作分 担到下一层中的多个服务器上去。 3 w e bm a i ls e r v e r ( w e b 邮件服务器) 处理w e bm a i l 邮件系统用户的收发邮件及用户邮箱管理请求,取信时 可直接从s t o r a g e 中取出,而发信转交由m t a 完成,收信由p o p 完成。它 和m t a ,p o p ,s t o r a g e ,a u t h e n t i c a t i o n ,i n f o r m a t i o nc e n t e r 进行通信。 4 a d m i n i s t r a t i o ns e r v e r ( 管理服务器) 第1 6 页,共6 8 页 大容量邮件系统的设计和实现 处理管理员的管理操作请求,并将有关信息存储在数据库中。如增加用 户,删除用户,配置系统参数等。它和i n f o r m a t i o nc e n t e r a u t h e n t i c a t i o n 进 行通信。 5 ,m l i s ts e r v e r ( 邮件列表服务器) 这是一个重要的独立服务器,集成了管理和收发邮件列表,应用规则的 操作,针对多种类型的用户和管理者,功能强大。 6 m t a ( m a i l t r a n s p o ga g e n t ) 实现邮件的分检和发送的功能,负责邮件系统内部的邮件收发及与 i n t e r n e t 上其他邮件服务器通信。它和b a s i cw e bm a i ls e r v e r 以及i n f o r m a t i o n c e n t e r , s t o r a g e ,a u t h e n t i c a t i o n 进行通信。 7 p o p ( p o s to f f i c ep r o t o c o l 邮局协议) 提供标准的p o p 收邮件服务。 8 l o gs e r v e r ( 日志服务器) 日志服务器是实现了日志的记录和读取。 9 a u t h e n t i c a t i o n ( 认证模块) 完成对邮件系统用户及管理员的验证。 1 0 n f s ( 网络文件系统) 实现信件的记录,使用m a i l d i r 协议。 1 1 i n f o r m a t i o nc e n t e r ( 信息中心) 存放用户的个人信息,配置信息,邮件索引以及系统配置信息。由数据 库或文件组成。 1 2 l o g f i l e ( 日志文件) 记录数据的e t 志文件。 第1 7 页,共6 8 页 大容量邮件系统的设计和实现 2 3 一些重要概念 下面介绍网道大容量邮件系统的一些重要概念。 2 3 1 系统托管功能 m a i lh o s t i n g ( 邮件托管) 服务是指买方只需租金便可得到后缀是公司 自己域名的电子邮件系统,以及邮件系统的维护与管理;无须购买与电子邮 件有关的硬件与软件。 邮件托管服务使i c p 或企业无需优秀的i t 人员、太多的前期投入以及 对邮件系统复杂的维护或升级工作,就能享受到功能强大、易于扩展并且经 济、可靠的电子邮件服务。 系统采用虚拟主机和虚拟域的功能实现托管服务,在用户信息表中,我 们用( 用户名和d o m a i n ) 作为关键值来标记用户。至于用户所属的域,对 w e b 方式登录的用户,由他输人的u r l 确定;对p o p 方式登录的用户,由 他所访问的虚拟服务器p 地址确定( 每一域名映射一个虚拟服务器的p 地 址,内部采用某一机制将虚拟p 地址映射成实际应访问的服务器口地址) 。 网道大容量系统可实现真正的虚拟域名三种实现方式 ( 1 ) 用户名 公司名n e t d a o t o m ,如:t o m c o m p a n y n e t d a o c o r n ( 2 ) 用户名 公司名c o m ,如:t o m c o m p a n y c o r n ( 3 ) 不同的虚拟域使用相同的用户名,如:t o m c o m p a n y l g o m t o m c o m p a n y 2 c o m ,t o m c o m p a n y 3 c o r n 系统管理员可以对整个系统进行监控与管理。同时购买了邮件托管服务 的i c p 和企业也会有相应的管理自己域以下用户的权限与功能。 2 3 2 邮件存储问题 对于大容量e m a i l 系统来说,关键的技术之一就是如何处理邮件存储问 第1 8 页,共6 8 页 大容量邮件系统的设计和实现 题,采用何种方式提高存储效率,将决定e m a i l 系统的成功与否。 由于用户数量较大,如何保存用户的邮件就是一个非常重要的问题。传 统u n i x 使用一个单一目录来保存所有用户的邮件,在用户数量较多时就极 大地降低了文件系统的性能。只有使用多级目录,每个目录下的文件数量有 限,才能降低打开文件时的系统消耗,或者不再使用简单的文件来保存邮件, 而采用某一种封装形式。完全采取数据库形式来保存邮件,由于用户邮件操 作多为文件操作,且大小变化较大,因此会造成性能和存储空间上较大的浪 费。 由于用户数量巨大,并且也要求能被多台服务器同时访问,必须采用存 储空问较大的服务器或服务器集群来保存,通过光纤通道或者网络文件系统 n f s 来共享存储空间,使得每个用户的邮件存储路径对于每个服务器都是一 致的。光纤通道是一种非常昂贵的解决方法,更为常用的是使用n f s ,可以 使用专用的n f s 服务器,如n e t a p p ,或者使用带有r a i d 能力的p cu n i x 服务器。 当使用n f s 共享存储空间的时候,必须注意一个非常重要的问题:由 于n f s 缺乏文件锁定机制,在使用传统的用户邮件存储格式m a i l b o x 时,由 于所有的邮件都保存在同一个文件中,因此进行邮件操作就必须加锁,以保 证没有访问冲突,这就使得它不适合n f s 存储方式。为了解决这个问题, q m a i l 提出了m a i l d i r 存储方式,每个邮件作为单独的一个文件保存在用户个 人的邮件目录下,就避免了加锁。因此,一般都采用m a i l d i r 方式来保存用 户的邮件。m a i l d i r 是q m a i l 为了解决用户邮件存储问题而提出的新的邮件 存储方式。每个邮件以单独的一个文件保存在用户个人的邮件目录下,不再 像过去每个用户的邮件都保存在v a r m a i l 下面的文件中。多个应用程序可以 同时访问同一个邮件目录,避免了加锁问题的困扰,特别适合于缺乏文件锁 定机制的n f s 存储方式。 基于以上的理由,网道大容量系统采用n f s 网络文件系统作为用户邮 件存储空间,使用m a i l d i r 作为邮件存储格式,提供多级目录以支持大量用 户。 2 3 3 邮件收发协议:s m t p , p o p , i m a p 1 s m t p s m t p 提供交换电子邮件消息的一种方法。s m t p 协议是简单的a s c h 行命令膻答协议。每一个命令都是一个简单的命令名,后面跟着一些参数, 第1 9 页,共6 8 页 大容量部件系统的设计和实现
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加强无机非金属材料领域的国际合作
- 加强健康教育提升民众健身意识和能力
- 大模型支持下工科类教学资源整合与共享模式
- 中职医学基础试题及答案
- 2025年中国手机外置镜头行业市场全景分析及前景机遇研判报告
- 原材料供应链的创新与优化
- 矿产资源综合利用项目风险评估报告
- 330kV升压储能站建设项目社会稳定风险评估报告
- 新能源储能项目节能评估报告
- 城市排水管网改造工程经济效益和社会效益分析报告
- 中秋节知识课件
- 110kV变电站及110kV输电线路运维投标技术方案
- 人教版(新教材)高中生物选择性必修1课件3:4 3 免疫失调
- 《SLT 582-2025水工金属结构制造安装质量检验检测规程》知识培训
- “燕园元培杯”2023-2024学年全国中学生地球科学奥林匹克竞赛决赛试题详解
- 中国血脂管理指南(基层版+2024年)解读
- 分子诊断技术在感染性疾病中的应用-深度研究
- 《智能AI分析深度解读报告》课件
- 气道异物护理教学
- 2024年版机电产品国际招标标准招标文件
- 企业合规经营规范手册
评论
0/150
提交评论