PI Server не выполняет php-код с 1000 SQL-запросов - PullRequest
0 голосов
/ 08 мая 2018

У меня Raspberry Pi Model B +, что означает, что она имеет 512 МБ памяти. Я пытаюсь обновить базу данных SQL на моем Pi с помощью PHP, и я копирую транзакции от третьих лиц через их API. Это также настройка сервера LEMP, если это имеет значение.

Проблема в том, что страница запускает обновления транзакций (1900), но страница не загружается, то есть отображается сводная информация, а я просто получаю пустую страницу.

Я признаю, что это начальный этап, и код не должен обновлять более 100 транзакций за раз после первоначального копирования старой транзакции в мой Pi, но мне любопытно, в чем конкретно заключается проблема и как справиться с этим.

Код отлично работает с парой учетных записей, в которых на одну учетную запись приходится всего несколько сотен транзакций. Код заканчивается и показывает несколько строк информации о том, сколько аккаунтов обновлено и сколько транзакций.

Код не заканчивается, когда он попадает на учетную запись с почти 2000 транзакций.

Замечено:

  1. Изначально, просто запустив код на одной учетной записи, код обновил 500 транзакций, а затем остановился / потерпел крах и т. Д.

  2. При увеличении параметра www.conf max_children с 5 до 15 (даже попытался 50) код теперь обновляет все 2000 транзакций, но код не завершается, то есть на странице не отображается сводная информация, нет заголовка ( который содержит кнопки и т. д.), просто пустой экран.

  3. Я пытался добавить set_time_limit к php-коду, но, похоже, ничего особенного.

  4. просматривал журналы ошибок php, mysql и т. Д. В каталоге / var / log / messages, и в журналах ничего нет, кроме стандартных событий.

Я рад принять ограничения моего Pi, но хотел бы узнать, почему он не работает, и как им управлять.

Не поместите код, потому что есть много, но логика такая, как показано ниже, но дайте мне знать, что вы хотели бы видеть:

  1. Извлечение всех транзакций из стороннего API и сохранение в массиве.
  2. Обработка массива в новый массив, который содержит только необходимые данные, форматирование и редактирование определенных полей.
  3. Прокрутите массив и вставьте его в базу данных SQL с помощью подготовленного оператора. (Я кратко видел там транзакции sql но не заглянул в нее)
  4. Подсчет количества обновленных учетных записей и количества транзакций.
  5. Печать сводной информации.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...