基于异步通信的交易系统路由

 2021-11-28 21:34:06

论文总字数:34140字

摘 要

mPOS(mobile Pos)是近年来出现的一种新型支付产品,与手机、平板电脑等通用智能移动设备进行连接,通过互联网进行信息传输,外接设备完成卡片读取、PIN输入、数据加解密、提示信息显示等操作,从而实现支付功能的应用。本文主要介绍了南京东大集成电路科技有限公司的mpos产品服务后台系统程序中基于Redis数据库的异步通信交易系统路由的开发。主要涉及以下内容:

  1. Linux进程间报文通信。使用Key-Value型内存数据库Redis建立消息队列,待处理报文均入队,由开发模块mpos_center阻塞读取,并按照规则进行处理、转发。在整个系统中与其他通信机制配合使用,合理发挥各种通信方式的优势。
  2. 运行日志记录。程序正常运行和出现业务错误时,都将使用统一规范的格式进行记录。好的日志记录方式可以提供我们足够多定位问题的依据,不仅在出现业务错误时可以及时复查,在程序运行正常的状态下也便于日后查看和评估。
  3. 业务流程配置文件。通过使用xml文件记录业务流程,保证程序的灵活性、可移植性。在程序开始运行时读取xml文件记录的业务流程到内存,保证运行速度,避免资源竞争,作为报文转发的“路由表”,实现业务系统的统一路径报文转发功能。

关键词:进程通信;Redis消息队列;运行日志;报文转发路由

Trading System based on Asynchronous communication routes

Abstract

Mpos(Mobile Pos) is a new payment products in recent years. It can connect to universal smart mobile devices such as cellphones or Table PCs, then transfer information by Internet with external device reading the card, PIN inputting, data encrypting and decrypting, message displaying, and so on, in order to realize the payment function. The paper mainly introduces the developing of asynchronous communication transaction system routing using Redis database for the service system of the Mpos products of SEUIC. The main contents are as follows:

(1) Linux Interprocess messaging communications. Based on message queue created with Redis--a Key-Value type database. Pending messages will be enqueued, then the mpos_center module will read them and handle with the text, finally retransmit them by rule.

(2) The operation log. Procedures for normal operation and appeared operational errors, are recorded using a standardized format. Better operating log provides us enough evidence for locating problems.Not only when an error occurs in bussiness you can check in time, but also you can view and evaluate the program while operating properly.

(3) Business Process Configuration Files. By using XML files documenting business processes to ensure the program's flexibility, portability.The process will load the xml file into memory as a Routing for packet transmition when starting, to ensure the speed and avoid resource competition.it realizes the message transmition of the business system within an unified path.

KEYWORDS: Communication among processes; Redis; Message Queuing; Running logs; Packet forwarding route;

目录

摘 要 I

Abstract II

第1章 绪论 10

1.1 项目背景与意义 10

1.2 移动Pos业务接入系统服务现状研究 11

1.3 本文的研究内容和结构安排 11

1.3.1 本文研究内容 11

1.3.2 论文结构安排 12

第2章 进程报文通信 13

2.1 系统需求分析 13

2.1.1 需求分析过程 13

2.1.2 面向对象分析方法 13

2.2 mPos业务接入服务系统分析 14

2.2.1 系统功能总述 14

2.2.2 系统需求 14

2.3 进程间通信报文方式 14

2.3.1 常见几种进程通信方式 14

2.3.2 报文通信方式设计 15

2.4 Redis消息队列实现 16

2.4.1 Redis数据库简介 16

2.4.2 Redis的部署和消息队列的实现 17

2.4.2.1 Redis的安装和配置 17

2.4.2.2使用hiredis提供的API在c程序中操作redis 17

2.4.2.2 C程序中涉及到的redis API函数 18

2.4.2.3 消息队列所需redis操作 18

2.4.2.4 C操作函数设计 18

2.4.2.5 程序流程设计 20

第3章 系统运行日志记录设计 21

3.1 软件运行日志 21

3.2 业务服务系统记录节点 21

3.2.1 正常运行记录节点 21

3.2.2 运行错误记录 22

3.2.3 日志记录函数 22

3.2.4 日志记录流程示意图 23

第4章 业务服务系统转发路由实现 24

4.1 转发功能描述 24

4.2 XML格式简介 24

4.3 基于XML格式的报文 25

4.3.1 报文字段定义 25

4.3.2 报文字段提取函数 25

