基于微服务架构的校园卡移动服务平台的设计

2024-06-26 11:25李杭彩谢宇威
电脑知识与技术 2024年13期

李杭彩 谢宇威

摘要:随着智能移动设备的广泛应用,移动支付普及开来。校园卡App已经融入师生的日常生活,便利了他们的科研、学习和生活等方面。随着校园卡App的使用量不断增加,对校园移动服务提出了更高的要求。针对现有校园卡App存在的不足,重新设计并构建了基于微服务架构的移动服务平台。同时,拓展了校园卡App移动POS的功能,降低了小额支付应用的门槛,扩大了校园卡的使用范围,提升了师生校园移动服务的体验,并构建了新的校园生态圈。

关键词:校园卡App;移动服务;移动POS;校园生态圈

中图分类号:TP311 文献标识码:A

文章编号:1009-3044(2024)13-0055-03 开放科学(资源服务)标识码(OSID) :

0 引言

随着移动互联网时代的到来,资源共享、移动化、智能化、可视化正对传统系统进行优化和升级。高校的校园卡系统是智慧校园的重要组成部分,伴随信息化建设的深入和服务理念的变革,校园卡的应用日益广泛,为学校的管理和师生的科研、学习、生活等方面提供了极大的便利。移动支付技术的兴起使移动支付成为主流支付方式,校内单一的实体校园卡支付模式受到冲击。浙江大学校园卡平台立足师生需求,2017年全面升级校园卡平台,上线基于移动电子账户的在线支付系统,突破卡介质载体,迁移应用及服务到移动端,打破传统的卡认证和支付模式,实现校园卡应用的移动化、无卡化和多介质化,校园卡App正式进入校园[1-4]。

目前,校园卡已经实现了从单机消费模式到在线支付、移动支付的转变。校园卡平台是学校日常运行中必不可少、不容差错的重要业务系统,具有全天候、全空间运行的特征。校园卡App的运营效果直接影响到学校师生的业务运行和服务体验[5]。移动认证和支付以其独特的优势被普及,更多的师生选择移动端替代实体校园卡,这对校园卡App的安全性、稳定性、扩展性、并发性等提出了更高的要求。现有校园卡App的互动性不强、界面统一性不足,在一定程度上影响用户体验,因此需要尽快依照师生需求优化移动服务内容,向智慧服务转变,提供全生命周期、主动式、个性化的服务,提升师生移动服务的体验[6]。

同时,智能手机技术的快速发展,校园卡商户对POS终端的便携性、移动化、智能化等提出了更高的要求,为满足小商户对校园卡POS机的使用需求。减少小商户POS终端购置或租用、维护的经营成本,降低小额消费支付的应用门槛,拓展校园卡的小额支付使用范围,急需利用手机代替硬件POS机[7]。

1 总体设计

校园卡移动服务平台基于微服务架构,支持集群部署方式,便于对服务进行横向扩容,解决移动支付、移动服务带来的高并发量影响系统性能的问题,可构建一个支持高并发、高可靠、高可用的平台。平台基于Spring Cloud 框架,使用SpringBoot、MyBatis、WebAPI等核心技术,采用现在比较流行的前后端分离技术进行开发、部署和运维,可集成到微信、支付宝、第三方App等,灵活性、扩展性、可靠性更强[8-10]。校园卡App采用native+HTML5的模式进行开发,HTML5具有良好的页面表现性能和跨平台兼容性。以单页面模式进行开发,首次载入会将资源缓存到本地,以骨架屏的方式展现给用户,载入后内部功能交互速度更快、性能更好。采用Elasticsearch查询算法,保证查询的响应速度,为用户提供高度流畅的可用性和易用性。

平台采用分层次、模块化设计,安全稳定,便于系统扩展。应用平台模块间相互独立,接口清晰,内部的业务流程升级和改造与其他模块无关,所有模块基于组件开发,打造高类聚松耦合的一体化平台。并为二次开发提供标准的API接口,提供标准开放的身份认证能力、管理第三方接入应用、接口权限使用,为第三方接入提供标准的唯一接入通道,避免第三方多次接入。系统整体架构分为数据层、支撑层、业务层、用户层,如图1所示。

从逻辑上又可以划分为平台、个人应用、商户、App、管理端5个部分,符合微服务的设计理念,提升伸缩性、扩展性,降低耦合度。每部分可独立开发和部署,相互的通信机制是轻量级的,可部署在不同的服务器上并且可以独立运行,便于后期的扩展。

平台:用户登录认证、密码安全、设备安全。针对不同用户可以显示不同的界面布局,做到千人千面。

个人应用:业务和服务,主要包含:充值、账单、挂失、解挂、绑定/解绑校园卡、绑定/解绑银行卡、密码设置、付款码、认证码、多校园卡账户切换、网络缴费等。

