5
Hibernate \ Grails에서 가장 좋은 캐싱 정책은 무엇인가? 모든 엔티티와 쿼리 캐시 여부 및 최상의 솔루션을 찾는 방법?Grails Hibernate : 캐시하려면 또는 캐시하지 않으시겠습니까?
여기 내 최대 절전 모드 구성.
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = true
cache.provider_class = 'org.hibernate.cache.EhCacheProvider'
connection.useUnicode = true
connection.characterEncoding = 'UTF-8'
connection.provider_class = 'org.hibernate.connection.C3P0ConnectionProvider'
dialect = 'org.hibernate.dialect.MySQL5InnoDBDialect'
order_updates = true
c3p0.min_size = 5
c3p0.max_size = 20
c3p0.max_statements = 20 * 10
c3p0.idle_test_period = 15 * 60
}
으로 Ehcache 설정
<defaultCache
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="120"
timeToLiveSeconds="120"
overflowToDisk="true"
maxElementsOnDisk="10000000"
diskPersistent="false"
diskExpiryThreadIntervalSeconds="120"
diskSpoolBufferSizeMB="100"
memoryStoreEvictionPolicy="LRU"
/>
<cache
name="org.hibernate.cache.StandardQueryCache"
maxElementsInMemory="50"
eternal="false"
timeToLiveSeconds="120"
overflowToDisk="true"
/>
최상의 캐싱 정책은 다음과 같습니다. 캐싱 없음! ?? 이걸 썼을 때 어디 갔어? –
내가 쓴 것을 읽었습니까? 느린 속도에 직면했을 때의 첫 번째 본능이 사물을 캐쉬하는 것이면 잘못되었습니다. 캐싱이 도움이된다고 확신하고 그것을 측정 한 경우 캐싱이 대안입니다. 어떻게 작동하는지, 작동 할 때 그리고 작동하는 이유를 몰라도 캐시하지 않는 것이 좋습니다. – jpkrohling
나는 당신이 쓴 것을 읽었으며 5 단계 절차에 동의합니다. 나는 일반적으로 캐싱에 대한 공격적인 접근 방식과 당신의 주장을 어떻게 시작 하느냐에 동의하지 않는다. 대규모 웹 사이트에는 수많은 동적 활동과 수천 명의 사용자가 데이터베이스 또는 기타 서비스를 사용합니다. 최고의 캐싱이 아닌 캐싱을 말하는 것은 터무니 없다! ... 당신이 할머니의 블로그에 대해서 말하지 않는다면 –