Limitar el registro de complementos para los mensajes Retrieve y de RetrieveMultiple

Categoría: rendimiento

Potencial de impacto: medio

Síntomas

Si se agrega lógica de complementos síncrona a los eventos de mensaje Retrieve y de RetrieveMultiple, puede provocar:

  • Aplicaciones basadas en modelos que dejan de responder
  • Interacciones lentas con el cliente
  • El explorador deja de responder

Instrucciones

Evalúe el diseño de soluciones que incluyen complementos registrados para los mensajes Retrieve y RetrieveMultiple. En general, no se recomienda registrar complementos para estos mensajes debido a los riesgos asociados con ralentizar las solicitudes para devolver un registro o registros de entidad desde varios puntos de entrada. Sin embargo, puede ser adecuado para el diseño de su aplicación. Un ejemplo de una aplicación común sería la inyección de criterios de filtro adicionales a una consulta existente específica. Este enfoque permite que las soluciones compensen por aquello que no se puede hacer en la interfaz de usuario para las vistas. El diseñador de vistas solo puede admitir un grado de complejidad determinado y otras opciones deben utilizarse para aumentar los resultados o la consulta.

Si es una solución adecuada, siga estas sugerencias para minimizar el impacto en el entorno:

  • Incluya las condiciones del código del complemento para comprobar rápidamente si debe implementarse a lógica de destino. Si no es así, vuelva rápidamente, sin ejecutar los pasos adicionales que no son necesarios y que retrasarán devolver los datos al autor de la llamada.

  • Evite incluir las tareas prolongadas, especialmente las tareas no deterministas, como la invocación de las llamadas de servicio externas o las consultas complejas a Dataverse.

  • Limite o evite consultar datos adicionales de Microsoft Dataverse.

Entidades virtuales

Por lo general Retrieve y RetrieveMultiple se invocan en el complementos para recuperar datos de orígenes externos. Los datos de orígenes externos se generan en Power Apps o se usan trabajar con los datos existentes o gestionarlos. Las tablas virtuales de Dataverse habilitan la integración de los datos que se encuentran en sistemas externos y representan sin problemas esos datos como tablas de Power Apps, sin replicación de datos y a menudo sin código personalizado.

Precaución de Retrieve

Dataverse activará al menos dos mensajes Retrieve para cada carga de formulario de entidad. Una recuperación contiene atributos limitados, lo que puede variar en función de la entidad y las llamadas posteriores incluirán más atributos. Si se espera que se produzca una sola acción durante la carga de un formulario, no confíe totalmente en el desencadenador de un mensaje Retrieve.

Información adicional

Los mensajes Retrieve y RetrieveMultiple son los dos mensajes procesados más frecuentes. El mensaje Retrieve se desencadena al abrir un formulario de entidad o si se va a obtener acceso a la entidad mediante la operación Retrieve en uno de los extremos de servicio. RetrieveMultiple se desencadena debido a la distintas acciones en los extremos de la aplicación y el servicio, por ejemplo, al rellenar una cuadrícula de la interfaz de usuario. Si se agrega lógica de complementos síncrona a estos eventos de mensaje, se puede producir lentitud.

Vea también

Optimizaciones del rendimiento para Microsoft Dynamics CRM Online
Crear y editar entidades virtuales que contienen datos desde un origen de datos externo

Nota

¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)

La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).