Что-то получилось, но пока не знаю как все проверить.[balancer]name = test_balancerchain = reader1,reder2;reader3пока реализовано только правило цепочка (chain), принцип работы простой - задаются группы ридеров через запятую, между которыми будет распределен запрос. Далее через точку с запятой задаются группы ридеров, которым запрос будет передан в случае НЕ декодирования предыдущей группой.Как пример:chain = card_1, сard_2; card_3что означает - запрос будет сбалансирован (по степени загрузки ридера) между двумя ридерами card_1 и card_2 и в случае, если не будет декодирован, то будет передан в следующую по цепочке группу в которой только один ридер card_3Что бы все это работало в фильтрах у действия accept добавлен параметр - имя балансировщика, следовательно если указан, то ECM запрос будет отработан указанным балансировщиком.[filter]rule = caid=0500;accept=test_balancerrule = caid=4AE1;accept=test_balancer_4AE1по умолчанию создается default балансер, который балансирует запрос между всеми существующими ридерами.ПЫСЫ. можно будет добавить и round robin и параллельную отправку, но пока не могу смоделировать ситуации, для которых это потребуется.
|