Die NHibernate documentation und das Buch NHibernate In Action geben an, dass der Cache-Provider NHibernate.Cache.HashtableCacheProvider
nicht für den produktiven Einsatz gedacht ist. Ich konnte jedoch keinen Grund dafür finden. Kennt jemand den Grund?Warum ist NHibernate.Cache.HashtableCacheProvider nicht für den Produktionseinsatz vorgesehen?
13
A
Antwort
12
Weil es keine vernünftige Caching-Semantik unterstützt (das erste Beispiel, das mir in den Sinn kommt: Timeouts), und es grundsätzlich unbegrenzt wächst.
Es ist nur zum Testen gedacht, da es nur die einfachste Implementierung eines lokalen Cache bietet.
Verwandte Themen
- 1. Schienen: Ist Passenger Standalone für den Produktionseinsatz geeignet?
- 2. Ist gevent + gunicorn skalierbar und stabil für den Produktionseinsatz?
- 3. Warum klar: richtig funktioniert nicht wie vorgesehen
- 4. Wenn der 'Accessibility Identifier' für UI-Automatisierungstests vorgesehen ist, warum ist er in lokalisierbaren Ressourcen enthalten?
- 5. MomentJS - Vorgesehen für die Eingabevalidierung?
- 6. Sperrblatt funktioniert nicht wie vorgesehen
- 7. Sind Schaltsekunden für Calendar vorgesehen?
- 8. IEqualityComparer funktioniert nicht wie vorgesehen
- 9. Warum einfache Haskell hinzufügen Funktion nicht wie vorgesehen verhalten?
- 10. Quiz funktioniert nicht wie vorgesehen
- 11. jQuery.on() Funktion funktioniert nicht wie vorgesehen
- 12. Singleton Scope-Bindung funktioniert nicht wie vorgesehen
- 13. PHP: apc_store funktioniert nicht wie vorgesehen
- 14. D3.js Übergang funktioniert nicht wie vorgesehen
- 15. Warum ist meine Heuristik für den A * -Algorithmus nicht zulässig?
- 16. GLFW Eingabehandhabung funktioniert nicht wie vorgesehen
- 17. JS bekommen Breite funktioniert nicht wie vorgesehen
- 18. ProximityMonitoring funktioniert möglicherweise nicht wie vorgesehen
- 19. Canvas-Animation funktioniert nicht wie vorgesehen
- 20. html css Layout nicht wie vorgesehen
- 21. C++ Destruktor funktioniert nicht wie vorgesehen
- 22. Android layout_weight funktioniert nicht wie vorgesehen
- 23. SharedPreferences Code funktioniert nicht wie vorgesehen
- 24. Manuelle Diashow funktioniert nicht wie vorgesehen
- 25. CORS Filter funktioniert nicht wie vorgesehen
- 26. Gemeinsame Voreinstellungen funktionieren nicht wie vorgesehen
- 27. HTML/CSS-Hover funktioniert nicht wie vorgesehen
- 28. MySQL distinct funktioniert nicht wie vorgesehen
- 29. Mein substr() funktioniert nicht wie vorgesehen
- 30. Verschmelzen von Hashes in Ruby funktioniert nicht wie vorgesehen
"Ein Cache mit einer ungültigen Richtlinie ist ein anderer Name für ein Speicherleck." http://blogs.msdn.com/b/oldnewthing/archive/2006/05/02/588350.aspx – codekaizen
Vielen Dank! Das unbestimmte Wachstum ist bereits Grund genug für mich, es nicht in meiner Anwendung zu verwenden. Könnten Sie jedoch bitte das vernünftige Caching-Semantik-/Timeout-Problem näher erläutern? Und was genau ist mit Tests gemeint - "echte" Tests (Unit-Testing etc.) oder nur ein paar spontane "Play-Around" -Tests? –
@Marco: Der Cache muss in der Lage sein, die Nutzung begrenzter Ressourcen (Speicher) durch Prioritätensetzung, Handhabung von Abhängigkeiten, Verfall ... zu optimieren. HashtableCache reicht für Komponententests (wenn beispielsweise behauptet wird, dass das gleiche Repository zweimal aufgerufen wird) ein DB-Aufruf). Es ist auch toll zum Spielen, weil es vorhersehbar ist. –