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üğümleriniz için yığın bellek 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ılanları değiştirme işlemi açıklanmaktadır. Son olarak bu bölümde, özellik dosyaları kullanılarak 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ı Private Cloud bileşenleri için varsayılan ve önerilen Java yığın belleği boyutları listelenmiştir:

Bileşen Özellikler Dosya Adı Varsayılan
Yığın Boyutu
Önerilen
Yığın Boyutu
Çalışma zamanı
Cassandra Yok Otomatik olarak yapılandırılmış1 Otomatik olarak 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ıldığında maksimum yığın boyutunu dinamik olarak hesaplar. Şu anda bu boyut, maksimum 8.192 MB olmak üzere toplam sistem belleğinin yarısıdır. Yığın boyutunu ayarlama hakkında bilgi için Yığın bellek boyutunu değiştirme konusuna bakın.

2 Apigee, Mesaj İşleyicileri için yığın boyutunu 3 GB ile 6 GB arasında ayarlamanızı önerir. Yığın boyutunu 6 GB'ın ötesine yalnızca performans testleri yaptıktan sonra artırın.

Performans testi 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 için Yığın bellek boyutunu değiştirme konusuna bakın.

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

Apigee'nin bir düğümdeki Java tabanlı bileşenlerinize ayırmanızı önerdiği toplam bellek miktarını belirlemek için ilgili 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ştirilmiş bellek tahsisinizin 2,5 GB ile 4,5 GB arasında olmasını önerir.

Gerekli donanımların (ör. RAM) listesi için Yükleme koşulları bölümüne bakın.

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, Mesaj İşleyici için /opt/apigee/customer/application/message-processor.properties dosyasını düzenleyin.

message-processor.properties dosyası yoksa veya herhangi bir Edge bileşenine karşılık gelen .properties dosyası yoksa bu dosyayı oluşturun ve ardından aşağıdaki örnekte gösterildiği gibi dosyanın sahipliğini "Apigee" kullanıcısı olarak değiştirin:

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

Bileşen, Mesaj İşleyici gibi birden fazla makineye yüklenmişse özellikler dosyasını bileşeni barındıran tüm makinelerde düzenlemeniz gerekir.

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

Özellik 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, 128 MB olan bin_setenv_max_permsize değerine ayarlandı. Mesaj İşleyici'de Apigee, trafiğinize bağlı olarak bu değeri 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 özellikleri ayarladığınızda, 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

Özellikler dosyasındaki değerleri 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ştirin

Yukarıda listelenen özellikler tarafından kontrol edilmeyen Java ayarları için herhangi bir Edge bileşeninin ilgili özellikler dosyasında aşağıdakileri de ayarlayabilirsiniz:

  • bin_setenv_ext_jvm_opts: Diğer özellikler tarafından belirtilmeyen herhangi bir Java özelliğini ayarlayın. Örneğin:
    bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500

    Ancak -Xms, -Xmx veya -XX:MetaspaceSize değerlerini ayarlamak için bin_setenv_ext_jvm_opts değerini kullanmayın. Bu değerler, yukarıda listelenen özellikler tarafından kontrol edilir.

Private Cloud bileşenleri için belleği yapılandırma hakkında daha fazla ipucu için Edge forumlarındaki bu makaleyi inceleyin.