Carga previa automática de ObjectCache de WSJPA
La extensión WSJPA (WebSphere Java™ Persistence API) para OpenJPA proporciona una memoria caché de objeto de sólo lectura que puede mejorar el rendimiento en determinados casos de uso. De forma predeterminada, los datos de la memoria caché se cargan en un método poco activo, lo que significa que las entidades individuales se cargan en la memoria cuando lo solicita una aplicación. Sin embargo, si desea cargar todas las entidades desde el principio, puede configurar el servidor de aplicaciones para cargar previamente todas las entidades de la base de datos que se han configurado en ObjectCache. La carga previa de ObjectCache le permitirá almacenar en la memoria caché entidades que de lo contrario estarían restringidas si carga ObjectCache mediante el método poco activo. Esta configuración solo está soportada cuando se utiliza WSJPA en el nivel de especificación JPA 2.0.
Acerca de esta tarea

- Para las entidades que se han configurado para que estén en ObjectCache, también debe configurar todas las relaciones adecuadas en ObjectCache; las relaciones poco activas no estarán disponibles.
- Mientras que el servidor de aplicaciones está cargando previamente ObjectCache, las entidades se recuperarán de la base de datos. El servidor de aplicaciones no añadirá ninguna entidad a ObjectCache que otros métodos estén cargando.
- La carga automática de la memoria caché puede tardar mucho tiempo si el gráfico de objeto es complejo.
- Tenga cuidado cuando habilite esta característica, porque podría consumir toda la memoria disponible. Para que esta función funcione, el entorno de JPA debe tener en memoria el conjunto de datos completo.
Se ha cargado satisfactoriamente ObjectCache con [...] entidades en [...] segundos.
Procedimiento
Ejemplo
- La siguiente propiedad especifica que ObjectCache se cargue automáticamente cuando el servidor de aplicaciones cree el primer EntityManager:
<property name=" wsjpa.ObjectCache" value=”true(Types=com.ibm.wsjpa.Foo; com.ibm.wsjpa.Bar, MaxSize=auto)”/>
- La siguiente propiedad especifica que ObjectCache se cargue automáticamente cuando el servidor de aplicaciones cree el primer EntityManager y ObjectCache se volverá a cargar cada 20 minutos:
<property name=" wsjpa.ObjectCache" value=”true(Types=com.ibm.wsjpa.Foo; com.ibm.wsjpa.Bar, MaxSize=auto, EvictionSchedule=+20)”/>