商户:管理员授权将校园卡商户绑定到特定的用户和操作员上,用户和操作员通过登录服务平台管理商户,并可通过移动端查询商户信息、查看交易流水、统计商户收入、扫描付款码、展示收款码等服务。

App:有安卓和iOS两个版本,包括数据呈现、用户交互、动态组件加载、硬件接口提供、指纹、FaceID等。

管理端:管理应用、组件、菜单、群组、用户、新闻、通知、推送、主题、方案、系统参数,并对移动服务平台的各个端的运营进行统一的协调和管理。

2 关键功能和模块

移动服务平台功能齐全、内容丰富、人机界面友好,继承原有移动化的校园卡核心业务,充值、业务查询、付款码、认证码、扫一扫、卡包、账单、网费缴费、卡片挂失解挂等功能,并拓展优化登录方式、联机码+脱机码的组合二维码、消息推送、商户移动端收款、日志、付款码快速展示等能力。

2.1 移动端登录

移动端支持学校统一身份认证、手机号加验证码验证两种登录方式。首先,判断用户移动端设备是否被注册到可信设备,再判断设备是否支持生物识别并已开通生物识别登录的能力,若是则可通过手机硬件设备进行快速的验证,用户也可切换其他的登录方式。如果是首次使用,移动端设备未被注册到可信设备里面,为保证移动端使用的安全性,则启动二次短信验证模式,验证是否本人在操作,发送验证码进行验证。用户身份验证通过后,判断本地是否存在用户的校园卡账户信息,若没有账户信息,则通过校园卡平台相关接口获取账户信息并保存到移动服务平台。流程如图2所示。

2.2 双模自动切换二维码

双模自动切换二维码即在校园卡App上生成复合码。这种码既符合在线实时生成联机码规则,同时支持手机信号盲区或网络不稳定时脱机码使用规则。它拓展为联机码+脱机码的组合二维码,在校园卡App与后台通信受阻时,保障虚拟校园卡业务的正常进行。扫码终端自动识别自身的网络状态以及与服务器的连接状态,根据实际环境条件切换使用联机、脱机状态验证移动端的二维码。在单脱(移动端App、扫码终端其中之一脱机),或双脱(移动端App、扫码终端同时脱机)情况下都能完成二维码的相关业务[11]。平台支持脱机码运行规则的设置,可限制允许脱机时长,设定每天脱机码生成数量。超过当日脱机码生成次数后,将不再生成脱机码,直到再次联机更新,从而降低脱机时二维码被盗用的风险。

2.3 消息推送

消息推送可以作为移动端设备的灵魂。用户在使用校园卡App期间的消息提醒,使用消息中间件来完成消息容器,通过服务器端的程序向用户端发送数据,实现消息和服务的推送。移动终端被进行唯一标识,通过算法生成标识符。移动服务唤醒,一旦检测到有消息推送,调用接口程序进行唤醒,提示用户查看消息。消息推送对于提高App活跃度、提升用户黏性都有重要作用。用户收到的各类消息推送,消息类别包括消费消息、充值消息、补助消息等,用不同图标区分不同的消息种类,并且按时间倒序排列。金额的颜色用以区分是消费还是充值。

2.4 商户应用

只有PC端能查看和统计营业数据已经无法满足商家的使用需求,在移动端拓展了商户管理和收单交易的能力。商户在移动端可使用的功能有扫一扫、收款码、统计查询等。扫一扫和收款码主要用于商户收款,统计查询和账单是商户的流水信息和交易统计。商户申请开设校园卡商户和虚拟POS终端,系统管理员在管理后台开通并配置商户信息,商户下载校园卡App,登录后可在商户应用中心查看商户列表。一个账号可关联多个商户账户,并能查看和设置每个商户的商户信息。商户账号可以进行绑定,绑定到不同管理者,实现一个或多个商户由一个或多个管理员进行管理。管理员管理相应的POS机,可对每个商户号下的POS机进行远程开启和关闭语音播报功能,查询每台POS机的消费明细,及线上打开每台POS机的收款码收款,查询该POS机的收款记录等。

2.5 生物识别能力

目前智能手机产品已经全面普及生物识别技术,有效地保障了用户的信息安全和金融安全。为提升便利性和安全性,移动端支持生物识别能力。用户可以在校园卡App开通或关闭生物识别服务。开通时,移动端程序判断用户使用的移动端设备是否支持该能力。如果终端支持,用户可选择开通生物识别登录、生物识别支付。开通时输入密码,开通后,移动端程序通过接口将开通的信息传送给服务端进行保存,本地也会保存开通的信息,供下次登录验证使用。

2.6 账单和统计

账单主要用于记录用户的充值、消费等流水信息,用不同的图标区分不同类别的交易流水。平台全新设计的账单查询和统计能力可实时查询,分类更清晰,支持对账单按时间、金额、消费类型等进行筛选查询,同时支持用户对账单进行搜索,按关键字搜索。为满足用户对交易情况的直观了解,提供可视化服务。用户可对交易流水按时间、分类、金额等类型进行统计,数据以折线趋势图、环形图等可视化图表形式展示,确保数据有迹可循、有理可依,确保用户实时掌握校园卡账户信息。

