WSO2 API Manager - балансировка нагрузки с динамическими конечными точками c - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть API, который использует динамические c конечные точки. Теперь я хочу, чтобы он также занимался балансировкой нагрузки. Я знаю, как сделать это с помощью элемента, однако при использовании конечных точек Dynami c в APIM вы манипулируете только заголовком «Кому».

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

Есть мысли?

Спасибо.

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="inSequence_clientEquipmentsAPI_1_2_STG" trace="disable" xmlns="http://ws.apache.org/ns/synapse">
    <!-- check for healthcheck operation -->
    <filter xpath="get-property('To')='/etc/equipments/client/1.0/healthCheck'">
        <!-- if healthCheck, directs to healthCheck API (EI)-->
        <then>
            <property name="REST_URL_POSTFIX" scope="axis2" action="remove"/>
            <header name="To" value="http://10.220.160.36:8290/healthCheck/clientEquipments"/>
        </then>
        <!-- else direct to regular clientEquipment API (EI)-->
        <else>
            <property name="newContext" expression="substring-after(get-property('To'),'/etc')"/>       
            <header name="To" expression="fn:concat('http://10.220.160.36:8290', $ctx:newContext)"/>
        </else>         
    </filter>
</sequence>
...