通用的S运营管理系统的设计与开发
【摘要】手机短信增值业务极大地方便了用户,也为移动运营商和服务提供商带来了可观的经济收入。一套统一高效的运营管理系统已经成为手机短信增值业务能否成功发展的关键因素。通过分析了sp运营管理系统的功能性需求,提出了系统设计方案,对关键模块系统进行了开发工作。
【关键词】SP运营管理系统;通用
1.引言
进入21世纪,手机的普及率已经相当的高,短信已成为大众的一种习惯性的信息交流方式,以短信为载体开展新的信息业务和以短信交流取代部分原有交流方式的时机已经成熟。为此需要开发一套通用的SP管理运营系统,该系统可以同时支撑多个运营商,同时支撑多个SP(服务提供商)端口,每个SP端口可以同时开张多个业务,根据业务可以发展多个CP(内容提供商),业务逻辑处理可以由系统完成,也可以由CP自己完成。因此该系统必须具有跨平台、跨数据库的安装部署能力,故选择java开发语言,运行库选择jdk1.4是为了保持向下兼容。选择hibernet影射可以解决跨数据库部署问题。structs 2是一种比较稳定、成熟、方便的架构,可以提高开发进度和系统稳定性。选用磁盘文件作临时数据存储是考虑数据库发生异常(表空间满、数据库服务异常等)时,系统服务不会停止,具体方案是:核心数据流(上/下行短/彩信、用户定制/退定信息通过磁盘文件在各功能模块间流动,用户信息、业务配置信息每个模块从数据库或配置文件中读入数据结构(List、Map等),每5分钟更新一次。
2.系统功能分析
本系统通过对手机短信增值业务的研究,将其进行抽象、归纳和总结,结合运营商前台营业所需的一些管理功能,进行需求分析,勾画出本系统的功能模块的划分,内容可以细分如下:
1)用户点播:处理手机用户点播业务的需求。
2)用户定制:处理手机用户定制业务的需求。
3)用户退定:处理手机用户退定定制业务的需求。
4)用户查询:处理手机用户查询自己所定制的业务信息的需求。
5)SP管理:处理管理用户管理SP相关信息的需求。
6)工号管理:处理管理员用户管理工号相关信息的需求。
7)黑名单管理:处理管理员用户管理黑名单信息的需求。
8)过滤词管理:处理管理员用户过滤词信息的需求。
9)查询统计:处理管理员用户查询统计上下行消息、用户数量、资费等信息的需求。
10)系统监控:处理管理员用户查看系统运行状态的需求。
11)结算管理:处理管理员用户管理结算信息的需求。
12)业务管理:处理管理员用户管理业务信息的需求。
13)CP管理:处理管理员用户管理CP信息的需求。
14)点播管理:处理管理员用户管理点播业务处理模块的需求。
15)定制管理:处理管理员用户管理定制业务处理模块的需求。
16)用户管理:处理管理员用户管理手机用户的需求。
17)资源管理:处理管理员用户管理短/彩资源的需求。
18)群发管理:处理管理员用户群发的需求。
19)系统驳测:定时自动监测系统是否正常,如异常则以短信通知相关维护人员。
20)服务检测:定时自动监测系统各服务是否正常。
21)重发管理:定时检测下行消息是否到达用户手机,如未到达,按既定规则重发。
3.SP系统结构设计
根据功能需求的的划分SP运营管理系统体系结构图如图1所示。
各模块功能描述如下:
短信接收:从运营商短信网关接收用户上行短信和回条。
彩信接收:从运营商彩信中心接收用户上行彩信和回条。
MISC同步:从运营商接收用户定制、退定信息以及为用户反向退定。
点播处理:根据用户点播的业务代码、端口号等信息处理用户的点播需求。
定制处理:根据用户定制的业务代码、端口号等信息处理用户定制需求。
定制群发:为定制用户群发短/彩信,分为自动群发和手工群发。
短信发送:向运营商短信网关提交下行短信。
彩信发送:向运营商彩信中心提交下行彩信。
管理平台:为系统管理员及运营商管理员提供SP管理、工号管理、黑名单管理、过滤词管理、查询统计、系统监控、结算管理、业务管理、CP管理、业务配置(点播管理、定制管理)、用户管理、资源管理、群发管理。同时,提供给CP的http接口服务也与之部署在一起。
系统驳测:跟踪各模块关键数据流是否正常,如异常则向系统维护人员发短信。
服务检测:根据个服务启动的关键字检查各服务是否在运行,如未运行则启动该服务。
重发管理:根据回条对已发送短/彩信进行定时检查,如2小时没有回条则安排重发。
4.系统模块设计
这里以用户点播模块为例如图2所示,进行处理流程说明:
1)从短信网关收到用户上行点播短信后,将相关信息写入两个磁盘文件,一是上行日志缓存磁盘文件,一是上行缓存文件,一条短信一个文件,分别在不同的目录下面,文件命名规则:手机号+msgid。
2)上行日志写数据库模块定时扫描上行日志缓存目录,发现有文件就将文件中的内容写入数据库上行日志表,成功后将文件删除。
3)点播路由模块定时扫描上行缓存文件目录,发现有文件就将文件信息读取,根据其中的业务代码、端口、子端口匹配业务信息缓存中的业务信息,找到对应的处理模块,并调用处理模块,调用处理模块时将文件名也作为参数传入。
4)业务信息维护模块每5分钟从数据库更新一次业务信息缓存。
因篇幅问题不能全部显示,请点此查看更多更全内容