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

时间:2015-05-27 10:05:00

标签: mule

这是我配置为测试一个线程的内容,但是即使将其限制为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组件的请求实现池化。我想限制传入请求,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>

0 个答案:

没有答案