У меня есть объект Company и
@OneToMany(fetch = FetchType.EAGER, cascade = { CascadeType.ALL }, mappedBy = "company") @Column(nullable = false) Set<User> getUsers()
Вы рекомендуете кэшировать коллекцию getUsers производительность разумно?
Не существует общего ответа на ваш вопрос, который зависит от многих критериев (является ли объект доступным только для чтения? В основном для чтения? Для чтения / записи? Насколько велика коллекция?для каждой машины? etc).
Я все еще предлагаю прочитать Кэширование коллекций в Hibernate Кэш второго уровня .
Это зависит от того, как часто пользователи или пользователи вашего приложения вызывают метод getUsers(). Если в настоящий момент getUsers() не вызывает заметного снижения производительности вашего приложения, вы можете оставить все как есть. В противном случае вы можете рассмотреть возможность его кэширования и сравнить его влияние на производительность вашего приложения. Иногда кэширование может ухудшать производительность приложения, когда у вас недостаточно памяти для процесса Java (например, Tomcat.)
getUsers()