İleti İşleyicilerde Dize Tekilleştirmeyi Etkinleştirme

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Bu belgede, Apigee Edge'in Mesaj İşleyicilerinde Dize Tekilleştirme'nin nasıl etkinleştirileceği açıklanmaktadır.

Dize Tekilleştirme, Java uygulamalarında kopya Dize nesnelerinin kapladığı bellekten tasarruf etmenize yardımcı olan bir Java özelliğidir. Kopya veya özdeş String değerlerinin aynı karakter dizisini paylaşmasını sağlayarak Java yığın belleğindeki String nesnelerinin bellek ayak izini azaltır.

Apigee Edge Mesaj İşleyicisi, Java tabanlı bir bileşendir. Mesaj İşleyicide Dize Tekilleştirme'yi kullanmak, özellikle API Proxy'lerinin dizeleri yoğun bir şekilde kullanması durumunda, bellek kullanımını azaltarak API Proxy'lerinizin performansını artırabilir.

Dize Tekilleştirme özelliği yalnızca Java uygulamalarında G1 Çöp Toplayıcı (G1GC) ile kullanılabilir. Bu özelliği Mesaj İşleyici'de etkinleştirmek istiyorsanız G1GC'yi zaten etkinleştirmiş olmanız veya Mesaj İşleyici'de hem G1GC hem de Dize Tekilleştirmeyi birlikte etkinleştirmeniz gerekir.

Başlamadan önce

İleti İşleyicilerinde Dize Tekilleştirmeyi Etkinleştirme

Bu bölümde, Edge Mesaj İşleyicilerinde Dize Tekilleştirme özelliğinin nasıl etkinleştirileceği açıklanmaktadır. Dize Tekilleştirme, Mesaj İşleyici bileşenindeki useStringDeduplication özelliği aracılığıyla etkinleştirilebilir. Varsayılan olarak bu özellik, Mesaj İşleyicilerinde "false" (yanlış) değerine ayarlanır. Mesaj İşleyici'de herhangi bir özelliği yapılandırmak için jetonu Edge'yi yapılandırma bölümünde açıklanan söz dizimine göre kullanın.

İleti İşleyicilerinde Dize Tekilleştirmeyi etkinleştirmek için aşağıdaki adımları uygulayın:

  1. useStringDeduplication mülkünün jetonunu bulma
  2. İleti İşleyicide useStringDeduplication özelliğini etkinleştirme

useStringDeduplication mülkünün jetonunu bulun

Aşağıdaki adımlar, useStringDeduplication için jetonun nasıl bulunacağını açıklamaktadır:

  1. Aşağıdaki komutu kullanarak Mesaj İşleyici kaynak dizininde /opt/apigee/edge-message-processor/source useStringDeduplication özelliğini arayın:
    grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/source
    
  2. Bu komutun sonucunda, Mesaj İşleyici'nin useStringDeduplication özelliği için jeton aşağıdaki gibi gösterilir:
    /opt/apigee/edge-message-processor/source/conf/system.properties:useStringDeduplication={T}conf_system_useStringDeduplication{/T}
    

    Burada {T}{/T} etiketleri arasındaki dize, İleti İşleyici'nin .properties dosyasında ayarlayabileceğiniz jetonun adıdır. Dolayısıyla, useStringDeduplication mülkünün jetonu aşağıdaki gibidir:

    conf_system_useStringDeduplication
    

İleti İşleyicilerinde Dize Tekilleştirmeyi Etkinleştir

Aşağıdaki adımlarda, Apigee Mesaj İşlemcilerinde Dize Tekilleştirme'nin nasıl etkinleştirileceği açıklanmaktadır:

  1. Mesaj İşleyici makinesinde /opt/apigee/customer/application/message-processor.properties dosyasını bir düzenleyicide açın. Dosya mevcut değilse oluşturun. Örneğin:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Bu dosyaya aşağıdaki satırı ekleyin:
    conf_system_useStringDeduplication=true
    
  3. Değişikliklerinizi kaydedin.
  4. Bu özellikler dosyasının apigee kullanıcısına ait olduğundan emin olun. Örneğin:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Aşağıdaki komutu kullanarak Mesaj İşleyici'yi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Birden fazla İleti İşleyiciniz varsa tüm İleti İşleyicileri için bu adımları tekrarlayın.

İleti İşleyicilerinde Dize Tekilleştirmeyi Doğrulama

Bu bölümde, Dize Tekilleştirme'nin Mesaj İşleyicilerde başarıyla etkinleştirildiğinin nasıl doğrulanacağı açıklanmaktadır.

Mesaj İşleyicide Dize Tekilleştirmeyi etkinleştirmek için conf_system_useStringDeduplication jetonunu kullansanız da useStringDeduplication gerçek özelliğinin aşağıdaki yeni değerle ayarlandığını doğrulamanız gerekir:

  1. /opt/apigee/edge-message-processor/conf dizininde useStringDeduplication özelliğini arayın ve yeni değerle ayarlanıp ayarlanmadığını kontrol edin. Örneğin:
    grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/conf
    
  2. Dize Tekilleştirme, İleti İşleyici'de başarıyla etkinleştirildiyse önceki komut, system.properties dosyasında yeni değeri gösterir.

    Mesaj İşleyici'de Dize Tekilleştirme'yi etkinleştirmenizden sonra önceki komuttan alınan örnek sonuç aşağıdaki gibidir:

    /opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
    

    Örnek çıkışta, useStringDeduplication özelliğinin system.properties içindeki yeni true değeriyle ayarlandığını unutmayın. Bu, İleti İşleyici'de Dize Tekilleştirmenin başarıyla etkinleştirildiğini gösterir.

  3. useStringDeduplication mülkünün eski değerini görmeye devam ediyorsanız Mesaj İşleyicilerinde Dize Tekilleştirmeyi Etkinleştirme bölümünde açıklanan tüm adımları doğru şekilde uyguladığınızdan emin olun. Herhangi bir adımı atladıysanız tüm adımları doğru bir şekilde tekrar edin.
  4. Dize Tekilleştirme özelliğini hâlâ etkinleştiremiyorsanız Apigee destek ekibi ile iletişime geçin.

Sırada ne var?

İleti İşleyicilerinde G1GC'yi etkinleştirme