Я разработал одностраничное приложение в VueJS2, системе POS, которая поддерживается бэкэндом PHP. Интерфейс делает частые вызовы API через AJAX к PHP бэкэнду, используя библиотеку ax ios. Библиотека ax ios имеет время ожидания, установленное на 10000 мс.
Ограниченное количество аппаратных устройств может использовать это приложение. Максимальное количество устройств, которые могут войти в систему и использовать приложение, будет около 50-60.
Приложение работает нормально, но приложение возвращает периоды c: «Ошибка: превышено время ожидания 10000 мс». Даже для большинства базовых c функций.
Например, каждые 30 с запускается вызов API, чтобы проверить, действителен ли токен, используемый для входа в систему. Если нет, пользователь выходит из системы. Это очень простая функция, которая мало что делает, мне просто нужно выполнить этот запрос, чтобы я мог проверить запрос и выйти из системы, если токен больше не действителен. (Эта специфицированная c функция довольно часто возвращает этот тайм-аут). Также нет определенного шаблона c. В некоторые дни этого не происходит, иногда довольно часто. Это не единственная функция, которая запускает тайм-аут. Некоторые другие делают, но в большинстве случаев именно этот.
Журнал ошибок Rollbar:
public function check()
{
if (!$this->getRequest()->is('get')) {
$this->_respondWithMethodNotAllowed();
return;
}
exit('ok');
}
Приложение работает на облачном VPS, высокая Конечный сервер CentOS (6.10), содержащий 16 ГБ ОЗУ и 8 ЦПУ. Apache использует MPM worker и имеет значение Server Limit / Max Request Workers, равное 512. Аппаратное обеспечение не кажется проблемой, я думаю?
Кто-нибудь получил какие-нибудь предложения, на которые я мог бы взглянуть? Я настраивал некоторые настройки сервера, но это не помогло, поэтому у меня заканчиваются варианты :)
Заранее спасибо