2010-07-11 4 views
0

Je objet Company etcache en veille prolongée

@OneToMany(fetch = FetchType.EAGER, cascade = { CascadeType.ALL }, mappedBy = "company") 
@Column(nullable = false) 
Set<User> getUsers() 

que vous conseilleriez la mise en cache la collection getUsers performances sage?

Répondre

0

Cela dépend de la fréquence à laquelle la méthode getUsers() est appelée par les utilisateurs/utilisateurs de votre application. Si pour le moment getUsers() ne provoque pas de dégradation sensible des performances dans votre application, vous pouvez le laisser tel quel. Sinon, vous pourriez envisager de le mettre en cache et de comparer son impact sur les performances de votre application. Parfois, la mise en cache peut dégrader les performances d'une application lorsque la mémoire allouée à votre processus Java est insuffisante (par exemple Tomcat.)

0

Il n'y a pas de réponse générale à votre question qui dépend de nombreux critères (l'objet est-il en lecture seule? «lire la plupart du temps? lire/écrire? Quelle est la taille de la collection? Comment va votre mémoire? vous de nombreuses instances de serveur d'application exécutez-vous par machine? etc).

Je suggère toujours de lire Collection Caching in the Hibernate Second Level Cache cependant.

Questions connexes