4.4 交易流程路由表 27

4.4.1 交易流程配置文件 27

4.4.2 交易路由表实现 27

4.5 交易流程实现 28

4.5.1 路由功能实现 28

4.5.2 交易流程格式化 29

4.5.3 报文流程处理函数 30

4.5.4 路由功能流程图 32

第5章 软件功能总览 33

5.1 模块功能综述 33

5.2 功能流程图 34

第6章 总结与展望 35

参考文献 36

致谢 37

绪论

项目背景与意义

POS机作为现代化消费最重要的工具之一,已成为各家金融机构业务的重要组成部分。

mPOS(Mobile Pos)是一种新型支付产品,与手机、平板电脑等通用智能移动设备进行连接,通过互联网进行信息传输,外接设备完成卡片读取、PIN输入、数据加解密、提示信息显示等操作,从而实现各种支付功能的应用。

在移动支付兴起的大时代下,越来越多的中小型企业、商户甚至出租车、公共事业等行业,选择使用类似mPos这样的小巧、安全、灵活、方便且功能强大的支付工具代替传统Pos如基于PSTN的电话Pos机等。移动Pos机呈现出急剧增长的态势,2014年,移动Pos的出货量预计全世界增长95。移动Pos常有以下几种应用场景:企业使用替代固定POS,提高店面利用率,拆除固定POS用移动POS来替代,可腾出地面与空间用于销售,以增加收入。用作店员助手,改善服务。将移动POS当作营业店员助手,人手一台,提高店员素质,改善店内购物体验,多数大型零售企业都主要将移动POS用于此目的。用作移动支付,缩短结账时间。不少大型零售商为了满足顾客加快结账速度的需求,在销售高峰或节假日期间,用移动POS作为移动支付点,让店员能在店内的任何地方为顾客结账。用作导购机,协助顾客购物。导购机,又称个人购物助手,是一种在移动程序引导下协助顾客自助选购商品的移动POS,它向顾客提供商品的各种信息,告诉顾客所需商品放在店内什么地方等信息。

mPOS(mobile Pos)近些年得到了很快的发展,相比传统移动Pos机器如手持Pos等,mPos有以下几个优势:在体积方面,手机POS机比便携POS机更小;在便民方面,手机POS机因为有手机客户端应用,支持转账、还信用卡、充手机话费、帐户余额查询等功能,而移动POS则没有这些功能;费用方面mPos比传统Pos和移动Pos费用要低。基于以上优势,不少机构和生产企业进行了各种形式的试点。商户使用 mPOS,需要在手机、平板电脑等智能终端中下载平台应用,通过蓝牙或者音频线连接 POS 装置与智能终端,这使银行等收单机构能够为不同类别商家提供更加定制化的服务。由于mPOS引入了手机、平板电脑等通用智能移动设备,并通过互联网进行信息传输,因此其安全特点与传统银行卡受理终端存在不同。同时,市场对mPOS含义认识不一,安全水平参差不齐,因而也对安全、性能等方面提出了更大的挑战。

本项目的终端东集移动支付终端是江苏东大集成电路系统工程技术有限公司针对小微商户收款、个人支付最新研制的新一代支付产品。产品配备高性能CPU, 大容量内存,同时支持蓝牙、MiniUSB、音频接口,兼容主流Android和iOS设备,可与智能手机、平板电脑等对接,进行各类银行卡交易。外观精巧,便于携带。产品采用专用安全处理器、拆机自毁等多重安全机制,保障支付安全;产品的定制性较高,可根据不同行业的特点及个性化需求实现定制开发。

针对mPos产品运行架构与特点,在终端上位机如手机、平板和银行数据中心之间设立业务处理与管理服务中心,一般在AIX、HP-UX等小型机上部署运行。完成业务调度处理、相关的数据访问、访问控制、安全控制以及与银行间的接口访问等。终端与系统总体需符合《第二代支付系统与中国银联综合业务系统互联规范》v1.2。本文旨在开发mPos后台服务系统的交易系统核心报文转发模块。

移动Pos业务接入系统服务现状研究

