Rendimiento de las aplicaciones y comportamiento de los beans de entidad
WebSphere Application Server permite alterar temporalmente dos comportamientos necesarios para la especificación EJB (Enterprise JavaBeans), ya que la aplicación puede beneficiarse del manejo de estos aspectos de la gestión de datos de bean de una forma ligeramente diferente.
Sincronización de almacenes persistentes gestionados por la aplicación para los métodos findBy
- Crea una lista de beans que aparecen en la transacción actual y que son del mismo tipo que el que devuelve el método findby
- Almacena el estado de estos enterprise beans en el almacenamiento persistente antes de ejecutar la consulta
No obstante, existen casos en los que resulta excesivo e ineficaz que el contenedor de EJB ejecute automáticamente esta acción en cada método findBy. Por ejemplo, si la aplicación garantiza el uso de los datos más actualizados en las consultas de findBy, o aquellos casos en los que la aplicación puede tolerar algunos datos no actualizados como parte de los resultados de la consulta.
WebSphere Application Server permite inicializar el proceso de sincronización con el control de la aplicación, e inhabilitar la sincronización gestionada por contenedor de tipos de EJB específicos dentro de la aplicación. Un uso correcto de estas funciones puede aumentar el rendimiento de la aplicación sin necesidad de sacrificar la integridad de los datos. Consulte el tema Manipulación de la sincronización de beans de entidad y almacenes.
Evitar invocaciones de ejbStore en instancias de bean de entidad sin modificar
La especificación EJB requiere que el contenedor de EJB invoque el método ejbStore proporcionado por el usuario en todos los beans de entidad dentro de una transacción cuando se compromete esa transacción. En los beans CMP (persistencia gestionada por contenedor), a diferencia de los beans de persistencia gestionada por bean, esta operación normalmente no es necesaria, ya que este método en los beans CMP suele estar vacío. Incluso en aquellos casos en los que el método no esté vacío, puede que la aplicación sólo necesite la invocación del método si se modifica el estado persistente del bean durante la transacción actual.
WebSphere Application Server proporciona un mecanismo para indicar si desea este comportamiento para tipos de EJB específicos dentro de la aplicación. Consulte el tema Evitar invocaciones de ejbStore en instancias de EntityBean no modificadas.