是否可以在单个JPOS实例中为多个客户端监听多个端口?

时间:2018-04-16 01:48:19

标签: java iso8583 jpos

我是JPOS的新手。我们已经为多个客户端实现了jpos服务器。

here is a image of my scenario

例如,我们有 n 个客户端。每个客户端的ISO消息格式都不同。

是否可以为JPOS服务器中的每个客户端实现多个侦听端口?

如果不是,那么使用单个JPOS服务器实例处理多个客户端的最佳做法是什么?

我们如何在处理ECHO和登录请求时识别每个客户?

请帮忙。

提前致谢。

3 个答案:

答案 0 :(得分:2)

当然,为什么不,您可以使用不同的协议添加任意数量的服务器。看看http://jpos.org/tutorials,只需在部署目录中添加更多服务器。

答案 1 :(得分:1)

您当然可以添加多个q2服务器。

只需在dist文件夹中添加q2服务器的另一个xml定义,jPOS会立即选择新服务器并开始侦听指定的端口。

答案 2 :(得分:0)

您可以使用JPOS的组,选择器和参与者功能来处理回显和请求。

选择器和组的示例代码

@Override
        public String select(long l, Serializable serializable) {
            Context ctx = (Context)serializable;
            ISOMsg resIsoMsg = (ISOMsg)ctx.get(REQUEST);
            String selector = "";
            try {
                selector = configuration.get(resIsoMsg.getMTI());
            } catch (ISOException e) {
                e.printStackTrace();
            }
            return selector;
        }

选择器可以识别传入消息的MTI示例:1100表示​​请求,1800表示回声。 Selector类可以实现GroupSelector和Configurable,并覆盖以下方法以获取MTI

$number = 0;
foreach ($marker_rows as $marker_row) {
     ...
     $number++; // $number will now be $number+1
}