MSPACCESSD和MSPACCESS模块提供接入控制的功能,通过命令行界面对系统中的进程进行管理。
MSPCROND提供管理共享内存中数据以用于进程间共同访问的功能;
MSPD是整个系统的守护进程。它负责创建系统各进程,并通过例检消息监视它们的运行状态,对状态异常的进程进行重启;
MSPMON是MPP监控台。这是一个字符窗口界面的监视工具,通过它可以动态监视系统的基本运行情况。
由于各省各单位的缴费协议不统一,MULTIA必须支持多种缴费协议。MSPMAN与MULTIA之间需要定义统一的缴费接口,采用内部定义的PAYFEE协议,由MULTIA完成统一接口到具体缴费协议的转换。通过协议映射,屏蔽了各缴费协议的不同。
MSP系统内部通过FIFO(First In First Out)消息进行通信,与外部实体通过socket消息进行通信。
3.2 MSP系统的设计
3.2.1 MSPMAN模块的设计
MSPMAN模块负责消息的转发和定时任务。MSPMAN通过MPCP小额支付通信协议[7]和MPTP小额支付交易协议[8]与MPP进行交互。MSPMAN需要完成的定时任务有:定时的冲正,定时任务触发,定时业务重启等等。MSPMAN模块的结构图如图3所示:
图3 MSPMAN模块结构图
(1) TMspmanCtrl是MSPMAN模块的总控类,它负责协调个子模块,完成MSPMAN模块的功能。
(2) TFifoComm类是FIFO通信的总控类,它负责底层FIFO消息的收发,对上层提供统一的接口。
(3) TMonitor类负责MSPMAN模块的接入控制,通过它MSPMAN可以接受并响应mppaccess的接入控制命令。
(4) TSocketComm类是Socket通信的总控类,它负责管理MSPMAN模块的Socket通信,包括与MPCU和MPTU模块的链路维护、收发消息等。
3.2.2 MSPRUN模块的设计
MSPRUN主要是通过实现各种自动机来完成对业务的处理,模块结构图如图4所示:
图4 MSPRUN模块结构图