My question is wouldn't it be a good idea (if it is possible) to have
servicemix set the status of the exchange to error when the sendSync timeout
occurs?  At least that way, applications could handle the error however they
feel is appropriate without tying up these threads?


Freeman Fang wrote:
> 
> Hi,
> This is same issue as we discussed before
> http://cwiki.apache.org/SM/discussion-forums.html#nabble-td21217362
> You need add jetty threadpool configuration for your cxf bc consumer, 
> for example, assume you are test the cxf-wsdl-first example
> add busCfg="jettyThreadPool.xml" attribute for your cxf bc consumer 
> endpoint configuration
> and the jettyThreadPool.xml should be
> <beans xmlns="http://www.springframework.org/schema/beans";
>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>   xmlns:sec="http://cxf.apache.org/configuration/security";
>   xmlns:http="http://cxf.apache.org/transports/http/configuration";
>   xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration";
>   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";
>   xsi:schemaLocation="
>        http://cxf.apache.org/configuration/security                   
> http://cxf.apache.org/schemas/configuration/security.xsd
>             http://cxf.apache.org/transports/http/configuration
>             http://cxf.apache.org/schemas/configuration/http-conf.xsd
>             http://cxf.apache.org/transports/http-jetty/configuration
>             http://cxf.apache.org/schemas/configuration/http-jetty.xsd
>             http://www.springframework.org/schema/beans
>             
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd";>
> 
>   <http:destination 
> name="{http://servicemix.apache.org/samples/wsdl-first}soap.http-destination";>
>   </http:destination>
> 
>   <httpj:engine-factory bus="cxf">
>    <httpj:engine port="8092">
>        <httpj:threadingParameters minThreads="1" maxThreads="12" />
>        <httpj:connector>
>            <bean class="org.mortbay.jetty.nio.SelectChannelConnector">
>                <property name = "port" value="8092" />
>                <property name="threadPool">
>                    <bean class="org.mortbay.thread.BoundedThreadPool"/>
>                </property>
>            </bean>
>        </httpj:connector>
>    </httpj:engine>
>   </httpj:engine-factory>
> 
> Ideally, the concurrent request should be less than the corePoolSize for
> servicemix-cxf-se component, so that the request dispatch to 
> servicemix-cxf-se will not be queued(which will cause the timeout as you 
> see).
> (for example the corePoolSize by default for servicemix-cxf-se is 16, 
> then set maxThreads="12" for cxf bc consumer jetty would be fine, which 
> means at most there would be 12 concurrency request dispatch to 
> servicemix-cxf-se)
> 
> Freeman
> 
> timm01 wrote:
>> Hi,
>>
>> I have a question regarding to ServiceMix performance issue.
>> When JMeter test case starts 100 threads simultaneously for querying
>> PersonService (wsdl-first-cxf) , then ServiceMix hanging on after about
>> 33
>> users and breaks connection after timeout with "sendSync timeout"
>> exception.  
>> But our system should support at least 100 users.
>>
>> How can we fix this bug (or tweak the configuration)?
>> Threads dump:  http://www.nabble.com/file/p23195483/thread_dump.txt
>> thread_dump.txt 
>>
>> We used:
>> wsdl-first-cxf-sa-3.3.1.12-fuse.zip from iona fuse examples.
>> ServiceMix 3.3.1.12
>> WinServer2003
>>
>> Thanks in advance,
>>   
> 
> 
> -- 
> Freeman Fang
> ------------------------
> Open Source SOA: http://fusesource.com
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/cxf-bc-load-testing-tp23195483p26730799.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to