Конфигурация JPOS QMUX

#sockets #tcp #iso8583 #mux #jpos

#сокеты #tcp #iso8583 #мультиплексирование #jpos

Вопрос:

Я новичок в JPOS. Мне нужна некоторая помощь. Пожалуйста, ознакомьтесь с моим требованием ниже.

В терминах TCP-соединения IST-коммутатор настроен как сервер, а MPOS-сервер настроен как клиент. Сервер MPOS и коммутатор IST должны взаимодействовать через одно TCP-соединение. Также должно быть предусмотрено наличие нескольких TCP-соединений между сервером MPOS и коммутатором IST для масштабируемости, распределения нагрузки и обработки сбоев. После установления TCP-соединения поддерживается непрерывно.

Я просмотрел руководство разработчика jpos и узнал, что QMUX может быть использован для моих требований. Просьба к вам любезно помочь мне в этом.

Ответ №1:

Я не смог точно понять ваш вопрос, но QMUX не имеет никакого отношения к балансировке нагрузки или к отказоустойчивости. QMUX получает привязку только с одним канальным адаптером

Позвольте мне рассказать вам, что делает QMUX, чтобы мы могли четко понимать, когда QMUX будет полезен. Например, у вас есть канал, подключенный к серверу, и сервер поддерживает параллельные запросы (т. Е. второй запрос по тому же tcp-каналу, в то время как клиент ожидает ответа на первый запрос). Теперь возникает проблема с привязкой пар запросы-ответы (поскольку вполне возможно, что второй ответ поступает даже до ответа на первый запрос), это то, что именно делает QMUX. мультиплексорная часть фактически обозначает мультиплексор.

Для балансировки laod или отказа вы можете использовать org.jpos.q2.iso.MUXPool класс ниже приведен пример XML-дескриптора q2

 <?xml version="1.0" encoding="UTF-8"?>
<muxpool name="MuxPool" class="org.jpos.q2.iso.MUXPool" logger="Q2">
    <muxes>MuxPrimary MuxSecondary</muxes>
    <strategy>PRIMARY_SECONDARY</strategy>
</muxpool> 
  

MuxPool предоставляет две стратегии: первичную-вторичную или циклическую, в зависимости от того, ищете ли вы отказоустойчивость или балансировку нагрузки.

Если вы считаете, что я правильно понял ваш вопрос и указываю вам правильное направление, дайте мне знать, возможно, я смогу поделиться с вами одним примером приложения с использованием QMux и Muxpool в ближайшие выходные.

Комментарии:

1. Спасибо за информацию, вы все правильно поняли, пожалуйста, поделитесь примером приложения, а также я хотел бы узнать о стратегии primary-secondary .

2. Ну, как я говорил вам ранее, первичный-вторичный предназначен для отказа в приведенном выше примере вы можете видеть, что muxpool настроен поверх двух мультиплексоров, оба подключены к разным серверам. Теперь перед отправкой запроса muxpool проверяет состояние соединения первого мультиплексора, если все в порядке, он отправляет транзакцию первому, в противном случае сделайте то же самое со вторым мультиплексором.

Ответ №2:

Пожалуйста, взгляните на главу 8.3 проекта руководства программиста jPOS под удобным названием «QMUX», которую вы можете скачать здесь:http://jpos.org/doc/proguide-draft.pdf — Вам также понадобится сопутствующий сервис «ChannelAdaptor», описанный в разделе 8.1