JPos学习
来源:互联网 发布:网络流传的父女唱的歌 编辑:程序博客网 时间:2024/04/27 17:31
基于JPos的消息交换系统
消息交换系统需求解读
消息交换系统不不是一个具体的业务系统,而是业务系统的运转的基础框架;
他的运转是体现在报文交换上的;
要定义一个可被不同业务系统使用的报文规范;
报文格式
报文内容参考ISO8583(87版),传输使用XML形式。为不和标准冲突,目前吧自定义域放在87版的自定义域里。
具体定义可参考schema.xls。
系统运转机制
基于JPos的消息交换系统是一个自管理的服务框架。
JPos作为消息平台十分灵活,为统一流程我们将设计一套网银专用的消息交换机制。
系统将建立3个层次,接入层、业务层、收单链路层;
每个层都是一或多个平等的组件,相互间可以通过Socket调用;
一个标准的组件由下列几个模块组成
- 服务器的工作机制
作为一个服务程序它在启动后将监控一个部署目录,不断扫描并发现所有的XML配置文件。如果发现有新增或改动,就会用XML生成组件并加载到注册机里。 - 消息交换流程
- 客户端把消息发送到组件服务
- 服务监听将接收到的消息转给入口通道
- 入口通道顺序执行被配置在这里的处理器
- 经过入口通道后消息被转给路由器
- 路由器根据配置域的为消息匹配一个出口通道
- 消息被转给出口通道
- 出口通道顺序执行配置在这里的处理器
- 消息被发送出去
配置文件
<!-- 服务监听 -->
<
server
class
=
"org.jpos.q2.iso.QServer"
logger
=
"Q2"
name
=
"module"
>
<
attr
name
=
"port"
type
=
"java.lang.Integer"
>9031</
attr
>
<!-- 入口通道 -->
<
channel
class
=
"org.jpos.iso.channel.XMLChannel"
logger
=
"Q2"
packager
=
"org.jpos.iso.packager.XMLPackager"
>
<!-- 入口通道内的处理器,如果不需要要也可以不配置 -->
<!-- 方向incoming:匹配消息进入,outgoing:匹配消息返回-->
<
filter
class
=
"com.example.jpos.client.TestFilter"
direction
=
"incoming"
>
<
property
name
=
"fields"
value
=
"0 2 3"
/>
</
filter
>
</
channel
>
<!-- 路由器 -->
<!-- 这里是根据32域匹配出口通道 -->
<
request-listener
class
=
"org.jpos.apps.qsp.Q2Router"
logger
=
"Q2"
>
<
router
switch
=
"${32}==01"
type
=
"mux"
bounce
=
"true"
destination
=
"out1"
timeout
=
"30000"
/>
<
router
switch
=
"${32}==02"
type
=
"mux"
bounce
=
"true"
destination
=
"out2"
timeout
=
"30000"
/>
</
request-listener
>
</
server>
<!-- 出口通道需要用mux链接 -->
<
mux
class
=
"org.jpos.q2.iso.QMUX"
logger
=
"Q2"
name
=
"out1"
>
<
in
>receive</
in
>
<
out
>send</
out
>
</
mux
>
<
channel-adaptor
name
=
"channeladaptor"
class
=
"org.jpos.q2.iso.ChannelAdaptor"
logger
=
"Q2"
>
<!-- 出口通道 -->
<
channel
name
=
"channel"
class
=
"org.jpos.iso.channel.XMLChannel"
logger
=
"Q2"
packager
=
"org.jpos.iso.packager.XMLPackager"
>
<
property
name
=
"host"
value
=
"localhost"
/>
<
property
name
=
"port"
value
=
"9051"
/>
</
channel
>
<
in
>send</
in
>
<
out
>receive</
out
>
<
reconnect-delay
>1000</
reconnect-delay
>
</
channel-adaptor
>
0 0
- JPos学习
- JPOS学习第一节
- jPos研究
- Jpos体系结构
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- STL--map用法
- POJ1860Currency Exchange spfa
- keil程序在外部RAM中调试的问题总结(个人的一点经验总结)
- HDU 4952 Number Transformation 规律题
- 图像处理基础知识(一)
- JPos学习
- qt里大多数可共用的设置
- NS安装笔记
- 网络经济与企业管理(一)
- asp.net中repeater控件分页
- 工作日志2014-08-13
- LIS 的 n*logn 写法并标记输出其中任意一个
- linux 下安装 ffmpeg
- hdu4952Number Transformation (找规律)