如何在mule 3.4或更高版本中为http端点共享连接

如何在mule 3.4或更高版本中为http端点共享连接,mule,Mule,这是我为一个线程配置的测试,但是即使将其限制为0个线程,它也不起作用。请求仍然没有被阻止 <configuration doc:name="Configuration"> <default-threading-profile maxThreadsActive="1" maxThreadsIdle="0" threadTTL="1000" poolExhaustedAction="DISCARD" maxBufferSize="1

这是我为一个线程配置的测试,但是即使将其限制为0个线程,它也不起作用。请求仍然没有被阻止

     <configuration doc:name="Configuration">
    <default-threading-profile maxThreadsActive="1"
        maxThreadsIdle="0" threadTTL="1000" poolExhaustedAction="DISCARD"
        maxBufferSize="1" threadWaitTimeout="1000" />
    <default-dispatcher-threading-profile maxThreadsActive="1"
        maxThreadsIdle="0" threadTTL="1000" poolExhaustedAction="DISCARD"
        maxBufferSize="1" threadWaitTimeout="1000" />
    <default-receiver-threading-profile maxThreadsActive="1"
        maxThreadsIdle="0" threadTTL="1000" poolExhaustedAction="DISCARD"
        maxBufferSize="1" threadWaitTimeout="1000" />
</configuration>
     <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="7619" responseTimeout="2000" doc:name="HTTP-Intake">
    </http:inbound-endpoint>
    <echo-component doc:name="Echo"/>
    <custom-transformer class="transformers.XmlMapper" doc:name="Initializer">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    <choice doc:name="Choice">
        <when expression="/COMMAND/interfaceId='PRE'" evaluator="xpath">
            <flow-ref name="xml-to-servlet" doc:name="xml-to-servlet"/>
        </when>
        <otherwise>
            <custom-transformer class="exceptionhandlers.KnownExceptionHandler" doc:name="Exception Handler">
                <spring:property name="errorCode" value="404"/>
                <spring:property name="errorMessage" value="Route Not Found"/>
            </custom-transformer>
            <custom-transformer returnClass="java.lang.String" class="transformers.generic.MapToTemplate" doc:name="Map to Template">
                <spring:property name="sessionBean" ref="SessionBean"/>
                <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
            </custom-transformer>
        </otherwise>
    </choice>
    <catch-exception-strategy doc:name="Catch Exception Strategy">
        <custom-transformer class="exceptionhandlers.GenericExceptionHander" doc:name="Exception Handler"/>
        <custom-transformer returnClass="java.lang.String" class="transformers.MapToTemplate" doc:name="Map to Template">
            <spring:property name="sessionBean" ref="SessionBean"/>
            <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
        </custom-transformer>
        <custom-transformer class="logging.TDRLogsGenerator" doc:name="TDR Logs"/>
          <custom-transformer class="exceptionhandlers.AmbigousLogGenerator" doc:name="AmbiguosLogs"/>
        <echo-component doc:name="Echo"/>
    </catch-exception-strategy>
</flow>
<sub-flow name="xml-to-servlet" doc:name="xml-to-servlet">
    <custom-transformer class="transformers.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="request"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
        </custom-transformer>
    <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>               
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="SEND_TIME"/>
    </custom-transformer>
    <set-variable value="#[payload]" variableName="payloadbeforecall" doc:name="Variable" />
    <until-successful maxRetries="5"  doc:name="Until Successful" millisBetweenRetries="8000" synchronous="true">
     <http:outbound-endpoint exchange-pattern="request-response" method="POST" address="http://localhost:8080/Xml_Servlet_Simulator/XmlServlet" responseTimeout="3000" doc:name="HTTP">
        <set-payload value="#[flowVars.?payloadbeforecall]" doc:name="Set Payload"/>
        <set-property propertyName="eig_requestId" value="#[sessionVars.REQUEST_ID]"/>
    </http:outbound-endpoint>              
    </until-successful>              
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="RECIEVE_TIME"/>
    </custom-transformer>
       <message-filter throwOnUnaccepted="true" doc:name="Message">
        <expression-filter expression="#[payload!='']" />
    </message-filter>

    <custom-transformer class="generic.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="response"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    </sub-flow>

我试图实现流中http组件的请求池。我想限制传入请求,例如10,如果超出限制,则放弃/选择其他请求

     <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="7619" responseTimeout="2000" doc:name="HTTP-Intake">
    </http:inbound-endpoint>
    <echo-component doc:name="Echo"/>
    <custom-transformer class="transformers.XmlMapper" doc:name="Initializer">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    <choice doc:name="Choice">
        <when expression="/COMMAND/interfaceId='PRE'" evaluator="xpath">
            <flow-ref name="xml-to-servlet" doc:name="xml-to-servlet"/>
        </when>
        <otherwise>
            <custom-transformer class="exceptionhandlers.KnownExceptionHandler" doc:name="Exception Handler">
                <spring:property name="errorCode" value="404"/>
                <spring:property name="errorMessage" value="Route Not Found"/>
            </custom-transformer>
            <custom-transformer returnClass="java.lang.String" class="transformers.generic.MapToTemplate" doc:name="Map to Template">
                <spring:property name="sessionBean" ref="SessionBean"/>
                <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
            </custom-transformer>
        </otherwise>
    </choice>
    <catch-exception-strategy doc:name="Catch Exception Strategy">
        <custom-transformer class="exceptionhandlers.GenericExceptionHander" doc:name="Exception Handler"/>
        <custom-transformer returnClass="java.lang.String" class="transformers.MapToTemplate" doc:name="Map to Template">
            <spring:property name="sessionBean" ref="SessionBean"/>
            <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
        </custom-transformer>
        <custom-transformer class="logging.TDRLogsGenerator" doc:name="TDR Logs"/>
          <custom-transformer class="exceptionhandlers.AmbigousLogGenerator" doc:name="AmbiguosLogs"/>
        <echo-component doc:name="Echo"/>
    </catch-exception-strategy>
