【问题标题】:503 by match between two databases [duplicate]503通过两个数据库之间的匹配[重复]
【发布时间】:2017-09-06 13:57:21
【问题描述】:

我一直在从事一个在两个数据库之间搜索匹配项的项目,但是当 cronjob 运行时,我会收到 503 错误。

变量源是像'Peter' 或'Margot' 这样的名字。 name_key 是数组的键,如 'name' 或 'event'。

global $dbh;
global $dbh_second;

$import_sql = $dbh->prepare('SELECT name_key FROM imports WHERE name = :source');
$import_sql->bindParam(':source', $source, PDO::PARAM_STR);
$import_sql->execute();
$name = $import_sql->fetch(PDO::FETCH_ASSOC);

$source = strtolower($source);
$import_data_sql = $dbh->prepare('SELECT * FROM import_data WHERE source = :source AND import_key = :key');
$import_data_sql->bindParam(':key', $name['name_key'], PDO::PARAM_STR);
$import_data_sql->bindParam(':source', $source, PDO::PARAM_STR);
$import_data_sql->execute();
$import_data = $import_data_sql->fetchAll(PDO::FETCH_ASSOC);


foreach ($import_data as $filter) {

    $column = $filter['import_key'];
    $party_sql = $dbh_second->prepare("SELECT * FROM `digi_gz_parties` WHERE name LIKE :value");
    $party_sql->bindParam(':value', $filter['import_value'], PDO::PARAM_STR);
    $party_sql->execute();

    if($party = $party_sql->fetch(PDO::FETCH_ASSOC)) {

        $import_check_sql = $dbh->prepare('UPDATE import_data SET status = 1 WHERE source = :source AND import_value LIKE :value AND created_at = :max');
        $import_check_sql->bindParam(':max', $filter['max_data'], PDO::PARAM_STR);
        $import_check_sql->bindParam(':value', $filter['import_value'], PDO::PARAM_STR);
        $import_check_sql->bindParam(':source', $source, PDO::PARAM_STR);
        $import_check_sql->execute();

    }

}

是他们的另一种解决方案,还是我需要将超时秒数设置得更高?

非常感谢!

【问题讨论】:

  • 您在网络服务器 (Apache ?) 错误日志中收到的错误消息是什么?
  • 503 超时 30 秒。
  • 超时。你应该增加执行时间 set_time_limit(0);
  • 是的,但这是唯一的解决方案吗?

标签: php pdo cron


【解决方案1】:

您需要批量获取记录,否则会花费太长时间并超时。看看一些优化:索引、缓存等。

【讨论】:

  • 服务在线。系统需要检查的记录是 9000,如果我用 1000 执行它,它会正确执行而不会出现 503 错误,但高于 1000 的所有记录都会出现 503 错误。
猜你喜欢
  • 2020-07-12
  • 1970-01-01
  • 1970-01-01
  • 2015-09-11
  • 1970-01-01
  • 2018-07-28
  • 2023-03-30
  • 2020-01-31
  • 2018-07-10
相关资源
最近更新 更多