基于移动互联网的高速公路支付系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于移动互联网的高速公路支付系统设计
摘要现如今,高速公路上传统收取通行费费用的形式已经无法满足公众的需求,本文在高速公路原有收费系统的基础上结合移动互联网技术设计基于移动互联网的高速公路支付系统设计进行研究,并分析该系统架构如何满足用户需求的目的。
关键词移动支付;高速公路;不停车收费
引言
如何提高出口收费的效率是提高高速公路通行效率的一个有效手段。因此高速公路停车收费技术(下称ETC)应运而生。ETC技术是通过车内安装的车载标签与高速公路车道上微波通讯天线进行双向通讯后在脱机的状态下对ETC卡片的电子钱包进行扣款,整个支付过程均在车辆行驶过程中高效地完成。本文是在高速公路ETC系统的基础上设计移动支付服务系统,向ETC用户提供安全、稳定、高效的高速公路通行费支付体验[1]。
1 系统用户功能需求分析
本系统使用者包括高速公路ETC用户以及高速公路ETC卡片发行单位(下称ETC公司)。
1.1 功能需求分析
对于ETC用户,他们需要在手机上通过他们习惯的互联网支付渠道在任何时间任何地点进行高速公路通行费的充值。对于ETC公司,他们需要监控每日的实时交易情况、方便地与支付渠道提供商进行财务对账与结算。
1.2 非功能需求
安全性:保证仅被许可的设备进行接入。
稳定性:24小时提供不间断的稳定服务。
易扩展:随着业务量的增长,可以通过增加设备对系统的并发能力进行横向扩展。
易测试:快速低成本的测试有助于构建易发布的系统[2]。
1.3 系统部署架构设计
4 支付系统整体模块设计
树形模块设计,父节点的模块可以使用子节点模块提供的接口。子节点模块并不知道父节点和兄弟节点的存在。
4.1 网关模块
部署于系统架构中的网关服务器主要用于实现对后台接口服务器集群的反向代理、服务热备、负载均衡、访问接口验证签名(用分发给商户的key来对输入参数拼接成的字符串做MD5 Hash或者RSA加密,然后作为一个参数随其他参数一起提交到服务器端。)、实现对接口访问性能数据的采集、系统性能低下时进行预警。
4.2 支付服务模块
部署于系统架构中的业务服务器
(1)用户接口层
上接【网关】下接【核心业务】、【业务信息持久化】、【系统监控】。该层负责可以选择一些高性能和高伸缩性网络跨框(MINA、NETTY)。也可以选择轻量级WEB容器(如TOMCAT等)实现HTTP接口。由于该层代码依赖特定的上下文。为了易扩展、易测试,该层的代码需要保持简洁。代码中仅包含顺序的调用,不能包含判断(IF),循环(FOR)等复杂逻辑的结构。如果存在,请将这部分逻辑迁移至业务层。若满足上述要求,该层无须考虑自动化测试。
(2)业务层
业务层主要负责将支付业务在计算机内进行模拟。为了方便部署管理,可以作为一个独立的项目存在,以外部引用的方式引入用户接口层项目。所有的业务逻辑都应该在这一层实现。由于该层业务逻辑复杂,需要用自动化测试来保证业务逻辑的准确性。为了能够编写简单的自动化测试用例,这一层的代码不应该有上下文的依赖,只有模拟现实的实体类和执行业务逻辑的服务类。
(3)业务信息持久化层
对业务模块产生的处理结果进行提取、保存、更新。该层只是负责将业务层产生实体类进行提取和保存。与业务层一样,由于该层代码依赖特定的上下文。为了易扩展、易测试,该层的代码需要保持简洁。代码中仅包含顺序的调用,不能包含判断(IF),循环(FOR)等复杂逻辑的结构。SQL里也不应该有判断的结构。这一层可以选用高性能的数据库来实现。可选持久化技术很多,此处不一一列举。
4.3 系统监控模块
对系统信息的运行状况的采集(CPU状态、IO状态、内存状态、网络状态、打开文件数)
运维监控:支付系统在下运行过程中不可避免的会受到各种内部和外部的干扰,光纤被挖断、黑客攻击、数据库被误删、上线系统中有bug等等,运维工程师必须在第一时间内对这些意外事件做出响应,又不能够一天24小时盯着。这就需要一个运维监控系统来协助完成。
日志分析:日志是支付系统统计分析、运维监控的重要依据。
对外提供查询所采集信息接口。
5 结束语
通过网关服务器后可以实现客户端和业务服务器隔离,相比传统客户端和服务端直连的方式更安全。网关服务器的背后是业务服务器集群,网关服务器可以对客户端的请求进行负载均衡相比单点服务极大的提高业务并发能力。多台服务器同时服务,如果其中某台服务器出现问题可以自动被隔离不会影响业务的稳定。系统的监控可以方便地掌握服务器资源的可用性。它帮助我们对数据进行实时分析识别出不正常的表现模式。如实记录服务器出现问题并且在影响生产业务的异常发生前及時通知。伴随着业务量的增长也能帮助分析服务器资源的使用趋势。业务模块中将用户接口层和业务层隔离的方式让系统更容易扩展。
参考文献
[1] 王概凯.架构漫谈[M].浙江:浙江出版集团数字传媒有限公司,2015:101.
[2] 李智慧.大型网站技术架构核心原理与案例分析[M].北京:电子工业出版社,2013:59-63.