在需要重启的实例上重启 EC2 实例

在需要重启的实例上重启 EC2 实例

我正在使用 AWS 实例上的 PHP 脚本进行循环。根据我使用 AWS 的经验,实例停止后,正在执行的所有代码都会停止。我得到的是:

<?php
require("vendor/autoload.php");
use Aws\Ec2\Ec2Client;

$instance_id = 'instance_id';
$creds = array('key' => 'key', 
                'secret' => 'secret', 
                'region' => 'us-west-2');
$client = Ec2Client::factory($creds);
$instance = array('InstanceIds' => array($instance_id), 'DryRun' => false);

for($i=0;$i<10;$i++) {
    // Execute irrelevant code
    // .....

    $result = $client->stopInstances($instance);
    sleep(300);
    $result = $client->startInstances($instance);
}
?>

所以,我的问题是:一旦实例停止,此后写入的所有内容都不会执行,因为实例将停止,对吗?循环不会继续进行下一次迭代,对吗?如果是这样,那么我该如何解决这个问题?

相关内容