Theo như tôi hiểu, một máy chủ Node.js về cơ bản là một tệp JavaScript, được chạy bởi thực thi node
. Có thể cập nhật tệp này mà không ngừng xử lý yêu cầu không?Làm cách nào để cập nhật các máy chủ Node.js đang chạy?
Tôi đoán việc thực thi nút phải được dừng cho điều này, vì vậy tôi nghĩ tôi nên sử dụng proxy ngược. Ví dụ:
- phiên bản máy chủ gốc lắng nghe trên localhost: 50001
- Proxy server lắng nghe các yêu cầu trên webinterface: 80 và chuyển chúng tới localhost: 50001
- phiên bản máy chủ mới nên được bắt đầu trên localhost: 50.002
- Proxy server chuyển tiếp mục tiêu nên được thay đổi để localhost: 50002
- phiên bản máy chủ gốc nên được dừng lại
Đây có phải là phương pháp hợp lệ không? Làm thế nào có thể cập nhật phiên bản như vậy được thực hiện tự động trên nhiều máy chủ (có thể truy cập từ cùng một mạng LAN)?
tôi sử dụng https://github.com/isaacs/node-supervisor cho các cửa sổ, nó theo dõi những thay đổi tập tin và tự khởi động lại. Trên Linux, tôi sử dụng https://github.com/nodejitsu/forever. – Dev
Cả hai công cụ đều tuyệt vời, nhưng chúng không giúp bạn ngăn máy chủ khởi động lại. –