Jeśli twój przekaźnik Tor zużywa więcej pamięci niż powinien, sprawdź poniższe porady:
- Jeśli używasz systemu Linux, możesz napotkać problemy z fragmentacją pamięci w implementacji biblioteki glibc malloc.
Dzieje się tak, gdy Tor zwalnia pamięć z powrotem do systemu, kawałki pamięci są fragmentowane, przez co są trudne do ponownego użycia.
Archiwum Tora jest dostarczane z wersją OpenBSD implementacji malloc, która nie ma aż tak dużo problemów z fragmentacją (kosztem wyższego zużycia CPU).
Możesz nakazać Torowi używanie tej implementacji poprzez:
./configure --enable-openbsd-malloc
.
- Jeśli prowadzisz szybki przekaźnik, to znaczy, masz wiele otwartych połączeń TLS, prawdopodobnie zużywasz dużo pamięci na rzecz wewnętrznych buforów OpenSSL (38KB+ na socket).
Poprawiliśmy OpenSSL tak, aby agresywniej zwracał nieużywane bufory pamięci.
Jeśli zaktualizujesz OpenSSL do wersji 1.0.0 lub nowszej, proces budowania Tora automatycznie rozpozna i użyje tej funkcji.
- Jeśli nadal nie możesz poradzić sobie z nadmiernym zużyciem pamięci, weź pod uwagę zmniejszenie rozpowszechnianej przepustowości Twojego przekaźnika.
Rozpowszechnianie mniejszej przepustowości oznacza, że będziesz przyciągał mniej użytkowników, więc twój przekaźnik nie będzie obsługiwał, aż tak dużej ilości użytkowników.
Sprawdź opcję
MaxAdvertisedBandwidth
w podręczniku użytkownika.
Biorąc to wszystko pod uwagę, szybsze przekaźniki Tor zużywają więcej pamięci RAM. Zużycie 500-1000 MB pamięci jest normalnym poziomem zużycia dla szybkiego przekaźnika wyjściowego.