Optymalizacja serwera minecraft

Pytania i problemy
ziomal401
ziomal401

Siemano juz kiedys pisalem posta apropo tego ale dalej mam problem z tpsami i zużyciem ramu gdy wlaczam serwer mc to zabiera okolo 3/4gb ramu i caly czas to rosnie nie zaleznie od ilosci graczy po restarcie sie uspokaja na jakis czas, korzystam z silniku paper 1.15.2.

Drugi problem to niskie tpsy w okolicach 10-12 ale lagi nie sa odczuwalne o co chodzi

lista pluginow: image|690x140

a i dodam ze mam vpsa 8 gb ramu

plus czesto w konsoli wyskakuje: image|690x14

POMOCY !!!

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

To ostrzeżenie będzie się pojawiać zawsze, jeśli twój serwer spada na dłużej poniżej 20 TPS. We wcześniejszych wersjach po prostu go nie było.

TeYroX
TeYroX

10 TPS'ów przy ilu graczach? Jakie masz parametry startowe? wpisz komendę /timings report i podrzuć tutaj timingi ;)

NewSpectra
NewSpectra

Witaj w klubie

anon31176317
anon31176317

Jaki węzeł?

Mój n109

ziomal401
ziomal401

n118

anon31176317
anon31176317

W timingsach nic takiego nie ma, udostępniają je nawet na discordzie Paper/Spigota

ziomal401
ziomal401

a ok xd

co nie zmienia faktu ze dalej mam ten problem i nie wiem co zrobic bo 8gb ramu przy 20 graczach nie wystarcza a teraz przy 7 osobach 79% ramu zrzera

anon31176317
anon31176317

Dodaję jeszcze raz, bo z jakiegoś powodu ocenzurowano mi (komuna) wpis ze słowem zawierającym element porcelany.

Nic nie zmieniałem w pluginach i ciągle 3 rdzenie procka się zażynają przy 14 osobach, gdy każdy normalnie gra. Za dnia było ok, normalne żuzycie, a jak walnęło wieczorem to 90,100% na każdym rdzeniu i to bez powodu. Mapa wygenerowana w 100%.

Edit: 23:26 - Jest 8 graczy, wynik ten jest nierealny, normalnie grają, nikt nic nie robi.Dzień wcześniej było 20 graczy i zero problemów.

cats34|690x352

psycho
psycho

image|690x103

Pierwsza linijnka htop'u mnie niepokoi, proces serwera zużywa 90% RAMu i 279% CPU.

anon31176317
anon31176317

Ile graczy? Jaki węzeł?

ziomal401
ziomal401

pozdro ja mam 20% ramu przy wyłączonym serwerze 😦

anon31176317
anon31176317

image|667x96 4 osoby, które afkują i nic nie robią XD

ziomal401
ziomal401

może ktos z lvlupa podpowie bo mam to samo

DBanaszewski
DBanaszewski α-tester v3

Według wykresów htop nikt nie jest stwierdzić co jest dokładnie źle, bo prawdopodobnie nie macie włączonych "zaawansowanych kolorków", które mogłby wskazać na inne rzeczy typu steal.

Jeżeli możecie, pokażcie wasze "topy", przy pomocy komendy top. Zróbcie zrzut tych wartości: Screenshot_20200420-082702_Termius|690x132

Po wykonaniu zrzutu ekranu, CTRL+C i gotowe.


Jeżeli ktoś Wam kradnie vCPU, będzie to na topie widoczne.

ziomal401
ziomal401

DBanaszewski:

top

mnie bardziej ram martwi

TheMultii
TheMultii

Nie powinien. Linuxy sobie lubią ram alokować. Masz najprawdopodobniej htopa źle skonfigurowanego i nie widzisz po prostu wszystkiego :slight_smile:

ziomal401
ziomal401

image|690x135

POMOCY

psycho
psycho

Podaj wyniki z top i htop na swoim VPS.

ziomal401
ziomal401

image|517x199

image|690x53

tak wyglada przy 8 graczach na serwerze

DBanaszewski
DBanaszewski α-tester v3

top pokaż górę z % - tam odczytamy, czy ktoś nie kradnie Twojego vCPU. @ziomal401 dalej czekamy na odczyt z top.

PatryQHyper
PatryQHyper

Może nawaliłeś dużo skryptów? One bardzo obciążają naszego kochanego Minecrafta

ziomal401
ziomal401

całe 3 skrypty po 2 linijki

PatryQHyper
PatryQHyper

co te skrypty robią?

ziomal401
ziomal401

image|654x82

DBanaszewski
DBanaszewski α-tester v3

Jak można zauważyć, 21,7% CPU jest wykradane przez innych użytkowników na węźle. Ze względu na COVID-19, mógłbym napisać, że to norma, ale to jest KVM 😕

psycho
psycho