2.7 系统日志

系统日志可以分为操作日志、应用日志和接口日志。操作日志记录管理员对平台的操作,包括操作内容、操作时间、IP地址等。应用日志记录用户、管理员对应用的操作记录,包括用户登录时间、管理员上架和下架应用内容、审核等操作记录。接口日志主要记录对接口进行的操作,包括调用的接口、请求的参数、日期、接口调用的应用名称等。不同权限的管理员可对系统日志进行不同的操作,如查看、备份、删除等。通过查看系统日志,管理员可了解系统的状态和运行情况,并及时进行故障的排除。

3 安全性设计

移动服务平台作为校园卡平台的移动门户端,直接影响用户的使用体验,其安全性设计的重要性不言而喻。为保障内部数据的安全性,确保平台安全稳定,进行本地化部署,搭建在学校内部的服务器终端设备上,并定期对服务器进行更新、升级、维护,做好系统的安全保障和数据的保护工作[12]。除此之外,从身份验证、授权、加密等方面对平台进行了安全性设计。平台支持学校统一身份认证或手机号加验证码验证登录。统一身份认证登录,账号和密码不保存在本地,避免了用户登录信息被窃取。采用公钥和私钥保证连接的安全性,私钥和公钥两层验证通过方可链接上,并根据用户的角色和权限,限制用户的访问权限,确保只有通过认证和授权的用户能访问特定功能和数据。数据和参数具备加密措施和防范机制,均采用SHA非对称加密,保证数据在传输和存储中的安全,利用大数据分析系统日志,及时发现潜在的安全威胁。采用金融数据加密机实现校园卡移动端支付环境中的加密、解密功能需求,按照金融级交易系统规格对数据进行加密、消息来源正确性验证、密钥管理等,防止网上的各种欺诈行为发生[13-14]。

4 结束语

校园卡作为学校的核心基础应用,涉及面广,用户群体多,与师生的学习生活息息相关。本文构建的基于微服务架构的移动服务平台,以智慧校园为理念,以校园卡为基础,以服务为主题,强化校内小额支付移动化门户的入口,构建多种渠道、统一出口、管理便捷的支付服务。注重用户体验,贴合用户使用习惯,提升移动端兼容性,聚合校内多个场景服务,构建以服务为导向的校园移动生态圈,以期为全校师生提供更安全、更稳定、更高效的校园卡移动化服务。

参考文献:

[1] 叶镒娟,徐锋,洪波,等. 基于Hybrid的校园卡APP设计与开发[J]. 中国教育信息化,2015(21):61-63.

[2] 叶缢娟. 浙江大学:移动虚拟卡催生便捷校园[J]. 中国教育网络,2018(S1):78-79.

[3] 徐锋,叶镒娟. 移动互联背景下校园卡支付体系设计与实践[J]. 浙江大学学报(理学版),2018,45(1):60-64.

[4] 谢宇威,李杭彩,程艳旗,等. 校园卡支付体系探索与实践[J].深圳大学学报(理工版),2020,37(S1):134-138.

[5] 徐伟,王海勇. 基于多介质身份核验的智慧一卡通建设研究[J]. 计算机技术与发展,2021,31(12):198-203,210.

[6] 潘仙梅,梁斌,袁媛. 高校校园一卡通去卡化趋势分析与展望[J]. 赤峰学院学报(自然科学版),2019,35(3):166-168.

[7] 陈绍其,梁永娟,梁建硕,等. 移动式一卡通微POS系统的设计及应用[J]. 信息技术与信息化,2017(8):20-24.

[8] 李川,吴钢,利润霖. 基于Spring Cloud的企业级智慧后勤保障平台[J]. 计算机系统应用,2022,31(6):141-148.

[9] 杜英魁,王杨,关屏,等. 基于Spring Boot的云端数据监控管理与可视化应用系统[J]. 计算机系统应,2020,29(5):123-127.

[10] 洪传旺.基于Spring Cloud的“微课堂” 知识考核系统的设计与实现[D].南京:南京大学,2019.

[11] 李杭彩,谢宇威.双模自动切换二维码在校园卡系统中的应用[J].计算机时代,2021(5):49-52.

[12] 鲁霄.校园APP安全应用的可行性研究[J].信息与电脑(理论版),2019,31(17):80-81.

[13] 谢宇威,朱设峰.基于超级SIM卡技术的NFC校园卡应用探索[J].电脑知识与技术,2023,19(9):98-100,104.

[14] 乌蓓华.智慧校园一卡通安全策略研究与设计[J].中国教育信息化,2016(11):71-73.

【通联编辑:梁书】