Parámetros de inicialización del tamaño de la zona de influencia

ArcSDE proporciona tres parámetros de inicialización de la zona de influencia de transporte: MINBUFSIZE, MAXBUFSIZE y MINBUFOBJECTS.

Los datos se trasfieren entre un servicio de ArcSDE (servidor de la aplicación) y la aplicación de cliente mediante una transmisión. La transmisión funciona como mecanismo de comunicación para consultar una tabla o capa. Las transmisiones utilizan una estructura de memoria (búfer de transporte) como contenedor antes de pasar la estructura a la pila de la red subyacente.

Cuando se crea una transmisión de ArcSDE, el proceso de ArcSDE asigna búferes de transporte en el cliente y el servidor. Los búferes de transporte reducen la entrada/salida (E/S) y mejoran el rendimiento mediante la acumulación de registros de datos vectoriales y el envío a través de la red en lotes en lugar de registros individuales.

Los registros se adquieren en el búfer de transporte del proceso del servidor de aplicaciones de ArcSDE y se envían al búfer de transporte del cliente de ArcSDE cuando la aplicación consulta la base de datos. Alternativamente, los registros se adquieren en el búfer de transporte del cliente y se envían al búfer de transporte del proceso del servidor de ArcSDE cuando la aplicación escribe datos en la base de datos.

Los parámetros del búfer de transferencia

Estos parámetros juntos forman los umbrales inferiores que evitan que los búferes se transmitan como respuesta a una solicitud de cliente. Mientras se recuperan los datos que se solicitan en la consulta, el lote de datos en el búfer no se envía hasta que se obtiene el MINBUFOBJECTS o el MINBUFSIZE. Una vez que todos los datos recuperados se colocan en el búfer, se transfieren al cliente incluso si estos umbrales no se han penetrado. Primero se examina el MINBUFOBJECTS.

El MINBUFOBJECTS es la cantidad mínima de registros que se almacenan en un búfer de transmisión antes de que se envíe en la transmisión. El valor predeterminado es de 512 registros. Este también es el valor mínimo. Las pruebas de Esri no mostraron ningún beneficio de rendimiento para aumentar este parámetro más allá de 512.

El MINBUFSIZE no debe ser mayor a una mitad del MAXBUFSIZE. Si el MINBUFSIZE se establece demasiado alto, se puede aumentar el período de tiempo que el cliente tiene que esperar antes de que se transmita el búfer. Si el MAXBUFSIZE tiene 64 kilobytes y el MINBUFSIZE tiene 56 kilobytes, el cliente espera hasta que se alcance el umbral de 56 kilobytes antes de enviar el búfer de transporte. El valor mínimo de de 4.096 bytes.

El parámetro MAXBUFSIZE representa la cantidad total de memoria asignada a cada búfer de transporte. El búfer de transporte deja de acumular registros una vez que se alcanza el MAXBUFSIZE y espera la solicitud para enviar los registros al cliente. Antes de aumentar el tamaño del búfer, verifique que la memoria física del servidor sea la suficiente porque el rendimiento puede verse afectado por una paginación excesiva. Por ejemplo, el valor predeterminado asigna 64 kilobytes por búfer. Si hay 100 usuarios conectados, cada proceso gsrvr contiene un búfer que consume un total de 6,4 MB de la memoria del sistema. Si el MAXBUFSIZE se duplica, se consumen 12,8 MB de la memoria.

Secuencia de transferencia de datos

Mientras se recuperan los datos en respuesta a una consulta, ArcSDE comprueba si el número de filas en el lote de datos cumple con el parámetro MINBUFOBJECTS. Si la consulta aún está en proceso, se alcanza el umbral MINBUFOBJECTS (está presente la cantidad de filas requerida), y el cliente está esperando los datos, los datos se envían. Si no se alcanza el MINBUFOBJECTS y los datos aún se están recuperando, ArcSDE comprueba el tamaño de los datos para ver si se ha alcanzado el MINBUFSIZE. Si no se ha alcanzado, el búfer continúa llenándose.

El búfer comienza a llenarse

Cuando se alcanza el MINBUFSIZE, si el cliente está esperando, los datos se envían al cliente.

Se alcanza el umbral del MINBUFFSIZE

Si el cliente no esperó y la recuperación de datos aún se encontraba en progreso, el búfer continúa llenándose y supera el MINBUFSIZE.

Si no hay un cliente esperando, el búfer continúa con la carga

El búfer continúa llenándose hasta que se colocan todos los datos solicitados en el búfer, el cliente está esperando los datos, o se alcanza el MAXBUFSIZE. Una vez que se alcanza el MAXBUFSIZE, se detiene la carga del búfer.

Datos solicitados por el cliente
Se alcanza el MAXBUFSIZE

7/10/2012