多节点系统下的邮件代理方法、设备和系统的制作方法

文档序号:7702964阅读:200来源:国知局
专利名称:多节点系统下的邮件代理方法、设备和系统的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种多节点系统下的邮件代理方法、设备和 系统。
背景技术
在现有技术中,通常可以通过集中部署,将具有同类业务操作需求的用户集中部 署到同一个公共平台系统,由公共平台实现对外提供统一的服务,使得该公共平台融业务 处理及系统管理于一体。
如果出现用户人数增多、系统负载压力过大或者有新功能需求时,系统通过新添 机器设备、购买软件产品等方式或通过新增节点的方式为新增加的业务用户提供服务,既 不影响已有用户的服务品质同时也能解决过多用户造成的负载过大的问题。
其中,新增节点与已有节点完全独立、互不影响,各个节点既具备业务处理的功能 同时也具备系统管理的能力,可以通过建立公共的通道使各个节点产生的性能数据、监控 数据能集中汇集至固定的位置方便系统统一上报。
电子邮件技术的发展以及手机终端的普及,使得人们的生活方式得到了极大地改 变,利用手机终端随时随地进行电子邮件的处理已经变得异常重要。为使移动用户能通过 手机终端接收电子邮件,现有技术中通过部署“邮件代理网关”的模式向移动用户提供业务 服务。
目前为了解决海量用户的并发访问以及对富数据操作的时效性的要求,对应前述 两种解决方案,系统通常采用以下两种通用技术方案解决相应的问题
方案一、尽可能地提高单节点的的处理能力及性能,通过购买新的软硬件设备并 进行对系统中存在的瓶颈进行针对性地小范围的修改优化,采用虚拟专用网络(Virtual Private Network,VPN)连接的方式将各个小的系统组合成一个超大规模的平台整合系统。
方案二、通过部署多个独立的分节点容纳新开的用户,新节点为新开用户服务,已 有系统服务于先前已经开通服务的用户,因此,新用户的增加并未降低系统对先前已经开 通服务的用户提供的服务品质。各个独立节点从结构到功能都完全一致,唯一不同之处在 于其部署的位置不同。
进一步,通过提供公共通道的模式使各个节点产生的性能数据、监控数据能集中 汇集至固定的位置方便系统统一上报。
在实现本发明的过程中,申请人发现现有技术至少存在以下问题
首先,方案一的VPN方式的连接会成为系统新的性能瓶颈,即使采用硬件VPN连接 性能也不能完全解决而且还增加了系统的运营成本。
其次,对于方案二所部署的新的分节点,由于各个分节点完全独立而且功能完全 一致,都具备完整的管理、配置功能,所以,管理员只能通过依次远程连接的方式连接各个 分节点进行管理维护的工作,增加了管理成本,而各个分节点中的重复存在的备份配置也 造成了资源的冗余浪费。发明内容
本发明提供一种多节点系统下的邮件代理方法、设备和系统,将系统划分为可独 立运行的管理节点和业务节点,并通过管理节点实现多节点系统的管理。
为达到上述目的,本发明一方面提供了一种多节点系统下的邮件代理方法,应用 于包括至少一个业务节点和一个管理节点的多节点系统中,其中,所述管理节点中保存各 业务节点的位置信息,所述方法包括
所述管理节点解析接收到的邮件通知消息,确定所述邮件通知消息所对应的业务 节占.I— /、、、
在保存的所述业务节点的位置信息中查询所述业务节点的位置信息;
向所述位置信息所对应的业务节点转发所述邮件通知消息,通知所述业务节点处 理所述邮件通知消息所对应的邮件业务。
另一方面,本发明还提供了一种管理节点,应用于包括至少一个业务节点和一个 管理节点的多节点系统中,包括
存储模块,用于保存所述多节点系统中的各业务节点的位置信息;
解析模块,用于解析接收到的邮件通知消息,确定所述邮件通知消息所对应的业 务节点;
查询模块,用于在所述存储模块保存的各业务节点的位置信息中查询所述解析模 块确定的业务节点的位置信息;
通信模块,用于接收邮件通知消息,并向所述查询模块所查询到的位置信息所对 应的业务节点转发所述邮件通知消息,使所述业务节点处理所述邮件通知消息所对应的邮 件业务。
另一方面,本发明还提供了一种业务节点,应用于包括至少一个业务节点和一个 管理节点的多节点系统中,包括
接收模块,用于接收管理节点发送的邮件通知消息;
识别模块,用于识别所述接收模块所接收的邮件通知消息中是否包含合法的识别 标识;
处理模块,用于当所述识别模块识别所述邮件通知消息包含合法的识别标识时, 处理所述邮件通知消息所对应的邮件业务。
另一方面,本发明还提供了一种多节点系统,包括至少一个业务节点和一个管理 节点,其中,所述管理节点中保存各业务节点的位置信息,
所述管理节点,用于解析接收到的邮件通知消息,确定所述邮件通知消息所对应 的业务节点,并根据保存的所述业务节点的位置信息,向所述邮件通知消息的指定业务节 点或当前资源占用指数最小的业务节点发送所述邮件通知消息;
所述业务节点,用于根据所述管理节点发送的邮件通知消息处理相应的邮件业务。
与现有技术相比,本发明具有以下优点
通过将系统划分为管理节点、业务节点和备份节点,各个节点可独立运行,没有局 域网或虚拟局域网的物理依赖,所以当在新的地点部署系统时,节点可依赖周边的网络环6境,通过配置而独立为用户提供服务,减少了网络的修改和配置工作量,同时,网络上的无 依赖性也使得通过局域网传播的病毒得到遏制,无法扩散到整个多节点系统。


