Java bellek ayarlarını değiştirme

Trafik ve işleme gereksinimlerinize bağlı olarak, Java tabanlı Private Cloud bileşenleri çalıştıran düğümlerinizin yığın belleği boyutunu veya sınıf meta veri boyutunu değiştirmeniz gerekebilir.

Bu bölümde, varsayılan ve önerilen Java yığın bellek boyutlarının yanı sıra varsayılan değerleri değiştirme işlemi açıklanmaktadır. Son olarak bu bölümde, özellik dosyalarını kullanarak diğer JVM ayarlarının nasıl değiştirileceği açıklanmaktadır.

Varsayılan ve önerilen yığın bellek boyutları

Aşağıdaki tabloda, Java tabanlı Özel Bulut bileşenleri için varsayılan ve önerilen Java yığın bellek boyutları listelenmiştir:

Bileşen Mülk Dosya Adı Varsayılan
Yığın Boyutu
Önerilen
Yığın Boyutu
Çalışma zamanı
Cassandra Yok Otomatik olarak yapılandırılmış1 Otomatik yapılandırılmış1
Mesaj İşleyici message-processor.properties 512 MB 3GB - 6GB2
Yönlendirici router.properties 512 MB 512 MB
Analytics
Postgres sunucusu postgres-server.properties 512 MB 512 MB
Qpid sunucusu qpid-server.properties 512 MB 2GB - 4GB
Yönetim
Yönetim sunucusu management-server.properties 512 MB 512 MB
Kullanıcı Arayüzü ui.properties 512 MB 512 MB
OpenLDAP Yok Yerel Uygulama3 Yerel Uygulama3
Zookeeper zookeeper.properties 2048 MB 2048 MB
Notlar

1 Cassandra, başlatılırken maksimum yığın boyutunu dinamik olarak hesaplar. Bu boyut, şu anda maksimum 8.192 MB ile toplam sistem belleğinin yarısıdır. Yığın boyutunu ayarlama hakkında bilgi edinmek için Yığın hafıza boyutunu değiştirme başlıklı makaleyi inceleyin.

2 Apigee, mesaj işlemcileri için yığın boyutunu 3 GB ile 6 GB arasında olarak ayarlamanızı önerir. Yalnızca performans testleri yaptıktan sonra yığın boyutunu 6 GB'ın üzerine çıkarın.

Performans testiniz sırasında yığın kullanımı maksimum sınıra yaklaşıyorsa maksimum sınırı artırın. Yığın boyutunu ayarlama hakkında bilgi edinmek için Yığın bellek boyutunu değiştirme başlıklı makaleyi inceleyin.

3 Private Cloud bileşenlerinin tümü Java'da uygulanmaz. Java tabanlı olmadıkları için ana makine platformunda yerel olarak çalışan uygulamaların yapılandırılabilir Java yığın boyutları yoktur. Bunun yerine, bellek yönetimi için ana makine sisteminden yararlanırlar.

Apigee'nin bir düğümdeki Java tabanlı bileşenlerinize ne kadar toplam bellek ayırmanızı önerdiğini belirlemek için söz konusu düğümdeki her bileşen için yukarıda listelenen değerleri ekleyin. Örneğin, düğümünüz hem Postgres hem de Qpid sunucularını barındırıyorsa Apigee, birleşik bellek ayırmanızın 2,5 GB ile 4,5 GB arasında olmasını önerir.

Gerekli donanımın (ör. RAM) listesi için Yükleme şartları başlıklı makaleyi inceleyin.

Yığın bellek boyutlarını değiştirme

Yığın bellek ayarlarını değiştirmek için bileşenin özellikler dosyasını düzenleyin. Örneğin, İleti İşleyen için /opt/apigee/customer/application/message-processor.properties dosyasını düzenleyin.

message-processor.properties dosyası yoksa veya herhangi bir Edge bileşenine ait ilgili .properties dosyası yoksa dosyayı oluşturun ve ardından dosyanın sahipliğini aşağıdaki örnekte gösterildiği gibi "apigee" kullanıcısına değiştirin:

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

Bileşen birden fazla makineye (ör. Mesaj İşleyici) yüklüyse bileşeni barındıran tüm makinelerdeki properties dosyasını düzenlemeniz gerekir.

Aşağıdaki tabloda, yığın boyutlarını değiştirmek için düzenlediğiniz özellikler listelenmektedir:

Mülk Açıklama
bin_setenv_min_mem

Minimum yığın boyutu. Varsayılan değer, Varsayılan ve önerilen yığın bellek boyutları bölümünde listelenen değerlere dayanır.

Bu ayar Java -Xms seçeneğine karşılık gelir.

bin_setenv_max_mem

Maksimum yığın boyutu. Varsayılan değer, Varsayılan ve önerilen yığın bellek boyutları bölümünde listelenen değerlere dayanır.

Bu ayar, Java -Xmx seçeneğine karşılık gelir.

bin_setenv_meta_space_size

Varsayılan sınıf meta verisi boyutu. Varsayılan değer, bin_setenv_max_permsize değerine ayarlanır. Bu değer varsayılan olarak 128 MB'tır. Apigee, İleti İşleyicide bu değeri trafiğinize bağlı olarak 256 MB veya 512 MB olarak ayarlamanızı önerir.

Bu ayar, Java -XX:MetaspaceSize seçeneğine karşılık gelir.

Bir düğümde yığın boyutu özelliklerini ayarlarken aşağıdaki örnekte gösterildiği gibi megabaytları belirtmek için "m" son ekini kullanın:

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

Değerleri properties dosyasında ayarladıktan sonra bileşeni yeniden başlatın:

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

Örneğin:

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

Diğer JVM özelliklerini değiştirme

Yukarıda listelenen özellikler tarafından kontrol edilmeyen Java ayarları için herhangi bir Edge bileşenine ek JVM işaretleri veya değerleri de iletebilirsiniz. *.properties dosyaları Bash tarafından okunur ve değişmez karakterleri korumak için '(tek tırnak) veya kabuk genişletmesi gerekiyorsa "(çift tırnak) içine alınmalıdır.

  • bin_setenv_ext_jvm_opts: Diğer mülkler tarafından belirtilmeyen tüm Java özelliklerini ayarlayın. Örneğin:
    bin_setenv_ext_jvm_opts='-XX:MaxGCPauseMillis=500'

    Ancak yukarıda listelenen mülkler tarafından kontrol edildiği için -Xms, -Xmx veya -XX:MetaspaceSize değerini ayarlamak için bin_setenv_ext_jvm_opts kullanmayın.

Private Cloud bileşenleri için belleği yapılandırmayla ilgili ek ipuçları için Edge forumlarındaki bu makaleye göz atın.