Java bellek ayarlarını değiştirme

Trafiğinize ve işleme gereksinimlerinize bağlı olarak, Java tabanlı özel bulut bileşenlerini çalıştıran düğümleriniz için yığın belleği boyutunu veya sınıf meta verileri 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 süreci 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ı Private Cloud bileşenleri için varsayılan ve önerilen Java yığın bellek boyutları listelenmiştir:

Bileşen Özellikler Dosyası Adı Varsayılan
Yığın Boyutu
Önerilen
Heap 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
SymasLDAP 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, toplam sistem belleğinin yarısıdır ve en fazla 8.192 MB olabilir. Yığın boyutunu ayarlama hakkında bilgi edinmek için Yığın bellek boyutunu değiştirme başlıklı makaleyi inceleyin.

2 İleti İşlemciler için Apigee, yığın boyutunu 3 GB ile 6 GB arasında ayarlamanızı önerir. Yığın boyutunu yalnızca performans testleri yaptıktan sonra 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. Ana makine platformunda yerel olarak çalışan uygulamalar Java tabanlı olmadığından yapılandırılabilir Java yığın boyutlarına sahip değildir. Bunun yerine, bellek yönetimi için ana makine sistemine güvenirler.

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 toplayın. Örneğin, düğümünüz hem Postgres hem de Qpid sunucularını barındırıyorsa Apigee, birleştirilmiş bellek ayırımınızın 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ı başlıklı makaleyi inceleyin.

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

Yığın belleği ayarlarını değiştirmek için bileşenin özellikler dosyasını düzenleyin. Örneğin, Message Processor 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 dosyayı oluşturun ve sahipliğini aşağıdaki örnekte gösterildiği gibi "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üklendiyse bileşeni barındıran tüm makinelerdeki özellikler dosyasını düzenlemeniz gerekir.

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

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 göre belirlenir.

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 göre belirlenir.

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

bin_setenv_meta_space_size

Varsayılan sınıf meta verileri boyutu. Varsayılan değer, bin_setenv_max_permsize değerine ayarlanır. Bu değer varsayılan olarak 128 MB'tır. Apigee, ileti işlemcisinde 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 megabaytları belirtmek için "m" sonekini kullanın. Aşağıdaki örnekte bu durum gösterilmektedir:

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

Özellikler dosyasında 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ştirme

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 özelliklerle belirtilmeyen tüm Java özelliklerini ayarlayın. Örneğin:
    bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500

    Ancak bin_setenv_ext_jvm_opts değerini -Xms, -Xmx veya -XX:MetaspaceSize değerlerini ayarlamak için 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 ek ipuçları için Edge forumlarındaki bu makaleye göz atın.