11 Horas: Desactivar, limpiar la caché secundaria, y la memoria caché integrada Ehcache

0.1) Cómo deshabilitar la caché secundaria

  1 seleccione etiquetas específicas para ser cerrado en el que mapper.xml relleno

< Seleccione ID = "selectStudentById" resultType = "estudiante" parameterType = "entero" useCache = "false" > 
        seleccionar * de estudiantes donde stuno = # {stuno} 
    </ seleccione >

0.2) Limpieza: Limpieza del mismo buffer cache

 . 1  SqlSession.close () se registrará como una memoria caché; (adiciones y supresiones llevará a cabo un almacenamiento en memoria caché; razones de diseño para producir datos sucio) en la memoria caché secundaria, SqlSession.commit () consulta en sí misma no puede cometer () .

    SqlSession.commit () va a limpiar la caché y caché secundaria, pero no puede limpiar la propia consulta SqlSession.commit caché secundaria ()

 2 Añadir flushCache en Seleccionar etiqueta = "true" también puede borrar la memoria caché

0.3) tasa de aciertos:

  1.zs: 0% ===> 50% ===> 66,6% ===> 75%

0.4) Ehcache integrado caché secundaria (hay muchos caché de terceros para Ehcache por ejemplo)

  1. La necesidad de importar el siguiente paquete de tres tarro

<! - https://mvnrepository.com/artifact/net.sf.ehcache/ehcache-core -> 
< dependencia > 
    < groupId > net.sf.ehcache </ groupId > 
    < artifactId > ehcache núcleos </ artifactId > 
    < versión > 2.6.11 </ version > 
</ dependencia > 
<! - https://mvnrepository.com/artifact/org.mybatis.caches/mybatis-ehcache -> 
< dependencia > 
    < groupId > org.mybatis .cachés </groupId > 
    < artifactId > mybatis-ehcache </ artifactId > 
    < versión > 1.0.3 </ version > 
</ dependencia > 
<! - https://mvnrepository.com/artifact/org.slf4j/slf4j-api -> 
< dependencia > 
    < groupId > org.slf4j </ groupId > 
    < artifactId > slf4j-api </ artifactId > 
    < versión > 01/07/25 </ Version > 
</la dependencia >

  2. Escribir el perfil ehcache.xml

<? Xml version = "1.0" encoding = "UTF-8" ?> 
< Ehcache xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" 
         xsi: noNamespaceSchemaLocation = "http: // Ehcache .org / ehcache.xsd " 
         UpdateCheck =" false " > 
<! -     cuando la memoria caché secundaria supera el límite del objeto (el número de objeto de caché> maxElementsInMemory) cuando el archivo se almacena en el disco duro -> 
    < diskStore ruta =" E : \ U \ Ehcache " /> 

<! - 
    maxElementsInMemory: ajustar el número de objeto de caché en memoria 
    maxElementsOnDisk: establecer el número de la caché de disco duro objeto 
    overflowToDisk: establece de forma permanente la memoria caché no caduca 
    diskPersistent:Cuando el número de objetos en memoria caché de más de maxElementsInMemory de metástasis en el disco duro Cuando el número de objetos en la memoria caché excede maxElementsInMemory transfiere al disco duro si 
    timeToIdleSeconds: cuando el acceso a más del doble de este valor, el fracaso de la caché de objetos
    timeToLiveSeconds: un objeto de caché, más tiempo de almacenamiento (ciclo de vida)
    diskExpiryThreadIntervalSeconds: ¿Con qué frecuencia para limpiar la caché de disco duro de un hilo en 
    memoryStoreEvictionPolicy: estrategia, cuando el máximo de caché procesamiento de objetos: valor LRU es eliminar los menos utilizados 
-> 
    < defaultCache
             Eterna = "false" 
            maxElementsOnDisk = "1000000 " 
            maxElementsInMemory =" 1000 " 
            overflowToDisk =" false " 
            diskPersistent =" false " 
            timeToIdleSeconds =" 100 " 
            timeToLiveSeconds =" 100 " 
            diskExpiryThreadIntervalSeconds =" 120 " 
            memoryStoreEvictionPolicy =" la LRU " >
    </ DefaultCache > 
</ ehcache >

  3. Iniciar la configuración principal secundaria caché

<! -         abrir el caché secundario -> 
        < Ajuste de nombre = "cacheEnabled" valor = "true" />

  4. Escribir etiqueta de caché asignador

<! -     declarar abierta -> 
< caché del tipo = "org.mybatis.caches.ehcache.EhcacheCache" > 
<! -     Si escribe los siguientes valores anulará la configuración global de ehcache.xml -> 
<! - -     <nombre de la propiedad = valor "maxElementsInMemory" = "2000" /> -> 
<! -     <Property name = "overflowToDisk" value = "true" /> -> 
</ Cache >

  5. mybatis prueba viene con el mismo caché secundaria

Supongo que te gusta

Origin www.cnblogs.com/thisHBZ/p/12458112.html
Recomendado
Clasificación