- 13
- 0
- 约3.12千字
- 约 7页
- 2017-11-14 发布于福建
- 举报
异步手机短信与邮件发送消息中心平台构建
异步手机短信与邮件发送消息中心平台构建 【文章摘要】
针对RPC中间件技术面对规模和复杂度相对较高的分布式系统时,在同步通信、客户和服务对象的生命周期紧密耦合、点对点通信上所显示出的局限性,提出了一种异步手机短信和邮件发送消息中心平台(MCP)解决方案。发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。
【关键词】
MCP;SMS;ActiveMQ
0 引言
随着网络的发展,系统的分布更加的复杂,系统和系统之前的异步通信是一个急需解决的问题;现在几乎每一个人都有一部电话,每天都接触电脑接触网络,为了抛弃以前的纸上、当面的办公模式,系统和人手中的电话、系统和每个人的各种通信工具的异步通信成为问题的关键。为满足在分布式环境下企业应用对性能、安全性、稳定性等方面的要求,可以构建基于消息的中间件的数据通信系统。它能够异步传递消息将彼此独立的计算机连接起来组成松耦合的系统,并且可以有效地屏蔽细节对外提供统一的服务。这样不但可以节约交通工具的成本,还可以提高办公的效率。
1 异步手机短信和邮件发送消息中心平台构建
消息中心平台是用于软件系统内部和外部消息传递的中间件服务,提供消息的发送,接收,重复消息的压缩,重要消息的升级,短信消息(SMS),邮件消息(Email),离线消息,消息群发,消息转发,平台独立运行。
1.1 消息平台需求分析
收发短信:通过短信网关和短信猫完成短消息的收发和消息格式的转换,便于同第三方系统的交互。
收发邮件:通过收发邮件的功能,提供客户以邮件的方式与第三方系统进行交互。
JMS消息交互:第三方系统通过消息中心API来实现短信和邮件的发送和接收。
消息验证:对于客户端发来的信息,首先进行验证,如果符合条件则进行发送。不符合条件持久化后丢弃。确保消息的完整性,屏蔽垃圾信息。
自动从连:由于客户端、服务器或者网络原因造成客户端到服务器的连接中断,待可正常连接时,客户端可自动从新连接到服务器,增强程序的健壮性。
自动从发:当短信或者邮件消息发送失败后,时隔一定时长后可自动从新发送,确保在可控制范围内的消息不丢失行。
清空消息队列:对于发送队列中的消息,由于客户的需要可对其清空不发送。
日志处理:用户可以查询消息发送和接收日志,手动清除消息日志;程序可自动定期备份消息日志。
程序监控:用户可以监控部署MCP的服务器的CPU、内存的占用情况,保证消息服务器健康运行;监控消息的收发成功和失败的数量,得到MCP消息的丢失率。
1.2 消息平台总体设计
本系统为纯后台程序,第三方系统通过客户端连接到服务器端进行发送消息。采用支持JMS1.1规范的ActiveMQ进行消息的接收和发送。ActiveMQ设置两个通道,一个用来接收消息的接收通道,一个用来发送消息的发送通道。第三方系统通过集成客户端发送消息到ActiveMQ。MCP自身有一个消费者,此消费者监听接收通道,监听到消息,先判断类型然后通过IPX/短信网关接口、邮件接口把消息发送出去,当IPX/短信网关接口或者邮件接口接收到消息则通过一个消息创建者把消息发送到消息发送通道上,集成客户端的第三方系统监听消息发送通道就可以接收到MCP的消息了。
1.3 系统功能模块划分
消息管理:负责消息的发送,接收,压缩,升级,转换,持久化,日志记录。
性能监控:负责消息中心的监控,包括:CPU、内存利用率,消息队列的状态,还可以控制连接的启动和停止,消息的测试,消息通道的建立和删除功能。
日志管理:记录消息日志,错误消息日志,并且能核查消息错误原因。
客户端管理:负责连接消息中心,注册客户端,注销客户端,断开连接,发送消息,接收消息,心跳监听。
1.4 消息平台接口设计
1.4.1用户接口
(1)集成系统:导入消息中心平台的JAR包,实现提供给客户端的接口。
(2)维护人员:通过JDK自带的监控功能,即可进行消息中心的监控和维护。
(3)客户端:是第三方系统与消息中心服务器沟通的桥梁,只有把消息中心客户端集成到第三方系统中,第三方系统才可以与消息中心服务器发送和接收消息。
1.4.2外部接口
短信网关接口:IPX短信网关使用的是WebSerivce接口。
短信Modem接口:金笛短信Modem串行接口。
邮件接口:Gmail的邮件接口,发送邮件协议为SMTP,接收邮件的协议为IMAP协议。
1.5 消息平台运行设计
1.5.1运行模块组合
系统的每个模块都依赖于消息中心模块,每个模块独立的,没有依赖关系。
1.5.2运行控
原创力文档

文档评论(0)