meabed / php-parallel-soap Goto Github PK
View Code? Open in Web Editor NEWAsynchronous, Parallel, Multi-Curl PHP SoapClient
License: MIT License
Asynchronous, Parallel, Multi-Curl PHP SoapClient
License: MIT License
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These problems occurred while renovating this repository. View logs.
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
phpstan/phpstan
, phpunit/phpunit
)composer.json
php >=8
psr/log ~1.1|~2.0|~3.0
phpunit/phpunit ~9|~10
squizlabs/php_codesniffer 3.10.1
overtrue/phplint 9.3.1
phpstan/phpstan 1.11.4
.github/workflows/ci-8.0.yml
actions/checkout v4
shivammathur/setup-php v2
.github/workflows/ci-8.1.yml
actions/checkout v4
shivammathur/setup-php v2
.github/workflows/ci-8.2.yml
actions/checkout v4
shivammathur/setup-php v2
Hello,
thanks for your work, appreciate this a lot and I think it is exactly what I need.
I have a SOAP interface in business context, where I need to pass raw XML, generated/modified per request, to several methods. I would like to use your ParallelSoapClient to do async parallel requests to one specific method, where each request has a (slightly) different XML "body". Is this possible? Thanks in advance,
Oliver
Hi,
I am running your code and it get stuck. It will literally run forever:
while ($active && $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}
I can see this through my xdebug_break();
Here is how I am trying to use:
public function otaAirAvailRq(){
$otaAirAvailRq = [];
$SabreSoap = new \SoapClientAsync(__DIR__.'/SabreXML/OTA_AirAvailLLS2.1.1RQ.wsdl', ['trace' => 1]);
$SabreSoap->__setSoapheaders($this->_setSabreHeaders('OTA_AirAvailLLSRQ', 'OTA_AirAvailLLSRQ', false));
foreach ($this->Itinerary->getLegs() as $leg){
$requestIds[] = $SabreSoap->OTA_AirAvailRQ($this->_buildAvailRequest($leg, '2.1.1'));
}
//this is where it gets stuck in an endless loop.
foreach ($SabreSoap->run($requestIds) as $response){
$otaAirAvailRq[] = $response->Return;
}
return $otaAirAvailRq;
}//end of otaAirPriceLlSrq
curl_multi_select($mh) != -1
is always -1.. and there is nothing to change it. Seems like this is a logic error on the client. Its in a endless loop
Hi,
I was trying to install your package via composer.
I got this error:
[InvalidArgumentException] Could not find package meabed/asynchronous-soap at any version for your minimum-stability (stable). Check the package spelling or your minimum-stability
I had to change my minimum stability to dev
in order to properly install it.
Do you have an minimum stable version? Can you just take the version you have to show that it is stable...
Thanks,
php-parallel-soap/src/ParallelSoapClient.php
Line 345 in 3ee8626
and
ParallelSoapClient::getResponseResult(): Return value must be of type string, stdClass returned in parallel_soap_client.php on line 546
public function getResponseResult(string $method, $args): string {
$resFn = $this->resFn;
return $resFn($method, $res);
= fixed =
Hello.
When running multiple soap requests with setMulti(true), CPU load is 100%. This behavior shows especially when endpoints work slowly. This happens in the lines:
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc === CURLM_CALL_MULTI_PERFORM || $active);
Possible solution is to call usleep or to call curl_multi_select in the loop.
OS: Debian 10
PHP version: 7.2.34
CURL version: 7.64.0
Is your feature request related to a problem? Please describe.
some applications & libs use php v8 & "psr/log": "~2.0". It make a conflict to use php-parallel-soap
Describe the solution you'd like
composer defination like - "psr/log": "~1.1|~2.0|~3.0",
Hey man,
I'm having immense trouble with this. My script keeps timing out after 30 seconds (max exec). The reason for this is because of line 203.
curl_multi_select()
is always returning -1 (no I am not running 5.3.18!) and I can't for the life of me figure out why...
Are you able to shed any light?
How to use proxy host / port option s? Usage of the SoapClient proxy_host and proxy_port options is ignored.
Is it possible to specify with something else ?
Can this option be handled by the ParallelSoapClient class ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.