La versione 4.53.00 di Edge per il cloud privato viene fornita con Qpid Broker-J 8.0.6. In questa pagina vengono descritti
considerazioni su memoria e disco
il componente apigee-qpidd
di Edge per Private Cloud (con broker basato su Java).
Le sezioni che seguono si applicano nello specifico
il caso d'uso di Qpid e spiega come ottimizzare Qpid utilizzando i meccanismi di configurazione di Apigee.
Qpid in Apigee
In Apigee, Qpid viene utilizzato in due flussi di lavoro principali:
- Analytics
- Monetizzazione
In entrambi questi flussi di lavoro, il processore di messaggi genera messaggi, che sono raccolti in batch e inviati a Qpid. Per Analytics, i messaggi vengono letti da Qpid-server; per la monetizzazione, vengono letti da Rating Server (parte di management-server). Una volta letti, i messaggi in batch vengono spostati e importati.
Configurazioni consigliate
Le seguenti sezioni descrivono le configurazioni consigliate per memoria e disco con Qpid. Queste configurazioni si basano su un singolo messaggio di 2 kB per Analytics o Monetizzazione. Con un valore predefinito per le dimensioni del batch pari a 50, ogni messaggio in Qpid avrà dimensioni di circa 100 KB. Apigee consente ai proxy di modificare e aggiungere ulteriori informazioni a un messaggio (Analytics o Monetizzazione). In casi estremi, questo può modificare notevolmente le dimensioni di un singolo messaggio e il messaggio batch complessivo in Qpid. Anche se i consigli generali relativi a memoria e disco nelle sezioni seguenti valgono anche in questi casi, potrebbe essere necessario apportare ulteriori modifiche a Qpid per garantire un'esecuzione regolare.
Memoria
Qpid Broker utilizza due tipi di memoria: memoria non heap e memoria heap. Qpid archivia i messaggi dalla memoria esterna all'heap e utilizza la memoria heap per le proprie attività interne, messaggi in code, scambi e così via. Nella maggior parte dei casi, Apigee consiglia di mantenere Rapporto 3:1 tra memoria off-heap e heap per Qpid Broker.
I messaggi nella memoria non heap vengono mantenuti su disco. Inoltre, se l'utilizzo totale di la memoria off-heap viola una determinata soglia, Qpid è configurato per eseguire l'overflow dei messaggi sul disco.
Per impostazione predefinita, Apigee calcola la memoria heap e off-heap di Qpid Broker in base alla memoria disponibile sul nodo. Gli script di Apigee hanno un limite flessibile di 4 GB combinati per la memoria heap e off-heap di Qpid Broker. Se vuoi ignorare questi limiti, puoi utilizzare le due configurazioni riportate di seguito per impostare i tuoi valori per la memoria heap e off-heap di Qpid.
- Configurazione della memoria heap:
bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
- Configurazione per la memoria off-heap:
bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m
Per informazioni su come eseguire l'override delle configurazioni, consulta Come modificare una configurazione Qpid.
Per ulteriori informazioni, vedi Riferimento Apache Qpid per la memoria.
Disco
La directory dei dati di Qpid Broker è $APIGEE_ROOT/data/apigee-qpidd
.
I log di Qpid Broker sono archiviati in $APIGEE_ROOT/var/log/apigee-qpidd
.
Le prestazioni del file system che ospita la directory dei dati sono fondamentali per il rendimento di Broker nel suo complesso. Per ottenere prestazioni ottimali, scegli un dispositivo con bassa latenza e che sia non è usato da altre applicazioni.
Il broker Qpid rende permanenti i messaggi nella directory dei dati. Per impostazione predefinita, il Broker accetta i messaggi finché il file system che ospita la directory dei dati non è pieno all'80%. Puoi modificare eseguendo l'override della configurazione mostrata nell'esempio seguente su ogni nodo Qpid.
bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60
In questo esempio, il Broker rifiuta i nuovi messaggi quando il file system sottostante è pieno al 60%.
Come modificare una configurazione Qpid
Per modificare una configurazione Qpid:
- Crea o modifica il seguente file:
$APIGEE_ROOT/customer/application/qpidd.properties
- Aggiungi, rimuovi o modifica la configurazione in base alle esigenze.
Ad esempio, per modificare la memoria massima dell'heap di Qpid Broker in 6 GB, aggiungi la seguente configurazione
sostituisci nel file:
bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
- Salva le modifiche e assicurati che il file sia di proprietà e leggibile dall'utente
apigee
:chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
- Riavvia il processo
qpidd
:apigee-service apigee-qpidd restart