0
我需要执行与Amazon的AWS SDK的PHP一些相当沉重的查询。
最有效的方法是使用PHP's MultiCurl。看起来Guzzle already has内置MultiCurl功能。亚马逊AWS PHP SDK与Guzzle的MultiCurl?
是否使用AWS SDK提供的标准方法自动使用MultiCurl,还是必须直接指定它的用法?例如。呼叫$sns->Publish()
30次。
谢谢!
我需要执行与Amazon的AWS SDK的PHP一些相当沉重的查询。
最有效的方法是使用PHP's MultiCurl。看起来Guzzle already has内置MultiCurl功能。亚马逊AWS PHP SDK与Guzzle的MultiCurl?
是否使用AWS SDK提供的标准方法自动使用MultiCurl,还是必须直接指定它的用法?例如。呼叫$sns->Publish()
30次。
谢谢!
并行请求工作完全在SDK一样纯狂饮和不采取MultiCurl的优势。例如,你可以做这样的事情:
$message = 'Hello, world!';
$publishCommands = array();
foreach ($topicArns as $topicArn) {
$publishCommands[] = $sns->getCommand('Publish', array(
'TopicArn' => $topicArn,
'Message' => $message,
));
}
try {
$successfulCommands = $sns->execute($publishCommands);
$failedCommands = array();
} catch (\Guzzle\Service\Exception\CommandTransferException $e) {
$successfulCommands = $e->getSuccessfulCommands();
$failedCommands = $e->getFailedCommands();
}
foreach ($failedCommands as $failedCommand) { /* Handle any errors */ }
$messageIds = array();
foreach ($successfulCommands as $successfulCommand) {
$messageIds[] = $successfulCommand->getResult()->get('MessageId');
}
// Also Licensed under version 2.0 of the Apache License.
的AWS SDK for PHP User Guide有大约以这种方式与命令对象的详细信息。
谢谢!这很棒! – SteveMc