Jaki to jest node? (node to numer po n - np. n1 to node 1)

aggankx
aggankx

też ostatnio miałem 27% steala, masakra, TPSy spadły do 6

ziomal401
ziomal401

no i co z tym robić, jak przejde na wlasna maszyne to nie bedzie problemu xd.

aggankx
aggankx

To jest jakieś rozwiązanie :) Natomiast jest też ta nowa oferta lvlup bez oversellingu gdzie steala być no... Nie może (nie powinno) Też o niej myślę ale nie wiem czy się to opłaca :v

Natomiast inna kwestia że optymalizacja na 1.15 to ciężka sprawa

anon31176317
anon31176317

Jeśli następnym razem znowu nastąpi anomalia tego typu, to wkleję tutaj skrina z top . Z moich obserwacji wynika, że do kradzieży procesora dochodzi w Weekendy czasem z rana, a czasem wieczorem.

Dziwi mnie natomiast, że nie zaimpletowano systemu automatycznego wyłączenia vpsa lub chociaż ograniczenia jego mocy procesora, jeśli wpływa na węzeł.

Edit: Delikatne dzisiaj jest kradziony, szkoda że nie wpisałem tamtej komendy wtedy, bo pewnie wynik byłby ciekawy 😛

image|690x33

Delikatna kradzież, to nie problem, ale tak mocna jak w weekend to już jest problem. Najwięcej o tej godzinie ST skacze do 4.1%

Lempik
Lempik

Dobra, dowiedziałem się, że istnieje coś takiego jak podkradanie CPU i że można to zobaczyć w "top". Dziś więc ślędzę ten parametr i widzę, że mi skaczę w porywach do 6. Jeżeli jednak będzie wartość wyższa, to co z tym mogę zrobić?

TheMultii
TheMultii

Napisać ticket do supportu, a oni zbanują/ostrzegą tego delikwenta.

DBanaszewski
DBanaszewski α-tester v3

anon31176317:

Dziwi mnie natomiast, że nie zaimpletowano systemu automatycznego wyłączenia vpsa lub chociaż ograniczenia jego mocy procesora, jeśli wpływa na węzeł.

Będzie/jest w panelu v4, ale jeszcze mamy ten nieszczęsny v2 ;)

anon31176317
anon31176317

Aha ...

image|690x93

image|690x101

image|690x102

image|690x104

aggankx
aggankx

Pisałem dziś zgłoszenie na steal, dostałem odpowiedź że jak chcę nie mieć steala to mam kupić KVM Game Turbo

Lempik
Lempik

Zapytam jeszcze o coś innego. Czy mogę się jakoś dowiedzieć, czy ja komuś podkradam CPU?

Timo
Timo Moderator forum.lvlup.pro

Lempik:

czy ja komuś podkradam CPU Wprost tego nie możesz sprawdzić. Jeśli byś komuś podkradał, to tylko u takiej osoby pokazałby się parametr steal.

Nawet zużywanie całego przydziału procesora nie oznacza, że wystąpi steal u innych - przecież ktoś może mało używać i wtedy się zrekompensuje. Jednak może on wystąpić, jeśli sporo osób będzie używało go mocniej.

anon31176317
anon31176317

Postarajcie się po prostu zlimitować swoje serwery Minecraft. Im mniej Wasz serwer będzie brał procka, tym więcej procka będzie dla pozostałych.

Można zastosować np. silnik tuinity https://ci.codemc.io/job/Spottedleaf/job/Tuinity/

Po zainstalowaniu tuinity ustawiacie w server.properties view-distance nawet na 2, odpowiednio też zmieniacie w spigot.yml mob-spawn-range na 2 .

Zaś wygenerowany plik tuinity.yml edytujecie w poniższy sposób:

# Configuration file for Tuinity.
lag-compensate-block-breaking: true
target-chunk-sends-per-player-per-second: 17.0
delay-chunkunloads-by: 2
config-version-please-do-not-modify-me: 1
world-settings:
  default:
    max-pending-chunk-loads: 1
    optimized-tracker-track-range: -1
    optimized-tracker-untrack-range: -1
    no-tick-view-distance: 10
    optimized-tracker: true
    spawn-limits:
      monsters: -1
      animals: -1
      water-animals: -1
      ambient: -1
  world: {}
  world_nether: {}
  world_the_end: {}

Czyli fizyczny serwerowy view-distance to 2 , ale gracz widzi 10 :slight_smile:

No-Tick-View dostępny w Tuinity powoduje bezlagowe wczytywanie naszej mapy.

Warto też zainstalować wydajniejszą Javę 11 - apt install adoptopenjdk-11-hotspot.

Większość pluginów powinna być kompatybilna z Javą 11, ale najlepiej sprawdzić to samemu na lokalnej kopii swojego serwera.