</flow>
<sub-flow name="xml-to-servlet" doc:name="xml-to-servlet">
    <custom-transformer class="transformers.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="request"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
        </custom-transformer>
    <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>               
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="SEND_TIME"/>
    </custom-transformer>
    <set-variable value="#[payload]" variableName="payloadbeforecall" doc:name="Variable" />
    <until-successful maxRetries="5"  doc:name="Until Successful" millisBetweenRetries="8000" synchronous="true">
     <http:outbound-endpoint exchange-pattern="request-response" method="POST" address="http://localhost:8080/Xml_Servlet_Simulator/XmlServlet" responseTimeout="3000" doc:name="HTTP">
        <set-payload value="#[flowVars.?payloadbeforecall]" doc:name="Set Payload"/>
        <set-property propertyName="eig_requestId" value="#[sessionVars.REQUEST_ID]"/>
    </http:outbound-endpoint>              
    </until-successful>              
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="RECIEVE_TIME"/>
    </custom-transformer>
       <message-filter throwOnUnaccepted="true" doc:name="Message">
        <expression-filter expression="#[payload!='']" />
    </message-filter>

    <custom-transformer class="generic.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="response"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    </sub-flow>
我愿意接受任何其他建议,因为我的目标是汇集线程,因为我向请求方公开流,转换并转发给第三方。

     <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="7619" responseTimeout="2000" doc:name="HTTP-Intake">
    </http:inbound-endpoint>
    <echo-component doc:name="Echo"/>
    <custom-transformer class="transformers.XmlMapper" doc:name="Initializer">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    <choice doc:name="Choice">
        <when expression="/COMMAND/interfaceId='PRE'" evaluator="xpath">
            <flow-ref name="xml-to-servlet" doc:name="xml-to-servlet"/>
        </when>
        <otherwise>
            <custom-transformer class="exceptionhandlers.KnownExceptionHandler" doc:name="Exception Handler">
                <spring:property name="errorCode" value="404"/>
                <spring:property name="errorMessage" value="Route Not Found"/>
            </custom-transformer>
            <custom-transformer returnClass="java.lang.String" class="transformers.generic.MapToTemplate" doc:name="Map to Template">
                <spring:property name="sessionBean" ref="SessionBean"/>
                <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
            </custom-transformer>
        </otherwise>
    </choice>
    <catch-exception-strategy doc:name="Catch Exception Strategy">
        <custom-transformer class="exceptionhandlers.GenericExceptionHander" doc:name="Exception Handler"/>
        <custom-transformer returnClass="java.lang.String" class="transformers.MapToTemplate" doc:name="Map to Template">
            <spring:property name="sessionBean" ref="SessionBean"/>
            <spring:property name="fixedTemplatePath" value="templates/Response.xml"/>
        </custom-transformer>
        <custom-transformer class="logging.TDRLogsGenerator" doc:name="TDR Logs"/>
          <custom-transformer class="exceptionhandlers.AmbigousLogGenerator" doc:name="AmbiguosLogs"/>
        <echo-component doc:name="Echo"/>
    </catch-exception-strategy>
</flow>
<sub-flow name="xml-to-servlet" doc:name="xml-to-servlet">
    <custom-transformer class="transformers.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="request"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
        </custom-transformer>
    <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>               
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="SEND_TIME"/>
    </custom-transformer>
    <set-variable value="#[payload]" variableName="payloadbeforecall" doc:name="Variable" />
    <until-successful maxRetries="5"  doc:name="Until Successful" millisBetweenRetries="8000" synchronous="true">
     <http:outbound-endpoint exchange-pattern="request-response" method="POST" address="http://localhost:8080/Xml_Servlet_Simulator/XmlServlet" responseTimeout="3000" doc:name="HTTP">
        <set-payload value="#[flowVars.?payloadbeforecall]" doc:name="Set Payload"/>
        <set-property propertyName="eig_requestId" value="#[sessionVars.REQUEST_ID]"/>
    </http:outbound-endpoint>              
    </until-successful>              
    <custom-transformer class="logging.LogTime" doc:name="Logging">
        <spring:property name="state" value="RECIEVE_TIME"/>
    </custom-transformer>
       <message-filter throwOnUnaccepted="true" doc:name="Message">
        <expression-filter expression="#[payload!='']" />
    </message-filter>

    <custom-transformer class="generic.InputXmlToMap" doc:name="InputXmlToMap">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.SetSessionObjects" doc:name="SetSessionObjects">
        <spring:property name="type" value="response"/>
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
     <custom-transformer class="generic.MapToTemplate" doc:name="MapToTemplate">
        <spring:property name="sessionBean" ref="SessionBean"/>
    </custom-transformer>
    </sub-flow>


您能否帮助澄清您想要实现的目标?线程配置文件不用于控制HTTP连接。感谢您的关注,我正在尝试实现流中HTTP组件的请求池。我想限制传入请求,以10为例,如果超出限制,则放弃/选择其他请求。我也愿意接受其他建议,因为我的目标是在为请求方公开流程、转换并转发给第三方时将线程集中起来。希望这能解释。好的,这有点帮助。你能添加一些显示流程本身的内容吗?入站端点或侦听器和出站端点或请求?我已经添加了完整的流,正如您所看到的,有一个http端点接收请求,所以我只需要知道如何汇集入站请求并根据配置限制它们。还有另一个http端点,它与第三方对话并作出响应。