2012-04-01 27 views
10

Tôi chỉ bắt đầu học Python + Tornado cho máy chủ web của mình. Mỗi lần tôi sửa đổi một số mã trên các kịch bản hoặc mẫu python của tôi, tôi phải dừng lại trong terminal (CTRL + C) và khởi động lại nó (python server.py) và tôi muốn một cách hiệu quả hơn để thực hiện điều này, sau khi sửa đổi mã một số tệp mà máy chủ sẽ tự động khởi động lại.Python + Tornado Khởi động lại sau khi chỉnh sửa các tệp

Trước đây tôi làm việc với NodeJS và sử dụng người giám sát để thực hiện việc này.

Cũng có một cách để tải lại tab trong Google Chrome để tôi có thể thấy những thay đổi mà không cần tải lại (F5)

Hiện nay tôi đang sử dụng Ubuntu 11.10 và Sublime Văn bản 2 và sử dụng tổ hợp phím CTRL + B trên văn bản siêu việt , nhưng nếu máy chủ đang chạy sẽ tạo ra lỗi vì địa chỉ và cổng đang được sử dụng. Có một sửa chữa cho điều đó mà không cần thay đổi cổng.

Cảm ơn.

Trả lời

10

Nếu bạn đang tìm nạp lại tự động các tệp .py trong quá trình phát triển. Trong số tornado.web.Application() đặt debug=True sau khi xử lý của bạn.

Tôi không nghĩ bạn nên làm điều này trong môi trường sản xuất, vì việc triển khai như vậy thường sử dụng chuỗi nền để chủ động quét tệp để thay đổi, điều này có thể làm chậm ứng dụng của bạn.

+0

Các công trình lớn, cảm ơn! – danielfrg

+1

Thực ra tôi tin rằng cơn lốc xoáy không sử dụng một chuỗi riêng biệt cho điều này mà thay vào đó hãy đăng ký các trình xử lý trên IOLoop của nó. Tuy nhiên nó phải gánh chịu một chi phí. Ngoài ra, thông báo gỡ lỗi cũng không được sử dụng trong quá trình sản xuất. –

+0

Có thể chỉ cần chuyển sang "autoreload = True" ngay bây giờ. Và có một trang tài liệu ở đây: http://www.tornadoweb.org/en/stable/autoreload.html – Ross

Các vấn đề liên quan