2013-09-16 3 views
0

PHP 용 Amazon AWS SDK를 사용하여 상당히 복잡한 쿼리를 수행해야합니다.
가장 효율적인 방법은 PHP's MultiCurl입니다. MultiCurl에 대한 Guzzle already has 기능이 내장되어 있습니다.Guz 's MultiCurl이있는 Amazon AWS PHP SDK?

AWS SDK에서 제공하는 표준 방법을 사용하면 자동으로 MultiCurl이 사용됩니까? 아니면 직접 사용을 지정해야합니까? 예 : $sns->Publish() 번으로 전화하십시오.

감사합니다.

답변

1

병렬 요청은 일반 Guzzle에서와 똑같이 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이 방식으로 명령 객체 작업에 대한 자세한 정보가 있습니다.

+0

감사합니다. 이것은 훌륭합니다! – SteveMc