Computer >> Máy Tính >  >> Lập trình >> Ruby

Gỡ lỗi bộ nhớ cache bị kẹt với thay đổi mã đơn giản

Bộ nhớ đệm từng phần là một cách tuyệt vời để có được một số cải tiến lớn về tốc độ trang mà không cần phải thao tác nhiều. Nhưng nếu bạn quên touch: true trên một trong các liên kết của bạn hoặc các phần phụ thuộc vào mẫu của bạn không hoạt động bình thường, các phần được lưu trong bộ nhớ cache của bạn sẽ không được cập nhật.

Vì môi trường phát triển thường chạy với bộ nhớ đệm bị vô hiệu hóa, bạn sẽ chỉ phát hiện ra điều này trong giai đoạn dàn dựng hoặc thậm chí tệ hơn là sản xuất! Để gỡ lỗi sự cố, bạn cần tạo lại sự cố ở chế độ phát triển bằng cách đặt

config / environment / development.rb
config.action_controller.perform_caching             = false

trong config/environments/development.rb của bạn thành true . Bạn sẽ phải làm điều này mỗi khi phải gỡ lỗi sự cố bộ nhớ cache và bạn sẽ phải nhớ thay đổi lại nó trước khi đăng ký. Tôi không muốn làm như vậy , vì vậy khi tôi bắt đầu một dự án mới, thay vào đó, tôi đặt nó thành cái này:

config / environment / development.rb
config.action_controller.perform_caching             = ENV['CACHING'] == 'true'

Bằng cách đó, tôi có thể bật bộ nhớ đệm bất cứ khi nào tôi cần bằng cách khởi động máy chủ Rails của mình với

CACHING=true rails server

Chỉ chạy rails server sẽ chạy với bộ nhớ đệm bị tắt như thường lệ.

Khi bạn bắt đầu tinh chỉnh các tham số cấu hình thường xuyên hơn, mô hình chuyển các tham số được mã hóa cứng thành các biến môi trường này có thể giúp bạn tiết kiệm rất nhiều thời gian. Hãy thử nó trong các dự án của riêng bạn!