Dne 10. listopadu 2010 15:06 Kamil Podlesak <[email protected]>
napsal(a):
> Nevím sice co by na tom mělo být za prasárnu, nicméně problém je ještě

Protože asynchronní volání je simulováno synchronním a tím pádem se
drží všechny zdroje navázané na to volání a tedy brzy dojdou.

> horší: nejen že tam jsou volaní delší než 60 sekund, ale je jich
> tolik, že došlo k vyčerpání poolu na HTTP spojení.

A proto také došlo k tomuto. Defaultně se HTTP pool nastavuje na 100 s
timeoutem minuta a frontou maximálně deset krát větší než je pool.
Potom se dostáváme k výkonnosti necelé dva požadavky za sekundu. A to
mi v roce 2010 příjde setsakra málo.

>
> Timeout sice lze změnit, ale bylo by asi vhodné pořádně prozkoumat zda
> to vůbec pomůže.
>
> Kamil Podlešák
>
> On 10 November 2010 14:52, Oto Buchta <[email protected]> wrote:
>> Chapu to spravne, ze pouzivas takovou prasarnu, jakou je synchroni
>> volani pres HTTP transport, ktere trva dele nez 60 sekund?
>>
>> 2010/11/10 tester tester <[email protected]>:
>>> Zdravim,
>>>
>>> rad by som sa spytal ci niekto riesil problem na Axis2 (klient) s 
>>> timeoutom. Zmenil som povodneho ws klienta na generovaneho Axisom2  a ked 
>>> spustim volanie WS tak po asi minute zacne lietat toto :
>>>
>>> SEVERE: null
>>> org.apache.axis2.AxisFault: Timeout waiting for connection
>>>        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>>>        at 
>>> org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:203)
>>>        at 
>>> org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:76)
>>>        at 
>>> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:400)
>>>        at 
>>> org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:225)
>>>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:435)
>>>        at 
>>> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402)
>>>        at 
>>> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
>>>        at 
>>> org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
>>>        at 
>>> com.thalesgroup.rtti._2010_04_26.ldb.LdbStub.getArrivalBoard(LdbStub.java:808)
>>>        at org.spiritline.ws.TestAxis2.run(TestAxis2.java:52)
>>> Caused by: org.apache.commons.httpclient.ConnectionPoolTimeoutException: 
>>> Timeout waiting for connection
>>>        at 
>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:497)
>>>        at 
>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:416)
>>>        at 
>>> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:153)
>>>        at 
>>> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
>>>        at 
>>> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
>>>        at 
>>> org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:542)
>>>        at 
>>> org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:199)
>>>        ... 9 more
>>>
>>> Je nejaka cesta ako nastavit timeout ?
>>>
>>> t.
>>>
>>
>>
>>
>> --
>> Oto 'tapik' Buchta, [email protected], http://tapikuv.blogspot.com
>>
>



-- 
Oto 'tapik' Buchta, [email protected], http://tapikuv.blogspot.com

Odpovedet emailem