Mengubah setelan memori Java

Bergantung pada persyaratan traffic dan pemrosesan, Anda mungkin perlu mengubah ukuran memori heap atau ukuran metadata class untuk node yang menjalankan komponen Private Cloud berbasis Java.

Bagian ini memberikan ukuran memori heap Java default dan yang direkomendasikan, serta proses untuk mengubah ukuran default. Terakhir, bagian ini menjelaskan cara mengubah setelan JVM lainnya menggunakan file properti.

Ukuran memori heap default dan yang direkomendasikan

Tabel berikut mencantumkan ukuran memori heap Java default dan yang direkomendasikan untuk komponen Private Cloud berbasis Java:

Komponen Nama File Properti Default
Ukuran Heap
Direkomendasikan
Ukuran Heap
Runtime
Cassandra t/a Dikonfigurasi secara otomatis1 Dikonfigurasi secara otomatis1
Message Processor message-processor.properties 512 MB 3GB - 6GB2
Router router.properties 512 MB 512 MB
Analytics
Server Postgres postgres-server.properties 512 MB 512 MB
Server Qpid qpid-server.properties 512 MB 2GB - 4GB
Pengelolaan
Server Pengelolaan management-server.properties 512 MB 512 MB
UI ui.properties 512 MB 512 MB
OpenLDAP t/a Aplikasi Native3 Aplikasi Native3
Zookeeper zookeeper.properties 2048 MB 2048 MB
Catatan

1 Cassandra secara dinamis menghitung ukuran heap maksimum saat dimulai. Saat ini, ini adalah setengah dari total memori sistem, dengan maksimum 8192 MB. Untuk informasi tentang cara menetapkan ukuran heap, lihat Mengubah ukuran memori heap.

2 Untuk Pemroses Pesan, Apigee merekomendasikan agar Anda menetapkan ukuran heap antara 3 GB dan 6 GB. Tingkatkan ukuran heap di atas 6 GB hanya setelah melakukan pengujian performa.

Jika penggunaan heap mendekati batas maksimum selama pengujian performa, tingkatkan batas maksimum. Untuk informasi tentang cara menetapkan ukuran heap, lihat Mengubah ukuran memori heap.

3 Tidak semua komponen Private Cloud diterapkan di Java. Karena tidak berbasis Java, aplikasi yang berjalan secara native di platform host tidak memiliki ukuran heap Java yang dapat dikonfigurasi; sebagai gantinya, aplikasi mengandalkan sistem host untuk pengelolaan memori.

Untuk menentukan berapa banyak total memori yang direkomendasikan Apigee untuk dialokasikan ke komponen berbasis Java pada node, tambahkan nilai yang tercantum di atas untuk setiap komponen pada node tersebut. Misalnya, jika node Anda menghosting server Postgres dan Qpid, Apigee merekomendasikan alokasi memori gabungan Anda antara 2,5 GB dan 4,5 GB.

Untuk mengetahui daftar hardware yang diperlukan (seperti RAM), lihat Persyaratan penginstalan.

Mengubah ukuran memori heap

Untuk mengubah setelan memori heap, edit file properti untuk komponen. Misalnya, untuk Message Processor, edit file /opt/apigee/customer/application/message-processor.properties.

Jika file message-processor.properties tidak ada, atau jika file .properties yang sesuai untuk komponen Edge apa pun tidak ada, buat file tersebut, lalu ubah kepemilikan file ke pengguna "apigee", seperti yang ditunjukkan contoh berikut:

chown apigee:apigee /opt/apigee/customer/application/message-processor.properties

Jika komponen diinstal di beberapa komputer, seperti Message Processor, Anda harus mengedit file properti di semua komputer yang menghosting komponen.

Tabel berikut mencantumkan properti yang Anda edit untuk mengubah ukuran heap:

Properti Deskripsi
bin_setenv_min_mem

Ukuran heap minimum. Nilai default didasarkan pada nilai yang tercantum dalam Ukuran memori heap default dan yang direkomendasikan.

Setelan ini sesuai dengan opsi -Xms Java.

bin_setenv_max_mem

Ukuran heap maksimum. Nilai default didasarkan pada nilai yang tercantum dalam Ukuran memori heap default dan yang direkomendasikan.

Setelan ini sesuai dengan opsi -Xmx Java.

bin_setenv_meta_space_size

Ukuran metadata class default. Nilai default ditetapkan ke nilai bin_setenv_max_permsize, yang secara default adalah 128 MB. Pada Pemroses Pesan, Apigee merekomendasikan agar Anda menetapkan nilai ini ke 256 MB atau 512 MB, bergantung pada traffic Anda.

Setelan ini sesuai dengan opsi -XX:MetaspaceSize Java.

Saat Anda menetapkan properti ukuran heap di node, gunakan akhiran "m" untuk menunjukkan megabyte, seperti yang ditunjukkan pada contoh berikut:

bin_setenv_min_mem=4500m
bin_setenv_max_mem=4500m
bin_setenv_meta_space_size=1024m

Setelah menetapkan nilai dalam file properti, mulai ulang komponen:

/opt/apigee/apigee-service/bin/apigee-service component restart

Contoh:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

Mengubah properti JVM lainnya

Untuk setelan Java yang tidak dikontrol oleh properti yang tercantum di atas, Anda juga dapat meneruskan flag atau nilai JVM tambahan untuk komponen Edge apa pun. File *.properties akan dibaca oleh Bash dan harus diapit dengan '(tanda kutip tunggal) untuk mempertahankan karakter literal atau "(tanda kutip ganda) jika Anda memerlukan ekspansi shell.

  • bin_setenv_ext_jvm_opts: Menetapkan properti Java yang tidak ditentukan oleh properti lain. Contoh:
    bin_setenv_ext_jvm_opts='-XX:MaxGCPauseMillis=500'

    Namun, jangan gunakan bin_setenv_ext_jvm_opts untuk menetapkan -Xms, -Xmx, atau -XX:MetaspaceSize karena nilai ini dikontrol oleh properti yang tercantum di atas.

Untuk tips tambahan tentang cara mengonfigurasi memori untuk komponen Private Cloud, lihat artikel ini di forum Edge.