Guía de operaciones de QPID

La versión 4.52.02 de Edge para la nube privada se envía con Qpid Broker-J 8.0.6. En esta página, se describen las consideraciones de memoria y disco para El componente apigee-qpidd de Edge para la nube privada (con un agente basado en Java) Las siguientes secciones se aplican específicamente a los Caso de uso de Qpid y explicación de cómo ajustar Qpid con los mecanismos de configuración de Apigee

Qpid en Apigee

En Apigee, Qpid se usa en dos flujos de trabajo principales:

  • Analytics
  • Monetización

En ambos flujos de trabajo, Message Processor genera mensajes, que se se recopilan en lotes y se envían a Qpid. En el caso de Analytics, Qpid-server lee los mensajes. en el caso de la monetización, el servidor de clasificación las lee (parte de management-server). Una vez leídos, los mensajes agrupados se desagrupan por lotes y se transfieren.

En las siguientes secciones, se describen las configuraciones recomendadas para la memoria y el disco con Qpid. Estas configuraciones se basan en un tamaño de mensaje único de 2 KB para Analytics o Monetización. Con un el tamaño de lote predeterminado de 50, cada mensaje en Qpid sería de aproximadamente 100 KB. Apigee permite que los proxies modifiquen y agreguen información adicional a un mensaje (Analytics o Monetización). En casos extremos, esto puede cambiar significativamente el tamaño de una un mensaje único y el conjunto de mensajes en lote en Qpid. Si bien el las recomendaciones sobre memoria y disco en las siguientes secciones son válidas incluso en esos casos, es posible que deba realizar ajustes adicionales en Qpid para garantizar operaciones fluidas.

Memoria

El agente de Qpid usa dos tipos de memoria: la memoria fuera del montón y la memoria del montón. El parámetro Qpid almacena mensajes en fuera del montón y usa la memoria del montón para sus propias tareas internas, dirigir mensajes a intercambios y colas, etc. En la mayoría de los casos, Apigee recomienda mantener un Proporción de 3:1 entre la memoria fuera del montón y la memoria del montón para el agente de Qpid.

Los mensajes de la memoria fuera del montón persisten en el disco. Además, si el uso total de la memoria fuera del montón infringe un cierto umbral, Qpid está configurado para desbordar mensajes en el disco.

De forma predeterminada, Apigee calcula la memoria del montón y fuera del montón del agente de Qpid en función de la memoria disponible. en el nodo. Las secuencias de comandos de Apigee tienen un límite flexible de 4 GB combinado para el montón del agente de Qpid memoria fuera del montón. Si quieres anular estos límites, puedes usar las dos configuraciones para configurar tus propios valores para el montón de Qpid y la memoria fuera del montón.

  • Configuración de la memoria de montón: bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
  • Configuración de la memoria fuera del montón: bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m

Consulta Cómo cambiar una configuración de Qpid para información sobre cómo anular la configuración.

Para obtener más información, consulta Referencia de Apache Qpid para memoria.

Disco

El directorio de datos del agente de Qpid es $APIGEE_ROOT/data/apigee-qpidd. Los registros del agente de Qpid se almacenan en $APIGEE_ROOT/var/log/apigee-qpidd.

El rendimiento del sistema de archivos que aloja el directorio de datos es clave para el rendimiento de Es el agente completo. Para obtener el mejor rendimiento, elige un dispositivo que tenga baja latencia y que que otras aplicaciones no usan.

El agente de Qpid conserva sus mensajes en el directorio de datos. Por defecto, el agente acepta hasta que el sistema de archivos que aloja el directorio de datos esté lleno en un 80%. Puedes modificar este de red anulando la configuración que se muestra en el siguiente ejemplo en cada nodo Qpid.

bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60

En este ejemplo, el agente rechaza los mensajes nuevos cuando el sistema de archivos subyacente es del 60% completo.

Cómo cambiar una configuración de Qpid

Para cambiar una configuración de Qpid:

  1. Crea o edita el siguiente archivo:
    $APIGEE_ROOT/customer/application/qpidd.properties
  2. Agrega, quita o modifica la configuración según sea necesario. Por ejemplo, para cambiar la memoria máxima del montón del agente Qpid a 6 GB, agrega la siguiente configuración anulación en el archivo:
    bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
  3. Guarda los cambios y asegúrate de que el usuario apigee sea propietario y pueda leer el archivo:
    chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
  4. Reinicia el proceso qpidd:
    Reinicio de apigee-service, Apigee-qpidd