Hai lệnh này có tương đương không? Nếu không, sự khác biệt là gì?Sự khác biệt giữa Rails.cache.clear và rake tmp: cache: clear?
Trả lời
Tác vụ cào chỉ xóa các tệp được lưu trữ trên hệ thống tệp trong "#{Rails.root}/tmp/cache"
. Đây là mã cho nhiệm vụ đó.
namespace :cache do
# desc "Clears all files and directories in tmp/cache"
task :clear do
FileUtils.rm_rf(Dir['tmp/cache/[^.]*'])
end
end
Rails.cache.clear
sẽ làm những việc khác nhau tùy thuộc vào ứng dụng của bạn thiết lập cho config.cache_store
. http://guides.rubyonrails.org/caching_with_rails.html#cache-stores
Nếu bạn đang sử dụng config.cache_store = :file_store
thì Rails.cache.clear
sẽ có chức năng giống hệt với rake tmp:cache:clear
. Tuy nhiên, nếu bạn đang sử dụng một số khác cache_store
, như :memory_store
hoặc :mem_cache_store
, thì chỉ Rails.cache.clear
mới xóa bộ nhớ cache của ứng dụng. Trong trường hợp đó, rake tmp:cache:clear
sẽ chỉ cố gắng xóa các tệp khỏi "#{Rails.root}/tmp/cache"
nhưng có thể sẽ không thực sự làm bất kỳ điều gì do không có gì có thể được lưu trữ trên hệ thống tệp.
- 1. sự khác biệt giữa bộ nhớ cache l1 và bộ nhớ cache l2 là gì?
- 2. Sự khác biệt giữa $ (...) và `...`
- 3. Sự khác biệt giữa. và #
- 4. Sự khác biệt giữa $ * và $ @
- 5. Sự khác biệt giữa ". +" Và ". +?"
- 6. Sự khác biệt giữa "**/* /" và "** /"?
- 7. Sự khác biệt giữa = và: =
- 8. Symfony2 doctrine clear cache
- 9. Sự khác biệt về sự khác biệt giữa Matplotlib giữa Agg và Cairo
- 10. Sự khác biệt giữa Html.RenderAction và Html.Action
- 11. Sự khác biệt giữa cookie và phiên?
- 12. Sự khác biệt giữa '.' và "." trong java
- 13. Sự khác biệt giữa SimpleDB và S3
- 14. C++ - Sự khác biệt giữa (*). và ->?
- 15. Sự khác biệt giữa offsetHeight và clientHeight
- 16. Sự khác biệt giữa RDLC và SSRS
- 17. Sự khác biệt giữa "\ n" và Environment.NewLine
- 18. Sự khác biệt giữa qt và PyQt4
- 19. Sự khác biệt giữa AForge và OpenCV
- 20. Sự khác biệt giữa toFixed() và toPrecision()?
- 21. sự khác biệt giữa cacao và cocoatouch
- 22. Sự khác biệt giữa smtpClient.send() và smtpClient.SendAsync()?
- 23. Sự khác biệt giữa window.location.host và window.location.hostname
- 24. Sự khác biệt giữa DTLS và TLS
- 25. Sự khác biệt giữa Mealy và Moore
- 26. sự khác biệt giữa createRfcommSocketToServiceRecord và createRfcommSocket
- 27. Sự khác biệt giữa Arrays.sort() và Arrays.parallelSort()
- 28. sự khác biệt giữa orm và pdo
- 29. Sự khác biệt giữa nproc và ulimit?
- 30. Sự khác biệt giữa apc_add và apc_store?
Khi chúng tôi thay đổi lưu trữ bộ nhớ cache thành: mem_cache_store, tôi nhận thấy rằng Rails.cache.clear bắt đầu xóa tất cả các phiên của người dùng, đăng xuất tất cả người dùng. Đó có phải là hành vi dự định không? Có cách nào để xóa bộ nhớ cache mà không cần chạm vào các phiên không? (Chúng tôi đang nâng cấp từ Rails 3 lên Rails 4) – sandre89