Toon posts:

[PHP] Nusoap & webservice: Pooled connections error

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik roep een (custom made) webservice aan met behulp van een php script dat Nusoap gebruikt.
Ik krijg echter na een tijdje de volgende error:

Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool.
This may have occurred because all pooled connections were in use and max pool size was reached.


Kan iemand hier misschien uit opmaken waar de fout ligt?
Is dat bij het PHP gedeelte (Nusoap class?) of bij de webservice...?

Dus kan het zijn dat bijvoorbeeld in het Nusoap script de connectie niet gesloten wordt?
Of gebeurd dat niet goed bij de webservice...?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Kom op guys.. niemand een idee...?
Kan iemand me anders uitleggen hoe het zit met die pooled connections?
Kan zoiets beinvloed worden met PHP, of is dat alleen te regelen op de server waar de webservice draait..?

Acties:
  • 0 Henk 'm!

Verwijderd

google

handig he google

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 21-09 02:21

Janoz

Moderator Devschuur®

!litemod

@Ph0enix:

Dat slaat natuurlijk nergens op. De resultaten die jij post zijn in deze context nauwelijks relevant. Tenzij ilusix natuurlijk geen idee heeft over wat een pooled connection is

@ilusix:

Je hebt het over een custom made aanroep via nusoap op een custom made webservice. Verder wordt nergens een stukje code gegeven, en al helemaal geen invormatie over de aangeroepe webservice (platform, implementatie enz enz). Op die manier wordt het natuurlijk heel moeilijk om iets over je probleem te zeggen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
@Ph0enix:
zeg dan niks... ik heb zelf ook wel eens van google gehoord...

@Janoz:
Ik weet niet hoe zij de webservice hebben ingericht, 't is een externe partij. Ik weet wel dat zij een stresstest hebben uitgevoerd (echter niet m.b.v. php), en dat dat geen problemen oplevert...

code:
1
2
3
4
5
6
require('inc/soap/nusoap.php');
$webservice = "xxx";
$Parameters = array("Verify_ID"=>xx,"Language_ID"=>x);
$Soapclient = new soapclient($webservice,'wsdl');
$XML_resultaat = $Soapclient->call("Name",$Parameters) or die("Error!");
print_r($XML_resultaat);

Bij het veelvuldig aanroepen krijg ik op een gegeven moment ipv de bedoelde XML pagina een array terug:
code:
1
2
3
4
5
6
Array
(
    [faultcode] => soap:Server
    [faultstring] => Server was unable to process request. --> Timeout expired.  The timeout period elapsed prior to obtaining a connection from the pool.  This may have occurred because all pooled connections were in use and max pool size was reached.
    [detail] => 
)


Kan PHP (Nusoap) de oorzaak zijn van de bovenstaande error..?
En kan ik het poolen beinvloeden m.b.v. PHP?

[ Voor 9% gewijzigd door Verwijderd op 10-05-2005 14:55 ]


Acties:
  • 0 Henk 'm!

  • xp2002
  • Registratie: Augustus 2002
  • Laatst online: 30-08 16:27
Ik heb zelf hier nusoap werken met een lokale webservice. Dus ik herken helaas je probleem niet. Heb je zelf al eens een connectie gemaakt met een -liefst lokale- werkende webservice?

Want misschien ligt het wel aan je internet connectie (proxy, gateway etc)

Acties:
  • 0 Henk 'm!

  • mcB
  • Registratie: Mei 2002
  • Laatst online: 15-09 08:39

mcB

Het lijkt op een fout in de webservice en niet in het PHP gedeelte. Het is op de server waar de webserver een connectie uit een connectionpool haalt. NuSoap heeft daar niets mee te maken.

Probeer met je PHP script maar eens een andere publieke webservice aan te roepen. Dat zal waarschijnlijk geen probelemen opleveren.

Strix (Skullflame)


Acties:
  • 0 Henk 'm!

Verwijderd

Als je wilt uitzoeken aan welke kant de error gegenereerd wordt, dan zou je een http tracer kunnen gebruiken om het http verkeer te monitoren. Bijvoorbeeld: http://www.lazydogutilities.com/traceprev.htm. Deze werkt als een proxy server. Als het goed is kun je in de PHP code bij de request een proxyserver opgeven.
Pagina: 1