随着互联网和电子商务的不断发展和普及,我国传统的金融支付的手段依然变成了制约我国经济大发展的不利因素,与此同时,移动通信的迅猛发展为移动支付业务的发展提供了坚实的基础,在这种情形下,移动支付产业也就自然而然的成为金融支付的一条分支。伴随着移动支付在各行各业如物流、制造、公共信息服务等行业的大力推广,各类的创新技术不断的节约移动支付的成本和提高了支付的效率,移动支付的产业的发展开始大踏步的向前发展。现今正是移动支付业务势头正兴的时代,相比前几年普及最广的基于PSTN(公共电话网络)的电话Pos机,移动Pos机的增长速度不可同日而语,包括餐厅、小型商户、企业、出租车、公共事业、金融等各种行业都越来越多地选择移动支付工具。这和移动支付工具移动性强、连接速度更快、传输速度更快、容易安装、操作简便、网络可扩充性高、通信费用低、应用范围更广泛、可灵活支持多种数据应用的优点的原因分不开。高速的业务增长给移动支付终端和服务提供商带来了新的机遇和挑战。

移动POS市场格局与固定POS相比,有极大的差异。固定POS硬件市场的格局多年来一直没有变化,IBM(包括以后的东芝TEC)始终鳌占40%左右的份额,其余份额绝大部分被Dell、NCR、HP、富士通等几家世界级大型计算机生产厂商所垄断。由于进入中低档POS市场的门槛不高,一批中小型企业在这些大公司留下的百分之几的夹缝中创建自己的品牌,在中低档POS市场,也能占有一席之地。但移动POS硬件市场则完全不同,智能手机也好,平板电脑也好,都是集无线通信与计算机技术于一体的超大规模集成电路移动装置,有些还包括GPS等导航功能,进入这一市场的门槛远远高于固定POS,即使是大型计算机提供商要在短期内进入也很困难,更不要说是一般中小型固定POS提供商。目前,移动POS硬件市场90%以上被最早创建iPone手机POS的Apple以及Blackberry、Motorola、Google、三星等几家公司占领,留下空隙绝小,见不到原来固定POS提供商的影子。

在POS软件市场,移动POS与固定POS相比,最大的差异是商家自行开发的专用POS软件在市场中所占的比例。据美国BRP咨询公司调研,目前专用POS软件在移动POS市场占据了50%以上,而在固定POS市场只占3%左右。多年来国外固定POS软件市场始终被SAP、Epicor、Retalix等十几家公司瓜分,这些公司多年来从事POS软件开发,向零售企业提供通用的高质量POS软件。移动POS扩大了传统POS应用范围,零售企业为了异化公司的服务与购物体验,纷纷出招,力图将POS变成一个能拉动顾客、支持全渠道营销的客户与公司互动的接触点。显然,任何一家POS软件公司提供的产品都无法满足不同零售企业的不同需求。这些POS软件的通用化意味着零售商异化的消失。因此,在移动POS软件市场,零售企业成了市场的主宰者,自行开发的,包括委托第三家开发采用自家品牌的专用POS移动程序成了这个市场的主流。

在这样的形势下,厂家产品的性能优劣、提供的服务质量是市场竞争的核心。这对Pos接入系统服务的提供商提出了更高的要求。

本文的研究内容和结构安排

本文研究内容

符合系统要求的进程间报文消息通信方式

业务系统由多个进程同时运行,在进程之间需要传送消息、报文,因此第一步需要选择适当的通信方式。

由于本项目各个进程工作量、速度不一,同步通信的代价较大,选择使用异步通信的方式更合适。考虑到mPos服务系统的业务高峰导致的资源占用量、大吞吐量、高并发性,需要使用效率较高的通信方式来传输报文,保证系统的整体工作能力。

合适的运行日志记录规则

运行日志对于长期运行、进程数量多、吞吐量大的服务系统的重要意义是不言而喻的。在多进程、长时间运行的系统特点下,如果仅使用界面输出或者报错机制的话显然是不能满足要求的。所以各个进程需要实时进行日志记录,这样既方便调试,又能在运营时快速定位错误。运行日志的记录需要确定:1.记录的事件节点 2.记录的文字内容 既要保证记录下的信息能准确、完整的体现系统状态或错误原因,又要避免信息冗余,这就需要较好的日志记录设计。

交易系统路由功能

本业务系统的核心功能是将报文按照银行既有的业务流程要求进行调度传输。如何在运行时结合业务流程是一个需要考虑的方面,既要保证运行时的速度和准确度,又要保证整个业务流程的可修改性、可移植性。

论文结构安排

第一章 绪论。介绍选题的背景和研究的目的意义,mPos的现今发展态势相关研究现状,以及论文的主要内容和结构安排。

剩余内容已隐藏,请支付后下载全文,论文总字数:34140字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;