Czy oba polecenia są równoważne? Jeśli nie, jaka jest różnica?Jaka jest różnica między Rails.cache.clear a rake tmp: cache: clear?
Odpowiedz
Zadanie rake usuwa tylko pliki przechowywane w systemie plików w "#{Rails.root}/tmp/cache"
. Oto kod dla tego zadania.
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
będzie robić różne rzeczy w zależności od ustawień aplikacji dla config.cache_store
. http://guides.rubyonrails.org/caching_with_rails.html#cache-stores
Jeśli używasz config.cache_store = :file_store
, wtedy Rails.cache.clear
będzie funkcjonalnie identyczne z rake tmp:cache:clear
. Jeśli jednak używasz innego modelu cache_store
, np. :memory_store
lub :mem_cache_store
, tylko wyczyszczenie pamięci podręcznej aplikacji zostanie wyczyszczone tylko przez Rails.cache.clear
. W takim przypadku rake tmp:cache:clear
będzie po prostu próbował usunąć pliki z "#{Rails.root}/tmp/cache"
, ale prawdopodobnie nic nie zrobi, ponieważ prawdopodobnie nic nie jest buforowane w systemie plików.
- 1. jaka jest różnica między stringstream clear a str
- 2. Różnica między session.evict kontra clear
- 3. Jaka jest różnica między cat_id a term_id?
- 4. Jaka jest różnica między IEnumerable a tablicami?
- 5. Jaka jest różnica między == a === w Verilog?
- 6. Jaka jest różnica między UseCase a Workflow?
- 7. Jaka jest różnica między pakietem a intencją?
- 8. Jaka jest różnica między węzłem a wierzchołkiem?
- 9. Jaka jest różnica między Ember.computed.alias a Ember.binding?
- 10. Jaka jest różnica między alertem a window.alert?
- 11. Jaka jest różnica między @android a android:
- 12. Jaka jest różnica między krotką a kompresją?
- 13. Jaka jest różnica między proxy a reify?
- 14. Jaka jest różnica między @Inject a @PersistenceContext?
- 15. Jaka jest różnica między sqlite3 a pdo_sqlite
- 16. Jaka jest różnica między Const a Constant?
- 17. Jaka jest różnica między Socket.IO a Firebase?
- 18. Jaka jest różnica między macierzą a tablix?
- 19. Jaka jest różnica między KERN_INVALID_ADDRESS a KERN_PROTECTION_FAILURE?
- 20. Jaka jest różnica między Float.POSITIVE_INFINITY a Float.MAX_VALUE?
- 21. Jaka jest różnica między SGML a XML?
- 22. Jaka jest różnica między Cake a Leiningen?
- 23. Jaka jest różnica między JavaBean a POJO?
- 24. Jaka jest różnica między kopiowaniem a klonowaniem?
- 25. Jaka jest różnica między HAVING a WHERE?
- 26. Jaka jest różnica między ItemTemplate a ItemPanelTemplate?
- 27. Jaka jest różnica między słownikiem a tablicą?
- 28. Jaka jest różnica między cancelBubble a stopPropagation?
- 29. Jaka jest różnica między NSString a NSMutableString?
- 30. Jaka jest różnica między StudlyCaps a CamelCase?
Kiedy zmieniliśmy magazyn pamięci podręcznej na: mem_cache_store, zauważyłem, że Rails.cache.clear również rozpoczął czyszczenie wszystkich sesji użytkownika, wylogowując wszystkich użytkowników. Czy to zamierzone zachowanie? Czy istnieje sposób na wyczyszczenie pamięci podręcznej bez dotykania sesji? (Aktualizujemy z Rails 3 do Rails 4) – sandre89