Najbardziej lagotwórcze są Hoppery i warto je zlimitować w pliku spigot.yml np. w ten sposób:

    ticks-per:
      hopper-transfer: 16
      hopper-check: 2

W ostateczności można ustawić to tak:

    ticks-per:
      hopper-transfer: 32
      hopper-check: 8

Można też w pliku paper.yml ustawić max-entity-collisions na 2

Czym jest Tuinity? Jest forkiem Papera walczącym o optymalizację serwerów Minecraft na najnowszych wersjach. Jako jeden z pierwszym silników na Java Edition wprowadził beztickowe ładowanie świata.

Wprowadzenie takich poprawek oraz tego silnika powinno odciążyć nasz procesor na naszym VPS dzięki czemu mimo odczuwalnego oversellingu serwer będzie mógł działać równie dobrze nie psując zbytnio rozgrywki samym graczom. Wszystko co tu opisałem dotyczy wersji 1.15.2.

Opisane tutaj przeze mnie poprawki pomogły na moim serwerze, ale nie zapominajmy że każdy serwer jest inny, Zalecam sprawdzanie timingsów przy największym ruchu i wtedy będziecie wiedzieć, co musicie dokładnie zoptymalizować.

anon31176317
anon31176317

image|690x106

Fajne ST ... takie 40% zabieranego procka ... super... za co ja płacę?

EDIT 24 kwietnia:

Węzeł został zmieniony z n109 na n166, póki co jest dobrze, więc na razie zaprzestaję udzielania się w tym temacie pod kątem oversellingu. Podziękowania dla Pani Pauliny za szybką reakcję w temacie migracji! :slight_smile:

kjakkonrad
kjakkonrad

Wersja 1.15.2 to tragedia 47 graczy przy 8 GB ramu! I słaby tps to podstawa u mnie ;/ korzystałem z poradnika na spigotmc do optymalizacji serwera ale to gowno dało.

Dodam ze na wersji 1.12.2 przy 1,5gb ramu można 30 graczy utrzymać i serwer śmigał ;)

SP24
SP24

Ja na twoim miejscu w pierwszej kolejności wyrzucilbym plugin Skript i wszystkie jego dodatki. Dodatkowo jeśli to jakiś większy serwer polecam użyć pluginu https://www.spigotmc.org/resources/cmi-270-commands-insane-kits-portals-essentials-economy-mysql-sqlite-much-more.3742/ Zastąpi ci on kilka innych pluginów i ma ogólnie duuuużo funkcji. Cena może nie jest zbyt zachęcająca, ale sam korzystam i według mnie warto wydać jednorazowo te 15$ i mieć coś co w zasadzie zastąpi Ci z 80% pluginów.

Patbox
Patbox

Niech zostanie przy Essentials. Ja uważam, że używanie 1 pluginu do wszystkiego jest złym pomysłem. Co do skrypta, to zwykła komenda wypisująca coś nie zabije mu serwera. Dodatkowo brakuje danych (timingsów), aby mu jakkolwiek rozsądnie pomóc. Bez nich możemy jedynie spekulować co laguje, a problemem może być niepoprawna konfiguracja samego serwera (aka pluginy nie są wtedy powodem lagów).

aggankx
aggankx

xD uwielbiam takie komentarze "wyrzuć skript!" bez żadnego poparcia. Skript nie jest taki zły, a dobrze napisane skrypty działają lepiej niż źle napisane pluginy.

anon31176317
anon31176317

Dokładnie tak. Wszystko też zależy od tego jakie kto ma skrypty. Jeśli są to jakieś skrypty działające od czasu to czasu, to nic nie zepsują. Jeśli skrypt działa stale i ciągle coś zapisuje, to wtedy faktycznie może pojawić się problem. Wszystko jednak zależy od tego jak ktoś zrobi skrypt i jak go zoptymalizuje.

SP24
SP24

aggankx:

xD uwielbiam takie komentarze “wyrzuć skript!” bez żadnego poparcia.

Mam złe wspomnienia z pluginem Skript. Wiem też, że większość osób przypisuje ważne zadania właśnie skryptom, bo łatwiej jest napisać skrypt. W sieci znajduje się dużo fajnych pluginów, należy tylko dobrze poszukać. Po prostu uważam, że skryptów powinno używać się w ostateczności i nie przypisywać im żadnych ważnych funkcji.

DoreK
DoreK α-tester v3

anon31176317:

Warto też zainstalować wydajniejszą Javę 11 Nie warto. Trzeba, bo Tuinity wymaga tej wersji Javy.

anon31176317
anon31176317

Jesteś nie w temacie. Tuinity już nie wymaga Javy11

DoreK
DoreK α-tester v3

To że sugeruję się informacją sprzed nieco ponad tygodnia nie oznacza że jestem nie w temacie, to jest bardzo świeża zmiana image|690x24 :)

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.