Wyświetlasz dokumentację Apigee Edge.
Przejdź do
dokumentacji Apigee X. info
Z tego dokumentu dowiesz się, jak włączyć deduplikację ciągów znaków w procesorach wiadomości Apigee Edge.
Deduplikacja ciągów znaków to funkcja języka Java, która pomaga oszczędzać pamięć zajmowaną przez zduplikowane obiekty String w aplikacjach Java. Zmniejsza ona wykorzystanie pamięci przez obiekty String w stercie pamięci Java, ponieważ zduplikowane lub identyczne wartości String współdzielą tę samą tablicę znaków.
Procesor komunikatów Apigee Edge to komponent oparty na języku Java. Używanie deduplikacji ciągów znaków w procesorze komunikatów może zwiększyć wydajność serwerów proxy interfejsu API, zmniejszając wykorzystanie pamięci, zwłaszcza jeśli serwery proxy interfejsu API intensywnie korzystają z ciągów znaków.
Funkcji deduplikacji ciągów znaków można używać tylko z modułem odśmiecania pamięci G1 (G1GC) w aplikacjach Java. Jeśli chcesz włączyć tę funkcję w procesorze komunikatów, musisz mieć już włączony moduł G1GC lub włączyć zarówno G1GC, jak i deduplikację ciągów znaków w procesorze komunikatów.
Zanim zaczniesz
- Jeśli nie znasz modułu G1GC, przeczytaj artykuł Wprowadzenie do modułu odśmiecania pamięci G1.
- Jeśli nie znasz deduplikacji ciągów znaków, przeczytaj artykuł Deduplikacja ciągów znaków w module odśmiecania pamięci G1.
- Jeśli nie wiesz, jak włączyć moduł G1GC w procesorach wiadomości Edge, przeczytaj artykuł Włączanie modułu G1GC w procesorach wiadomości.
- Jeśli nie wiesz, jak skonfigurować właściwości Edge w Private Cloud, przeczytaj artykuł Jak skonfigurować Edge.
Włączanie deduplikacji ciągów znaków w procesorach wiadomości
Z tej sekcji dowiesz się, jak włączyć funkcję deduplikacji ciągów znaków w procesorach wiadomości Edge
Procesory. Deduplikację ciągów znaków można włączyć za pomocą właściwości
useStringDeduplication w komponencie procesora komunikatów. Domyślnie ta
właściwość jest ustawiona na false w procesorach wiadomości. Aby skonfigurować dowolną właściwość w procesorze wiadomości, użyj tokena zgodnie ze składnią opisaną w artykule Jak skonfigurować Edge.
Aby włączyć deduplikację ciągów znaków w procesorach wiadomości, wykonaj te czynności:
- Znajdź token dla właściwości useStringDeduplication.
- Włącz useStringDeduplication w procesorze komunikatów.
Znajdowanie tokena dla właściwości useStringDeduplication
Poniższe kroki pokazują, jak znaleźć token dla właściwości useStringDeduplication:
-
Wyszukaj właściwość
useStringDeduplicationw katalogu źródłowym procesora komunikatów/opt/apigee/edge-message-processor/sourceza pomocą tego polecenia:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/source
-
Wynik tego polecenia pokazuje token dla właściwości procesora wiadomości
useStringDeduplicationw ten sposób:/opt/apigee/edge-message-processor/source/conf/system.properties:useStringDeduplication={T}conf_system_useStringDeduplication{/T}Ciąg znaków między tagami
{T}{/T}to nazwa tokena, który możesz ustawić w pliku.propertiesprocesora wiadomości. Token dla właściwościuseStringDeduplicationwygląda więc tak:conf_system_useStringDeduplication
Włączanie deduplikacji ciągów znaków w procesorach wiadomości
Poniższe kroki pokazują, jak włączyć deduplikację ciągów znaków w procesorach wiadomości Apigee:
-
Otwórz w edytorze plik
/opt/apigee/customer/application/message-processor.propertiesna maszynie procesora komunikatów. Jeśli plik nie istnieje, utwórz go. Na przykład:vi /opt/apigee/customer/application/message-processor.properties
-
Dodaj do tego pliku ten wiersz:
conf_system_useStringDeduplication=true
- Zapisz zmiany.
-
Upewnij się, że właścicielem tego pliku właściwości jest użytkownik
apigee. Na przykład:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
-
Uruchom ponownie procesor komunikatów za pomocą tego polecenia:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Jeśli masz więcej niż jeden procesor komunikatów, powtórz te czynności na wszystkich procesorach komunikatów.
Sprawdzanie deduplikacji ciągów znaków w procesorach wiadomości
Z tej sekcji dowiesz się, jak sprawdzić, czy deduplikacja ciągów znaków została prawidłowo włączona w procesorach wiadomości.
Mimo że do włączenia deduplikacji ciągów znaków w procesorze komunikatów używasz tokena conf_system_useStringDeduplication, musisz sprawdzić, czy rzeczywista właściwość useStringDeduplication została ustawiona na nową wartość w ten sposób:
-
Wyszukaj właściwość
useStringDeduplicationw katalogu/opt/apigee/edge-message-processor/confi sprawdź, czy została ustawiona na nową wartość. Na przykład:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/conf
-
Jeśli deduplikacja ciągów znaków została prawidłowo włączona w procesorze komunikatów, poprzednie polecenie wyświetli nową wartość w pliku
system.properties.Przykładowy wynik poprzedniego polecenia po włączeniu deduplikacji ciągów znaków w procesorze komunikatów:
/opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
W przykładowym wyniku zwróć uwagę, że właściwość
useStringDeduplicationzostała ustawiona na nową wartośćtruew plikusystem.properties. Oznacza to, że deduplikacja ciągów znaków została prawidłowo włączona w procesorze komunikatów. -
Jeśli nadal widzisz starą wartość właściwości
useStringDeduplication, sprawdź, czy prawidłowo wykonano wszystkie czynności opisane w sekcji Włączanie deduplikacji ciągów znaków w procesorach wiadomości. Jeśli pominiesz jakiś krok, powtórz wszystkie czynności. - Jeśli nadal nie możesz włączyć deduplikacji ciągów znaków, skontaktuj się z zespołem pomocy Apigee .