Edge for Private Cloud 4.54.00 sürümü, Qpid Broker-J 10.0.1 ile birlikte gelir. Bu sayfada, Edge for Private Cloud'un (Java tabanlı Broker ile) apigee-qpidd bileşeni için bellek ve diskle ilgili dikkat edilmesi gereken noktalar açıklanmaktadır.
Aşağıdaki bölümler özellikle Apigee'nin Qpid kullanım alanı için geçerlidir ve Apigee'nin yapılandırma mekanizmalarını kullanarak Qpid'in nasıl ayarlanacağını açıklar.
Apigee'de Qpid
Apigee'de Qpid iki ana iş akışında kullanılır:
- Analytics
- Para kazanma
Bu iş akışlarının her ikisinde de Mesaj İşleyici, mesajlar oluşturur. Bu mesajlar gruplar halinde toplanır ve Qpid'ye gönderilir. Analytics için iletiler Qpid-server tarafından okunur; para kazanma için ise iletiler Rating Server (yönetim sunucusunun bir parçası) tarafından okunur. Okunduktan sonra, toplu mesajlar ayrıştırılır ve alınır.
Önerilen yapılandırmalar
Aşağıdaki bölümlerde, Qpid ile bellek ve disk için önerilen yapılandırmalar açıklanmaktadır. Bu yapılandırmalar, Analytics veya Monetization için 2 KB'lık tek bir mesaj boyutunu temel alır. Varsayılan grup boyutu 50 olduğunda Qpid'deki her mesaj yaklaşık 100 KB olur. Apigee, proxy'lerin bir mesajda (Analytics veya para kazanma) değişiklik yapmasına ve ek bilgiler eklemesine olanak tanır. Uç durumlarda bu, tek bir mesajın boyutunu ve Qpid'deki genel toplu mesajı önemli ölçüde değiştirebilir. Aşağıdaki bölümlerde bellek ve diskle ilgili genel öneriler bu gibi durumlarda da geçerli olsa da sorunsuz çalışma için Qpid'de ek değişiklikler yapmanız gerekebilir.
Bellek
Qpid Broker iki tür bellek kullanır: yığın dışı bellek ve yığın belleği. Qpid, iletileri yığın dışı bellekte depolar ve kendi dahili görevleri, doğrudan iletileri kuyruklara ve değişimlere yönlendirmek vb. için yığın belleği kullanır. Çoğu durumda Apigee, Qpid Broker için yığın dışı bellek ile yığın belleği arasında 3:1 oranını korumanızı önerir.
Yığın dışı bellekteki mesajlar diskte kalıcı olur. Ayrıca, yığın dışı belleğin toplam kullanımı belirli bir eşiği aşarsa Qpid, mesajları diske taşacak şekilde yapılandırılır.
Apigee, varsayılan olarak Qpid Broker'ın yığın ve yığın dışı belleğini düğümdeki kullanılabilir belleğe göre hesaplar. Apigee'nin komut dosyaları, Qpid Broker'ın yığın ve yığın dışı belleği için toplam 4 GB'lık bir geçici sınıra sahiptir. Bu sınırları geçersiz kılmak istiyorsanız Qpid'in yığın ve yığın dışı belleği için kendi değerlerinizi ayarlamak üzere aşağıdaki iki yapılandırmayı kullanabilirsiniz.
- Yığın bellek yapılandırması:
bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m - Yığın dışı bellek için yapılandırma:
bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m
Yapılandırmaları geçersiz kılma hakkında bilgi için Qpid yapılandırmasını değiştirme başlıklı makaleyi inceleyin.
Daha fazla bilgi için Bellek için Apache Qpid Referansı başlıklı makaleyi inceleyin.
Disk
Qpid Broker'ın veri dizini: $APIGEE_ROOT/data/apigee-qpidd.
Qpid Broker'ın günlükleri $APIGEE_ROOT/var/log/apigee-qpidd konumunda depolanır.
Veri dizinini barındıran dosya sisteminin performansı, Broker'ın genel performansı için çok önemlidir. En iyi performans için gecikme süresi düşük olan ve başka uygulamalar tarafından kullanılmayan bir cihaz seçin.
Qpid Broker, mesajlarını veri dizininde saklar. Varsayılan olarak Broker, veri dizinini barındıran dosya sistemi% 80 dolana kadar mesajları kabul eder. Her Qpid düğümünde aşağıdaki örnekte gösterilen yapılandırmayı geçersiz kılarak bu eşiği değiştirebilirsiniz.
bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60
Bu örnekte, temel dosya sistemi %60 dolduğunda aracı yeni mesajları reddeder.
Qpid yapılandırmasını değiştirme
Qpid yapılandırmasını değiştirmek için:
- Aşağıdaki dosyayı oluşturun veya düzenleyin:
$APIGEE_ROOT/customer/application/qpidd.properties
- Gerektiğinde yapılandırma ekleyin, kaldırın veya değiştirin.
Örneğin, Qpid Broker'ın maksimum yığın belleğini 6 GB olarak değiştirmek için dosyaya aşağıdaki yapılandırma geçersiz kılma işlemini ekleyin:
bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
- Değişiklikleri kaydedin ve dosyanın
apigeekullanıcısına ait ve bu kullanıcı tarafından okunabilir olduğundan emin olun:chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
qpiddişlemini yeniden başlatın:apigee-service apigee-qpidd restart