图1为本发明实施例所提出的一种多节点系统下的邮件代理方法的流程示意图2为本发明实施例所提出的一种多节点系统下的邮件代理方法中的管理节点 对各个业务节点进行管理维护操作的流程示意图3为本发明实施例所提出的一种管理节点进行管理操作的流程示意图4为本发明实施例所提出的多节点系统的管理方法中的性能监控流程的示意 图5为本发明实施例所提出的多节点系统的管理方法中的性能监控流程的示意 图6为本发明实施例所提出的多节点系统的管理方法中的邮件通知转发流程的 示意图7为本发明实施例所提出的一种进行用户分发的网络结构示意图8为本发明实施例所提出的一种用户分发流程的示意图9为本发明实施例所提出的一种多节点系统的结构示意图10为本发明实施例所提出的一种管理节点的结构示意图11为本发明实施例所提出的一种业务节点的结构示意图12为本发明实施例所提出的一种具体场景下的多节点系统的结构示意图。
具体实施方式
如背景技术所述,现有的物理上部署在不同位置或地点的应用系统,每一个位置 或地点的系统只是在物理地点上不同,通过网络设置手段,使每个地点的服务器设备处在 相同的局域网或虚拟局域网,而且,当某个节点的系统由于意外原因出现故障时,会扩展到 整个局域网或虚拟局域网,影响到整个多节点系统。
本发明实施例提出了一种多节点系统下的邮件代理方法,通过对系统整体功能的 规划,按照不同的职能对系统划分为管理节点、业务节点和备份节点,各个节点可独立运 行,没有局域网或虚拟局域网的物理依赖。
需要说明的是,物理上部署在不同位置或地点的系统,每一个位置或地点的都是 一个具备完整功能的业务系统(也即是节点),各节点可按职能进行组织、部署,各节点在 逻辑或物理上,可以不在相同的局域网或虚拟局域网中。
上述的管理节点、业务节点和备份节点职能独立,依赖性少,各节点可独立工作。 当管理节点出故障的时候,业务节点不需管理节点的干预可以正常运行,当把邮件通知消 息通过网络配置映射到正常的业务节点时,业务节点可以正常服务于已有用户,而当业务 节点出现故障时,管理节点的用户订购管理、业务通知的接收等均可正常工作,业务节点一 旦恢复正常,新订购用户和业务通知可由业务节点继续处理。备份节点则为系统安全稳定 运行提供了额外保证手段。
基于上述技术思路,本发明实施例提供了一种多节点系统下的邮件代理方法,应用于包括至少一个业务节点和一个管理节点的多节点系统中,其中,管理节点中保存各业 务节点的位置信息。
如图1所示,为本发明实施例提供的一种多节点系统下的邮件代理方法的流程示 意图,该方法具体包括以下步骤
步骤S101、管理节点解析接收到的邮件通知消息,确定该邮件通知消息所对应的 业务节点。
在具体的应用场景中,本步骤的实现过程具体为
管理节点解析接收到的邮件通知消息,确定邮件通知消息所对应的用户信息;
管理节点根据用户信息与业务节点的对应关系,确定邮件通知消息所对应的业务 节点。
其中,管理节点所接收到的邮件通知消息,具体为
电子邮件服务器在用户的电子邮箱接收到新的电子邮件信息后,向管理节点发送 的超文本传输协议(Hypertext Transfer Protocol, HTTP)格式的消息包。
步骤S102、管理节点在保存的各业务节点位置信息中查询邮件通知消息所对应的 业务节点的位置信息。
步骤S103、管理节点向该位置信息所对应的业务节点转发邮件通知消息,通知该 业务节点处理邮件通知消息所对应的邮件业务。
在具体的应用场景中,本步骤具体包括
管理节点根据业务节点的位置信息,建立与业务节点之间的网络连接;
管理节点通过网络连接向业务节点发送该邮件通知消息。
进一步的,为了实现网络安全方面的保证,本步骤中还可以包括以下的鉴权策 略
管理节点在待转发的邮件通知消息中添加识别标识;
管理节点向业务节点发送包含识别标识的邮件通知消息,使业务节点在识别邮件 通知消息中携带的识别标识成功的情况下,根据邮件通知消息处理对应的邮件业务。
在具体的应用场景中,当网络系统中还包括备份节点时,方法还包括以下的备份 流程
各业务节点按照预设的备份周期将自身的数据信息备份到网络系统中的备份节 点中,其中,备份节点中根据不同的用户标识对个用户所对应的数据信息进行区分;
当一个业务节点中的一个或多个用户的数据信息需要进行数据恢复时,业务节点 向备份节点获取相应用户的数据信息,进行数据恢复。
为了更好的管理系统中各业务节点的业务负载情况,在具体的应用场景中,本方 法还可以包括以下的性能监控流程
管理节点按照预设的检测周期获取各业务节点的性能数据信息,并根据性能数据 信息对各业务节点进行性能监控。
根据系统设置的不同,性能监控流程包括以下两种方式
方式一、管理节点按照预设的检测周期主动获取各业务节点的性能数据信息。
这是主动的性能监控,可以在管理节点侧进行控制,便于管理。
方式二、管理节点接收各业务节点按照预设的上报周期广播发送的性能数据信息。
这是被动的性能监控,可以简化网络设置,只需要简单的业务节点配置策略,就可 以实现性能监控机制的建立。
在此种情况下,业务节点并不需要相应的反馈,只要向管理接点活预设的组播地 址发送了性能数据信息即可,减少了信息交互的资源消耗。
基于上述的性能监控结果,管理节点对邮件通知消息进行调度调控,相应的处理 流程具体包括以下步骤
首先,管理节点判断邮件通知消息是否指定业务节点,即判断发起该邮件通知消 息的用户是否是订购用户。
如果管理节点判断该邮件通知消息没有指定业务节点,则管理节点根据多节点系 统中各业务节点的当前系统资源占用情况,向当前系统资源占用最少的业务节点发送该邮 件通知消息,使该业务节点根据该邮件通知消息处理对应的邮件业务。
其中,多节点系统中各业务节点的当前系统资源占用情况具体通过各业务节点的 当前资源占用指数来表示,具体通过以下方式进行计算
管理节点获取多节点系统中各业务节点所对应的各种设备的CPU占用率、MEM占 用率和网络流量占用率;
管理节点根据多节点系统中各业务节点所对应的各种设备的CPU占用率、MEM占 用率和网络流量占用率,以及各种设备及资源参数所对应的权重值,计算业务节点的当前 资源占用指数。
如果管理节点判断邮件通知消息指定了业务节点,则管理节点向指定的业务节点 发送该业务请求,使指定的业务节点根据该邮件通知消息处理对应的邮件业务。
与现有技术相比,本发明实施例具有以下优点
通过将系统划分为管理节点、业务节点和备份节点,各个节点可独立运行,没有局 域网或虚拟局域网的物理依赖,所以当在新的地点部署系统时,节点可依赖周边的网络环 境,通过配置而独立为用户提供服务,减少了网络的修改和配置工作量,同时,网络上的无 依赖性也使得通过局域网传播的病毒得到遏制,无法扩散到整个多节点系统。
下面,进一步结合具体的应用场景,对本发明实施例所提出的技术方案进行说明。
多节点部署方式所建立的系统由于将配置管理系统进行了突出,系统的维护管理 功能进行了集中规划及部署,通过设立特定的“管理节点”专门对系统进行管理配置、维护 等方面的工作,管理节点通过与部署于各个业务节点的代理模块进行交互通行此而实现对 整个系统的管理。代理模块可以简化到以插件的形式“安插”到各个业务节点,所以管理员 可以根据实际需要按需部署配置各个业务节点,同时后期随着业务的开展,通过开发新的 “插件”以实现对新功能的管理配置工作。
如图2所示,为本发明实施例提出的一种多节点系统下的邮件代理方法中的管理 节点对各个业务节点进行管理维护操作的流程示意图,该流程具体包括以下步骤
步骤S201、管理节点查找定位各个业务节点的节点位置。
由于存在多个业务业务节点,各个业务节点的网络物理位置各异,管理员对系统 进行配置之前需要定位到待操作的业务节点具体物理位置(例如待连接的网络地址)。
通常各个业务节点的物理位置存放在管理节点数据库系统中,为了提高系统的访问性能,这些位置信息被放置在系统高速缓存中。
步骤S202、管理节点连接待操作业务节点。
通过步骤S201得到业务节点的连接IP地址并与之建立远程网络连接,以后的各 种配置管理维护等操作都是通过此连接完成。
步骤S203、管理节点通过管理员发送管理配置指令。
与业务节点建立连接以后,管理节点就可以向业务节点发送各种管理、配置等指 令最终实现对各个业务节点的管理工作。
为了提高系统内通信的安全性,各种管理、配置维护类指令通过预设的指令码予 以识别。
步骤S204、业务节点接收管理配置指令并进行解析。
业务节点接收到来自管理节点的各种指令以后通过解析指令码以及各种操作参 数获取相应的管理配置操作内容,并可选的进行管理配置命令的合法性验证。
步骤S205、业务节点根据解析结果实现具体的管理配置操作。
例如修改配置文件,插件将根据参数值修改相应的配置文件;
例如启停进程,插件将启动或停止收到参数指定的系统进程(执行命令 ki1Iall_9process—name)0
为了便于对系统的维护,管理节点的管理服务模块以及各个业务节点的代理模块 交互过程采用可靠交互方式,即代理操作完成以后需要向请求方发送确认消息;同时双方 在操作过程中都通过记录行为日志的方式进行记录,以便检查。
如果是由管理员通过管理节点进行管理操作,相应的示意图如图3所示。
另一方面,如图4所示,为本发明实施例所提出的多节点系统的管理方法中的性 能监控流程的示意图。
通过部署在各个业务节点的性能监控代理单元定时收集各个业务节点的性能数 据并上报给管理节点,最终存入相应的数据库或存入文件中,并由相应的性能分析模块/ 程序所处理。
这样的触发可以是管理节点定期向业务节点发送性能数据请求信息,并根据返回 的性能数据进行性能监控。
也可以是由业务节点定期上报的方式实现。
为了简化系统的处理,业务节点将采用广播/组播的技术上报本节点的各种性能 数据,由于各个业务节点只想将性能数据组播到指定的组播地址即可,所以无需等待接收 方的应答。由于采用广播/组播技术,此而降低了系统间的耦合性、减少了系统的性能开 销,同时也便于系统的部署工作。
另一方面,如图5所示,为本发明实施例所提出的多节点系统的管理方法中的性 能监控流程的示意图,该流程包括以下步骤
步骤S501、各个业务节点在进行各种业务处理的过程中定时将业务数据备份到指 定的备份节点上。
步骤S502、备份节点按照各用户所对应的信息进行备份信息的存储。
由于系统根据各个用户的号码(针对邮件代理业务系统是根据用户的手机号码) 在存储系统中(例如硬盘上)对用户进行了分块划分,各个用户自己的数据将被存放到特10定的存储位置。
步骤S503、业务节点判断用户信息是否需要恢复。
具体的恢复原因可能是数据丢失,或者数据复位需求等情况。
当业务节点判断用户信息需要进行用户数据恢复时,执行步骤S504 ;
当业务节点判断用户信息不需要进行用户数据恢复时,继续执行步骤S501,进行 数据备份。
步骤S504、业务节点向备份节点请求相应的用户数据。
步骤S505、业务节点根据备份节点返回的用户数据进行数据恢复。
备份系统将把存放在各个不同存储位置的用户数据读出并复制到相应业务节点 的相应目录中。
实际上,管理节点除了实现管理配置功能以外还充当着中央调度的角色。下面,以 电子邮件的接收流程为例,对本发明实施例提出的多节点系统的管理方法进行说明。
作为完整的系统,多节点部署方式的邮件代理网关系统主要由管理节点负责与外 界的交互(如与139邮箱、与中国移动网管系统等)。由于邮件代理网关采用“邮件通知” 的形式收取用户邮件(即当用户邮箱有新邮件到达时139邮箱会向邮件代理网关系统发送 一个HTTP格式的消息包),而且邮件通知统一被发送到管理节点并由其转发至相应业务节 点完成最终的邮件接收操作。
如图6所示,为本发明实施例所提出的多节点系统的管理方法中的邮件通知转发 流程的示意图,具体包括以下步骤
步骤S601、管理节点接收来自139邮箱的邮件通知。
由于邮件通知被统一发送到管理节点,随着用户数目的增加,系统接收处理的性 能会有所下降,为此需要采用多机、多进程及多线程的方式处理,而且要求具备高扩展性以 便能通过新增机器的形式平滑提高系统的处理能力。
步骤S602、管理节点解析通知内容并通过缓存系统定位待处理的节点位置。
由于用户被安置于某一固定业务节点中,则此用户的邮件通知只能被转发至相应 的业务节点方能被正确处理,为此,管理节点接收下用户邮件通知以后通过解析内容获得 用户身份信息(手机号)并查找缓存内容定位到用户的节点位置并将邮件通知请求转发到 相应的业务节点中。
步骤S603、业务节点完成最终的邮件收取。
业务节点中相应的程序模块接收下来做管理节点转发来的邮件通知请求,连接 139邮箱完成用户的邮件收取工作。
除了上述对于接收电子邮件的处理,本发明技术方案对于其他业务也可以通过管 理节点进行调度。
在一个大型的应用系统当中,如果系统支撑的用户数量巨大,用户如何进行管理 就成为了一个问题。通常为了有效、方便的管理系统中的用户,采用把用户按一定规则分散 到不同的用户管理域中进行管理。
如果系统中存在多个用户管理域,分别对应不同的业务节点,当用户动态增加时, 如何在不同的用户管理域中分发用户,成为改善系统可维护性、改善系统性能的一个重要 问题。通常的方法是按照用户所处地域或用户拥有的服务类型进行分发,但这些方式均不能兼顾整个应用系统的动态指标,如不同区域的设备能力,不同地域、不同服务类型用户数 量的差别,系统的扩容、设备升级等。也有采用人工分发或用户数据人工迁移的,这样的网 络维护成本过于高昂,并且对人力投入和人员操作精度的依赖较大,存在安全隐患。
为了能更加有效的管理不同用户管理域的用户,加强各用户域的数据共享,提高 用户管理效率,提供高效的服务,本发明实施例所提出的技术方案中的管理节点进行用户 管理域的分发,从而解决现有用户管理技术上的缺陷。
如图7所示,为本发明实施例所提出的一种进行用户分发的网络结构示意图。
当用户发出订购请求后,管理节点会根据各用户管理域(业务节点)中的系统实 际消耗的资源大小动态的将用户分配到系统消耗最小的用户管理域中。
下面,结合图8所示的用户分发流程的示意图,对本发明实施例技术方案中的用 户分发流程进行说明,具体包括以下步骤
(一)预处理阶段
在本阶段中,管理节点需要计算系统中各用户管理域所对应的业务节点的当前系 统资源消耗量,并根据计算结果生成相应的用户分发策略。为了实现上述的处理流程,管理 节点中需要建立相应的用户分发策略中心,进行相应用户分发策略的生成。
步骤S801、用户分发策略中心定时查询各用户管理域的系统监控数据。
其中,在具体的应用场景中,系统监控数据包括每个业务节点中所包含的每台设 备的CPU占用率、MEM占用率和网络流量占用率。
步骤S802、用户分发策略中心根据系统监控数据进行资源占用指数的计算。
用户分发策略中心将每个节点所有业务设备的CPU占用率、MEM占用率、网络流量 占用率(NETFL0W)等数据按不同业务设备所占权重不同进行加权平均计算,计算出的值作 为各业务节点进行系统消耗的一个比较依据。
下面,结合具体的实施场景,对计算过程说明如下
(1)管理节点确定每个用户管理域中不同设备的权重。
例如,确定业务处理设备A的权重为0. 8,管理系统设备B的权重为0. 1,经分系统 设备C的权重为0.1。
(2)管理节点计算各项资源的占用率。
其中,计算某个用户管理域Y(即业务节点)CPU资源占用率的公式为Y.cpu =(Al. cpuX0. 8+A2. cpuX0. 8+. · · +An. cpuX0. 8+B1. cpuX0. 1+B2. cpuX0. 1+. · · +Bn. cpuXO. 1+C1. cpu XO. 1+C2. cpu XO. 1+. · · +Cn. cpu XO. 1)/ 设备总数
计算某个用户管理域Y(即业务节点)MEM资源占用率的公式为Y.mem = (Al. memXO. 8+A2. memXO. 8+. . . +An. memXO. 8+B1. memXO. 1+B2. memXO. 1+. . . +Bn. memXO. 1+Cl. memXO. 1+C2. memXO. 1+. . . +Cn. memXO. 1)/设备总数
计算某个用户管理域Y(即业务节点)网络占用率的公式为Y.netfloW = (Al. netflowXO. 8+A2. netflowXO. 8+. . . +An. netflowXO. 8+B1. netflowXO. 1+B2. netflowXO. 1+. . . +Bn. netflowXO. 1+C1. netflowXO. 1+C2. netflowXO. 1+. . . +Cn. netflowXO. 1)/设备总数
其中,Al. . . An为业务处理设备,Bi. . . Bn为管理系统设备,Cl. . . Cn为经分系统设备。
需要指出的是,上述的各项参数均是为了方便说明而选择的一种优选示例,在具 体的应用场景中,也可以选择其他能够表征系统资源占用情况的指数,这样的变化并不影 响本发明的保护范围。
(3)管理节点确定每种性能指标的权重。
例如,确定CPU占用率的权重为0. 4,MEM占用率的权重为0. 4,网络占用率的权重 为 0. 2。
(4)管理节点计算整个系统的资源占用指数。
Y= (Y. cpuXO. 4+Y. memXO. 4+Y. netflowXO. 2)/3
计算出的Y值和相应的用户分发策略存储在管理节点中的数据中心中,以备查 询。
步骤S803、管理节点接收用户发送的业务请求。
步骤S804、管理设备识别业务请求所对应的用户是否是订购用户。
如果是订购用户,即该业务请求存在指定的用户管理域(业务节点),则执行步骤 S805 ;
如果是非订购用户,即该业务请求不存在指定的用户管理域(业务节点),则执行 步骤S806。
步骤S805、管理设备直接通过用户分发模块将该业务请求发送给指定的业务节点ο
步骤S806、管理设备将该业务请求转发给用户分发模块,用户分发模块查询用户 分发策略中心的数据和用户分发策略。
即查询各用户管理域(业务节点)中的系统消耗的资源情况,即上述计算过程所 得到的Y值。
步骤S807、管理设备通过用户分发模块将用户分发到系统资源消耗最小的业务节点ο
通过这样的处理可以实现各业务节点动态负载均衡。
需要指出的是,上述的管理节点中的各模块的名称只是为了便于说明而选取的一 种称谓,在实际的处理过程中,上述的不同模块的功能可能由物理上相同的设备来实现,上 述的一个模块也可能由多个不同的物理设备来充当,这样的变化并不影响本发明的保护范围。
这样的处理优化了用户分配和定位策略,根据系统实际的资源消耗动态的将用户 分配到系统资源消耗最小的用户管理域,从而实现各用户管理域的用户均衡和业务均衡, 保证各用户管理域对应的业务域能更好的响应用户的服务,提高用户服务质量。
为了实现上述的技术方案,本发明实施例还提供了一种多节点系统,包括至少一 个业务节点和一个管理节点,其中,管理节点中保存各业务节点的位置信息。
如图9所示,为本发明实施例所提出的一种多节点系统的结构示意图,包括
管理节点91,用于解析接收到的邮件通知消息,确定邮件通知消息所对应的业务 节点92,并根据保存的业务节点的位置信息,向邮件通知消息的指定业务节点或当前资源 占用指数最小的业务节点发送邮件通知消息。
业务节点92,用于根据管理节点91发送的邮件通知消息处理相应的邮件业务。13
在具体的应用场景中,多节点系统还包括
备份节点93,用于对各业务节点92按照预设的备份周期发送的数据信息进行备 份,并根据不同的用户标识对各用户所对应的数据信息进行区分,以及在一个业务节点92 中的一个或多个用户的数据信息需要进行数据恢复时,为业务节点92提供相应用户的数 据信息,进行数据恢复。
下面,具体对上述多节点系统中的各个设备进行说明。
如图10所示,为本发明实施例所提出的一种管理节点91的结构示意图,包括
存储模块911,用于保存多节点系统中的各业务节点的位置信息;
解析模块912,用于解析接收到的邮件通知消息,确定该邮件通知消息所对应的业 务节点92 ;
查询模块913,用于在存储模块911所保存的业务节点的位置信息中查询解析模 块912确定的业务节点92的位置信息;
通信模块914,用于接收邮件通知消息,并向查询模块913所查询到的位置信息所 对应的业务节点转发邮件通知消息,使业务节点92处理所述邮件通知消息所对应的邮件 业务。
在具体的应用场景中,通信模块914还用于在邮件通知消息中添加识别标识,以 使业务节点92根据所述识别标识识别邮件通知消息的合法性。
另一方面,为了实现性能监控功能,管理节点91还包括
监控模块915,用于按照预设的检测周期获取各业务节点的性能数据信息,并根据 性能数据信息对各业务节点进行性能监控,其中,性能数据信息至少包括各业务节点所对 应的各种设备的CPU占用率、MEM占用率和网络流量占用率。
计算模块916,用于根据监控模块915所获取的各业务节点的性能数据信息,以及 各种设备及资源参数所对应的权重值,计算各业务节点所对应的当前资源占用指数。
此种情况下,存储模块911还用于存储计算模块916所计算的各业务节点所对应 的当前资源占用指数。
解析模块912,还用于在通信模块914接收到邮件通知消息时,判断该邮件通知消 息是否指定了业务节点。
通信模块914,还用于在解析模块912判断该邮件通知消息指定业务节点时,向该 邮件通知消息的指定业务节点发送业务请求,或在解析模块912判断该邮件通知消息没有 指定业务节点时,向存储模块911所存储的当前资源占用指数最小的业务节点发送邮件通 知消息。
如图11所示,为本发明实施例所提出的一种业务节点92的结构示意图,包括
接收模块921,用于接收管理节点发送的邮件通知消息;
识别模块922,用于识别接收模块921所接收的邮件通知消息中是否包含合法的 识别标识;
处理模块923,用于当识别模块922识别邮件通知消息包含合法的识别标识时,处 理邮件通知消息所对应的邮件业务。
为了实现性能监控,业务节点92还包括
反馈模块924,用于按照预设的上报周期向管理模块或预设的组播地址广播发送业务节点的性能数据信息。
另一方面,当网络系统中还包括用于备份各业务节点的数据信息的备份节点93 时,业务节点92还包括
备份模块925,用于按照预设的备份周期将业务节点92的数据信息备份到网络系 统中的备份节点93中,其中,备份节点93中根据不同的用户标识对各用户所对应的数据信 息进行区分;
备份模块925,还用于当一个业务节点92中的一个或多个用户的数据信息需要进 行数据恢复时,向备份节点93获取相应用户的数据信息,进行数据恢复。
在具体的应用场景中,基于上述的技术思路,如图12所示,本发明实施例提出了 一种多节点系统。该系统从结构上分为“管理节点121”、“业务节点122”以及“备份节点 123”三种逻辑结构。
逻辑上系统由这三种结构组成,在实际部署上各个逻辑节点可以根据实际情况进 行整合,例如备份节点123与管理节点121部署在同一位置。总体上系统由备份节点123 的存储系统1231、管理节点121的管理服务模块1211、性能监控模块1212、订购系统1213、 分发处理模块1214、存储系统1215、经分系统1216、业务节点122的业务处理模块1221、管 理代理模块1222、存储系统1223以及性能监控代理模块12 组成。
其中,部署于各个业务节点122的业务处理模块1221负责处理系统核心的邮件代 理收发、附件转换等操作;
业务节点122的管理代理模块1222则接收来着管理节点121的管理服务模块 1211发来的各种管理配置数据及指令完成对本业务节点的维护管理工作;
业务节点122的存储系统1223用于存放本业务节点的业务类数据(例如,用户的 收发邮件、用户过滤规则等);
业务节点122的性能监控代理模块12M定时收集并向管理节点121的性能监控 模块1212上报本业务节点的各种性能、网管类经营数据;
管理节点121的分发服务模块1214用于分发各种需要转发至各个业务节点122 上的处理请求并最终由各个业务节点122完成处理(例如,邮件代理网关需要处理的邮件 通知的转发);
各个业务节点122通过将各自节点上的业务数据备份到独立的“备份节点123”上 的存储系统1231此而实现对系统数据备份的功能,确保了系统整体上的安全可靠性。
与现有技术相比,本发明实施例具有以下优点
通过将系统划分为管理节点、业务节点和备份节点,各个节点可独立运行,没有局 域网或虚拟局域网的物理依赖,所以当在新的地点部署系统时,节点可依赖周边的网络环 境,通过配置而独立为用户提供服务,减少了网络的修改和配置工作量,同时,网络上的无 依赖性也使得通过局域网传播的病毒得到遏制,无法扩散到整个多节点系统。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通 过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发 明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储 介质(可以是⑶-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可 以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或 流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进 行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装 置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本 领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1.一种多节点系统下的邮件代理方法,其特征在于,应用于包括至少一个业务节点和 一个管理节点的多节点系统中,其中,所述管理节点中保存各业务节点的位置信息,所述方 法包括所述管理节点解析接收到的邮件通知消息,确定所述邮件通知消息所对应的业务节点。 在保存的所述业务节点的位置信息中查询所述业务节点的位置信息; 向所述位置信息所对应的业务节点转发所述邮件通知消息,通知所述业务节点处理所 述邮件通知消息所对应的邮件业务。
2.如权利要求1所述的方法,其特征在于,所述管理节点解析接收到的邮件通知消息, 确定所述邮件通知消息所对应的业务节点,具体为所述管理节点解析接收到的邮件通知消息,确定所述邮件通知消息所对应的用户信息;所述管理节点根据用户信息与业务节点的对应关系,确定所述邮件通知消息所对应的 业务节点。其中,所述管理节点所接收到的邮件通知消息,具体为电子邮件服务器在用户的电子邮箱接收到新的电子邮件信息后,向所述管理节点发送 的超文本传输协议HTTP格式的消息包。
3.如权利要求1所述的方法,其特征在于,所述管理节点向所述位置信息所对应的业 务节点转发所述邮件通知消息,具体包括所述管理节点根据所述业务节点的位置信息,建立与所述业务节点之间的网络连接; 所述管理节点通过所述网络连接向所述业务节点发送所述邮件通知消息。
4.如权利要求3所述的方法,其特征在于,所述管理节点向所述位置信息所对应的业 务节点转发所述邮件通知消息,还包括所述管理节点在所述邮件通知消息中添加识别标识;所述管理节点向所述业务节点发送包含识别标识的邮件通知消息,使所述业务节点在 识别所述识别标识成功的情况下,根据所述邮件通知消息处理对应的邮件业务。
5.如权利要求1所述的方法,其特征在于,当所述网络系统中还包括用于备份各业务 节点的数据信息的备份节点时,所述方法还包括各所述业务节点按照预设的备份周期将自身的数据信息备份到所述网络系统中的备 份节点中,其中,所述备份节点中根据不同的用户标识对个用户所对应的数据信息进行区 分;当一个业务节点中的一个或多个用户的数据信息需要进行数据恢复时,所述业务节点 向所述备份节点获取相应用户的数据信息,进行数据恢复。
6.如权利要求1所述的方法,其特征在于,还包括所述管理节点按照预设的检测周期主动获取各所述业务节点的性能数据信息,或接收 各所述业务节点按照预设的上报周期广播发送的性能数据信息;所述管理节点根据所述性能数据信息对各所述业务节点进行性能监控。
7.如权利要求6所述的方法,其特征在于,所述管理节点获取到各业务节点的性能数 据信息之后,如果所述管理节点接收到新的邮件通知消息,所述方法还包括所述管理节点判断所述邮件通知消息是否指定业务节点;如果所述邮件通知消息没有指定业务节点,所述管理节点根据获取到各业务节点的性 能数据信息识别各业务节点当前资源占用情况,并向当前资源占用最少的业务节点发送所 述邮件通知消息,使所述当前资源占用最少的业务节点根据所述邮件通知消息处理对应的 邮件业务;如果所述邮件通知消息指定了业务节点,所述管理节点向指定的业务节点发送所述邮 件通知消息,使所述指定的业务节点根据所述邮件通知消息处理对应的邮件业务。
8.如权利要求7所述的方法,其特征在于,所述管理节点根据获取到各业务节点的性 能数据信息识别各业务节点当前资源占用情况,具体为根据各业务节点所对应的当前资源 占用指数进行识别;其中,所述当前资源占用指数,具体通过以下方式确定所述管理节点获取所述多节点系统中各业务节点所对应的各种设备的中央处理器CPU 占用率、存储器MEM占用率和网络流量占用率;所述管理节点根据所述多节点系统中各业务节点所对应的各种设备的CPU占用率、 MEM占用率和网络流量占用率,以及所述各种设备及资源参数所对应的权重值,计算所述业 务节点的当前资源占用指数。
9.一种管理节点,其特征在于,应用于包括至少一个业务节点和一个管理节点的多节 点系统中,包括存储模块,用于保存所述多节点系统中的各业务节点的位置信息; 解析模块,用于解析接收到的邮件通知消息,确定所述邮件通知消息所对应的业务节点查询模块,用于在所述存储模块保存的各业务节点的位置信息中查询所述解析模块确 定的业务节点的位置信息;通信模块,用于接收邮件通知消息,并向所述查询模块所查询到的位置信息所对应的 业务节点转发所述邮件通知消息,使所述业务节点处理所述邮件通知消息所对应的邮件业务。
10.如权利要求9所述的管理节点,其特征在于,所述通信模块,还用于在所述邮件通 知消息中添加识别标识,以使所述业务节点根据所述识别标识识别所述邮件通知消息的合 法性。
11.如权利要求9所述的管理节点,其特征在于,还包括监控模块,用于按照预设的检测周期获取各业务节点的性能数据信息,并根据所述性 能数据信息对各所述业务节点进行性能监控,其中,所述性能数据信息至少包括各业务节 点所对应的各种设备的CPU占用率、MEM占用率和网络流量占用率;计算模块,用于根据所述监控模块所获取的各业务节点的性能数据信息,以及所述各 种设备及资源参数所对应的权重值,计算各业务节点所对应的当前资源占用指数;所述存储模块,用于存储所述计算模块所计算的各业务节点所对应的当前资源占用指数;所述解析模块,还用于在所述通信模块接收到邮件通知消息时,判断所述邮件通知消 息是否指定业务节点;所述通信模块,还用于在所述解析模块判断所述邮件通知消息指定业务节点时,向所 述邮件通知消息的指定业务节点发送所述业务请求,或在所述解析模块判断所述邮件通知 消息没有指定业务节点时,向所述存储模块所存储的当前资源占用指数最小的业务节点发 送所述邮件通知消息。
12.—种业务节点,其特征在于,应用于包括至少一个业务节点和一个管理节点的多节 点系统中,包括接收模块,用于接收管理节点发送的邮件通知消息;识别模块,用于识别所述接收模块所接收的邮件通知消息中是否包含合法的识别标识;处理模块,用于当所述识别模块识别所述邮件通知消息包含合法的识别标识时,处理 所述邮件通知消息所对应的邮件业务。
13.如权利要求12所述的业务节点,其特征在于,还包括反馈模块,用于按照预设的上报周期向管理模块或预设的组播地址广播发送所述业务 节点的性能数据信息。
14.如权利要求12所述的业务节点,其特征在于,当所述网络系统中还包括用于备份 各业务节点的数据信息的备份节点时,所述业务节点还包括备份模块,用于按照预设的备份周期将所述业务节点的数据信息备份到所述网络系统 中的备份节点中,其中,所述备份节点中根据不同的用户标识对各用户所对应的数据信息 进行区分;所述备份模块,还用于当一个业务节点中的一个或多个用户的数据信息需要进行数据 恢复时,向所述备份节点获取相应用户的数据信息,进行数据恢复。
15.一种多节点系统,其特征在于,包括至少一个业务节点和一个管理节点,其中,所述 管理节点中保存各业务节点的位置信息,所述管理节点,用于解析接收到的邮件通知消息,确定所述邮件通知消息所对应的业 务节点,并根据保存的所述业务节点的位置信息,向所述邮件通知消息的指定业务节点或 当前资源占用指数最小的业务节点发送所述邮件通知消息;所述业务节点,用于根据所述管理节点发送的邮件通知消息处理相应的邮件业务。
16.如权利要求15所述的多节点系统,其特征在于,还包括备份节点,用于对各所述业务节点按照预设的备份周期发送的数据信息进行备份,并 根据不同的用户标识对各用户所对应的数据信息进行区分,以及在一个业务节点中的一个 或多个用户的数据信息需要进行数据恢复时,为所述业务节点提供相应用户的数据信息, 进行数据恢复。
全文摘要
本发明公开了一种多节点系统下的邮件代理方法、设备和系统,通过对系统整体功能的规划,按照不同的职能对系统划分为管理节点、业务节点、备份节点,各个节点可独立运行,根据网络环境状态为用户提供服务,没有局域网或虚拟局域网的物理依赖,并遏制通过局域网传播的病毒,有效地提高了系统的管理效率和网络安全性,节约了资源。
文档编号H04W4/12GK102036188SQ20091009325
公开日2011年4月27日 申请日期2009年9月24日 优先权日2009年9月24日
发明者于蓉蓉, 刘越, 王磊, 范晓晖, 赵辉 申请人:中国移动通信集团公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1