Зачем необходимо перезапустить сервер NodeJS при изменении файла? Нужны ли другие серверы, такие как Apache, IIS, nginx, или они могут перезапускаться автоматически?Почему сервер узла необходимо перезапустить при смене файла?
ответ
Вы не говорите, какие файлы вы говорите, поэтому я расскажу о проблемах с несколькими различными типами файлов.
Для файлов Javascript, которые составляют ваш Javascript-код для вашего узла.js server, node.js является постоянно работающим сервером. Это означает, что когда сервер запускается, он анализирует ваш код Javascript в памяти и затем начинает его выполнять. Этот процесс сервера будет работать до тех пор, пока вы его не остановите. Поскольку node.js является постоянно работающим сервером, если вы хотите обновить файлы Javascript, составляющие код сервера, вам необходимо остановить сервер и перезапустить его, чтобы он загружал и повторно просматривал вновь измененные исходные файлы.
Это очень отличается от PHP с Apache, который запускает заданный PHP-скрипт с нуля для каждого отдельного запроса. Так как не существует давно работающего PHP-приложения, и каждый скрипт PHP запускается с нуля для каждого запроса, он автоматически может выбрать новый измененный PHP-скрипт без перезапуска сервера Apache. Если у вас был длинный сервер, полностью написанный на PHP, тогда он, вероятно, будет иметь подобное поведение, как node.js.
И если вы хотите обновить код сервера Apache, вам придется перезапустить Apache (как с node.js).
Вы можете думать о node.js как о Apache + PHP в одном, так как функции обоих обычно удовлетворяются только node.js сами по себе. Он объединяет функциональность веб-сервера с логикой webapp, в то время как они разделены с Apache + PHP.
Для HTML файлов или файлов JavaScript, которые обслуживаются сервером и доставленные в браузер, то, как правило, нет необходимости перезагружать сервер для новых версий этих файлов, которые будут при последующих запросах браузера. Но это немного зависит от используемой вами структуры сервера и того, как именно она реализует кеширование файлов. Это поведение не специфично для node.js, но будет встроено в любой код, который вы использовали для обслуживания файлов вашим веб-сервером (например, Express или что-то в этом роде).
Спасибо за такое краткое объяснение. – rajagopalx
- 1. Как перезапустить сервер узла на изменение файла
- 2. Необходимо перезапустить сервер ради рассылки
- 3. Как автоматически перезапустить сервер узла
- 4. В каких случаях необходимо перезапустить сервер JBoss?
- 5. Необходимо перезапустить сервер App Engine при изменении сервлета
- 6. Автообновление браузера при смене файла?
- 7. Почему сервер необходимо перезагрузить при обновлении файла модели?
- 8. Когда необходимо перезапустить Sensu
- 9. Почему монит не перезапустить сервер
- 10. Tomcat необходимо перезапустить 2 раза при загрузке нового файла войны
- 11. Почему мы перезапускаем сервер при изменении файла?
- 12. Почему CruiseControl.NET необходимо перезапустить после GetCcNetConfigFiles?
- 13. Почему Envoyer необходимо перезапустить PHP FPM при развертывании?
- 14. Как заставить SocketCluster перезагрузиться при смене файла?
- 15. Tomcat необходимо перезапустить из-за сообщений яшмы
- 16. Необходимо перезапустить WampServer часто
- 17. Узел компиляции при смене файла
- 18. Почему angularJS необходимо запустить сервер?
- 19. Для каждого изменения кода необходимо экспортировать войну и перезапустить сервер
- 20. Node.js не перезапускает сервер при смене файлов .js?
- 21. C# перезапустить tcp-сервер
- 22. Перезапустить tomcat при изменении файла класса?
- 23. Необходимо перезапустить JBoss после каждого теста
- 24. Почему Android Debug Bridge (adb) необходимо перезапустить часто?
- 25. Почему этот запрос на сервер узла зависает?
- 26. Как перезапустить фляжный сервер?
- 27. Перезапустить TCP-сервер
- 28. Перезапустить HTTP-сервер Poco
- 29. Как перезапустить сервер rails
- 30. Tomcat необходимо перезапустить после перезагрузки базы данных
Существует разница между файлами, которые способствуют определению поведения сервера (выполняется Node.js) и файлам, которые сервер может обслуживать до клиента. Если вы хотите загрузить и изменить исходный код для Apache или nginx, да, вам придется перезапустить (и перестроить) их, чтобы увидеть, как эти изменения вступают в силу. То же самое относится к сценариям, выполняемым Node.js. (Node.js не является сервером таким же образом, как Apache и т. Д. Это платформа, которая помогает вам определять собственные серверные приложения - собственный Apache и т. Д.). –
Хотя вы должны понять, почему сервер необходимо перезапустить, вы можете использовать [nodemon] (https://www.npmjs.com/package/nodemon), чтобы обойти эту проблему. Это небольшой скрипт, который обнаруживает изменения файлов и соответственно перезапускает сервер (чрезвычайно полезен для сред разработчиков). – Matt