PHP WebSocket: подключение к серверу MySQL все еще включено, но не работает

У меня странная проблема, которая беспокоила меня в течение нескольких дней: я использую скрипт php websocket для интранет-сайта, чтобы предупредить персонал об определенных вещах. Это было дешевое и довольно простое в реализации решение, и оно отлично работает. Тем не менее, я должен перезагрузить сервер каждое утро.

так как код php выполняется в бесконечном цикле и каждая задача выполняется последовательно, а не одновременно, я предположил, что достаточно одного постоянного соединения с БД, поэтому я просто открываю соединение прямо в начале кода с помощью переменной $ GLOBALS и использовать его снова и снова. он работает нормально до следующего утра, когда все запросы вернутся как ложные. связь еще жива. ловцы ошибок, такие как «-> connect_error» а также «-> Connect_stat ()«не вернет ошибки.

очевидно, MySQL запускает проверку самообновления каждую ночь в полночь. Я не уверен, что это вызывает проблемы, но я надеюсь, что мне не придется отключать эту функцию.

единственный способ обойти эту проблему — отправить запрос, который может вернуть только положительный ответ. если это не так, он закрывает и снова открывает соединение. это не кажется мне умным. должен быть способ определить, когда соединение становится ненадежным.

Я использую последние версии PHP и MySQL.

есть идеи?

2

Решение

Возможно, не произошла ошибка подключения, поскольку она успешно подключилась первой … Проверьте последнюю ошибку вместо $mysqli->error, Вы, вероятно, получите «Mysql Server исчез». Если вы это сделаете, вы можете закрыть соединение и перезапустить новое.

0

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

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

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