Изменения в коде не вступают в силу
Причина:
Workerman работает в режиме постоянного сохранения в памяти, что позволяет избежать повторного чтения диска и повторной интерпретации компиляции PHP, чтобы достичь максимальной производительности. Поэтому после изменения бизнес-кода необходимо вручную выполнить reload или restart, чтобы изменения вступили в силу.
В то же время Workerman предоставляет службу мониторинга обновлений файлов, которая автоматически выполняет reload при обнаружении обновлений файлов, перезагружая PHP-файлы. Разработчик может включить эту службу в проект, и она будет запущена вместе с проектом.
Обратите внимание: операционная система Windows не поддерживает reload и не может использовать службу мониторинга.
Ссылка для загрузки службы мониторинга файлов:
-
Версия без зависимостей: https://github.com/walkor/workerman-filemonitor
-
Версия с зависимостью от inotify: https://github.com/walkor/workerman-filemonitor-inotify
Различия между двумя версиями:
Версия по адресу 1 использует метод опроса времени обновления файла каждую секунду для определения, обновился ли файл.
Версия по адресу 2 использует механизм inotify ядра Linux, при обновлении файла система будет активно уведомлять Workerman.
Обычно достаточно использовать версию без зависимостей по адресу 1.