Оптимизация расходов Google Appengine

В настоящее время мы разрабатываем приложение с приложением Google для PHP и хотели бы оптимизировать наши расходы.

Несколько раз в день (утро, вечер, полночь) у нас большое количество вычислений, которые запускаются фоновым заданием. Подзадачи занимают около 3-5 минут каждая и сериализуются (то есть завершенная подзадача помещает следующую подзадачу в запрос), чтобы поддерживать одновременно как можно меньшее количество используемых экземпляров. Это приводит к довольно долгому времени расчета.

Существуют ли случаи в день (например, в полночь), когда у экземпляров более высокая стоимость?
Есть ли способы сэкономить еще немного?
Есть ли способы улучшить время вычислений, например, переставив независимые вычисления в другом порядке?

Заранее спасибо!

Изменить: Пример кода — все фоновые файлы выглядят примерно так

require_once 'google/appengine/api/taskqueue/PushTask.php';
use google\appengine\api\taskqueue\PushTask;

$cron_data = get_cron_data();
if(empty($cron_data)) {
end_cronjob($cron_data["cron_id"]);
exit();
}

$data_array = db_select ( "SELECT * FROM db_table WHERE id > ".
$cron_data["data_id"] ." ORDER BY id ASC LIMIT 5");
if(empty($data_array)) {
end_cronjob($cron_data["cron_id"]);
exit();
}

foreach($data_array as $d) {
calculate($d);
update_cronjob($cron_data["cron_id"], $d["data_id"]);
}

$task = new PushTask('/this_task', ["cron_id" =>  $cron_data["cron_id"]]);
$task_name = $task->add();
exit();

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]