Panduan operasi QPID

Edge for Private Cloud versi 4.52.01 dikirimkan dengan Qpid Broker-J 8.0.6. Halaman ini menjelaskan pertimbangan memori dan {i>disk<i} untuk komponen apigee-qpidd Edge untuk Private Cloud (dengan Broker berbasis Java). Bagian di bawah ini berlaku secara khusus untuk layanan Apigee Kasus penggunaan Qpid dan menjelaskan cara menyesuaikan Qpid menggunakan mekanisme konfigurasi Apigee.

Qpid di Apigee

Di Apigee, Qpid digunakan dalam dua alur kerja utama:

  • Analytics
  • Monetisasi

Dalam kedua alur kerja ini, Pemroses Pesan menghasilkan pesan, yang dikumpulkan menjadi beberapa batch dan didorong ke Qpid. Untuk Analytics, pesan dibaca oleh server Qpid; untuk Monetisasi, laporan tersebut dibaca oleh Server Rating (bagian dari server pengelolaan). Setelah dibaca, pesan batch akan tidak dikelompokkan dan ditransfer.

Bagian berikut menjelaskan konfigurasi yang direkomendasikan untuk memori dan disk dengan Qpid. Konfigurasi ini didasarkan pada ukuran satu pesan sebesar 2 KB untuk Analytics atau Monetisasi. Dengan ukuran batch default 50, setiap pesan dalam Qpid akan menjadi sekitar 100 kb. Apigee mengizinkan proxy untuk mengubah dan menambahkan informasi tambahan ke pesan (Analisis atau Monetisasi). Dalam kasus yang ekstrem, hal ini dapat mengubah ukuran pesan tunggal dan pesan {i> batch<i} secara keseluruhan di Qpid. Sementara pertanyaan rekomendasi terkait memori dan {i>disk<i} di bagian bawah ini tetap berlaku meskipun dalam kasus tersebut, Anda mungkin perlu melakukan penyesuaian tambahan pada {i>Qpid<i} untuk memastikan operasi yang lancar.

Memori

Qpid Broker menggunakan dua jenis memori: memori cadangan dan memori heap. Qpid menyimpan pesan di memori eksternal, dan menggunakan memori heap untuk tugas internalnya sendiri, pesan ke antrean dan pertukaran, dll. Dalam sebagian besar situasi, Apigee menyarankan agar Anda mempertahankan Rasio 3:1 antara memori heap dan siap pakai untuk Qpid Broker.

Pesan di memori off-heap akan tetap berada di disk. Selain itu, jika total penggunaan {i>off-heap memory<i} melanggar batas tertentu, {i>Qpid<i} dikonfigurasi untuk membanjiri pesan ke {i>disk<i}.

Secara default, Apigee menghitung memori heap dan off-heap Qpid Broker berdasarkan memori yang tersedia pada node. Skrip Apigee memiliki batas gabungan sebesar 4 GB untuk heap Qpid Broker dan memori luar biasa. Jika ingin mengganti batas ini, Anda dapat menggunakan dua konfigurasi di bawah ini guna menyetel nilai Anda sendiri untuk memori heap dan off-heap Qpid.

  • Konfigurasi untuk memori heap: bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
  • Konfigurasi untuk memori off-heap: bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m

Lihat Cara mengubah konfigurasi Qpid untuk informasi tentang cara mengganti konfigurasi.

Untuk informasi selengkapnya, lihat Referensi Apache Qpid untuk Memori.

Disk

Direktori data Qpid Broker adalah $APIGEE_ROOT/data/apigee-qpidd. Log Qpid Broker disimpan di $APIGEE_ROOT/var/log/apigee-qpidd.

Kinerja sistem file yang menghosting direktori data merupakan kunci untuk keberhasilan Broker secara keseluruhan. Untuk performa terbaik, pilih perangkat yang memiliki latensi rendah dan tidak digunakan oleh aplikasi lain.

Qpid Broker mempertahankan pesannya dalam direktori data. Secara default, Broker akan menerima sampai sistem file yang menghosting direktori data 80% penuh. Anda dapat mengubahnya dengan mengganti konfigurasi yang ditunjukkan pada contoh di bawah ini pada setiap node Qpid.

bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60

Dalam contoh ini, Broker menolak pesan baru jika sistem file yang mendasarinya adalah 60% penuh.

Cara mengubah konfigurasi Qpid

Untuk mengubah konfigurasi Qpid:

  1. Buat atau edit file berikut:
    $APIGEE_ROOT/customer/application/qpidd.properties
  2. Tambahkan atau hapus atau ubah konfigurasi sesuai kebutuhan. Misalnya, untuk mengubah memori heap maksimum Qpid Broker menjadi 6 GB, tambahkan konfigurasi berikut timpa dalam file:
    bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
  3. Simpan perubahan dan pastikan file dimiliki dan dapat dibaca oleh pengguna apigee:
    chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
  4. Mulai ulang proses qpidd:
    apigee-service apigee-qpidd restart