Spadające tpsy na serwerze

Pytania i problemy
vps, minecraft, zarządzanie
Pomidor
Pomidor

Witam, od niedawna posiadam serwer na lvlup i mam pytanie czym mogą być spowodowane spadające tpsy na serwerze? Przy około 10/15 osobach tpsy zaczynają znacznie spadać. Vps który posiadam to 10GB RAM KVM UpRyze, a niżej lista pluginów

AFKKick, ClearChat, PlaceholderAPI, UltimateAutoRestart, ChestSort, Universes, SklepMC, CraftEnhance, ColoredChat, Universe-Nethers, MOTD, LuckPerms, AutoMessage, MySkin, ProtocolLib, MVdWPlaceholderAPI, ImageMaps, StaffChatReloaded, Vault, ColoredAnvils, HolographicDisplays, Marriage, MyCommand, WorldEdit, TNTRun_reloaded, Essentials, AdvancedBan, Multiverse-Core, OnTime, EssentialsChat, CrazyAuctions, TAB, SuperVanish, WorldGuard, Insights, PhatLoots, RandomTeleport, EssentialsSpawn, CoreProtect, WorldGuardExtraFlags, Jobs, WorldBorder, ProtectionStones, MobHeads, ChestShop, AuthMe, Shopkeepers, LastLoginAPI, OreAnnouncer

Timo
Timo Moderator forum.lvlup.pro

Przebrnąłeś już może przez ten wątek, jeśli masz serwer na 1.13+?

https://lvlup.rok.ovh/t/obszerny-poradnik-dotyczacy-optymalizacji-serwerow-minecraft-1-13/14662?u=timo

Pomidor
Pomidor

Nie widziałem tego, sprawdze, pozmieniam i dam znać jak wyszło.

michociaak
michociaak

Pomidor podeślij screen z komendy top w konsoli serwera VPS. Dodatkowo możesz włączyć timingi [/timings on] i po 15 minutach wpisać /timings paste. Wejść w link i zobaczyć co obciąża serwer. Jaki masz render-distance ustawiony na serwerze? Jeżeli jest zbyt wysoki może powodować lagi.

Pomidor
Pomidor

image|370x500

view distance na 5

michociaak
michociaak

Jakiego silnika używasz?

Pomidor
Pomidor

spigot na wersji 1.16.2

michociaak
michociaak

To jest serwer survival? Jeśli tak, to polecam zmienić silnik na purpur - powinien uspokoić trochę tpsy. Miałem ten sam problem i u mnie wystarczyła zmiana silnika na purpur. Dodatkowo tak jak @Timo wspomniał, zapoznaj się z tamtym poradnikiem

Pomidor
Pomidor

tak, survival. Dzięki, na pewno spróbuje.

BrixNW
BrixNW

Widzę nikt jeszcze nie zapytał, wygenerowałeś wcześniej mape czy dopiero teraz gracze ją renderują? Bo to może powodować lagi.

Pomidor
Pomidor

ogólnie mapa jest dość wielka, bo 15x15k kratek, ale nie wyrenderowalem, serwer stoi okolo 2 miesiecy, wiec mysle ze znaczna czesc mapy jest wyrenderowana.

Michall
Michall
  1. Wyślij timingi :slight_smile:.
  2. Tak jak ktoś wyżej napisał przejdż na tuinity lub purpura na 1.16.5. Aktualna wersja której używasz ma kilka exploitów które zostały już naprawione w nowszych wersjach.
  3. Również ktoś jeszcze ci wyżej to napisał ale wyrenderuj mapę używając np chunky: https://www.spigotmc.org/resources/chunky.81534/ . Nie ważne czy serwer stoi już 2 miesiące mapa i tak nie będzie wygenerowała co będzie powodowało spadkiem wydajności.
  4. Użyj tego poradnika: https://www.spigotmc.org/threads/guide-server-optimization%E2%9A%A1.283181/. Ten na forum dawno nie był aktualizowany.
  5. Po wysłaniu timingów możesz wkleić je na tym discordzie: https://discord.gg/sRE4G6urZC. Na kanale #bots znajduję się bot który służy do analizy timingów.

Na razie to wszystko do póki nie wyślesz timingów.

Pomidor
Pomidor

Wszystko zmienione, tak jak ten bot na discordzie pokazał, serwer trzymie sie od ponad 4h bez zadnego spadku tpsow. Dziekuje wszystkim za pomoc!

michociaak
michociaak

Nie ma problemu, od tego tutaj jesteśmy 😃 Jeżeli będziesz potrzebował pomocy w czymś jeszcze, nie bój się pytać

Pomidor
Pomidor

Wiec bylo dobrze, az do 2 dni wstecz. Spadki tps powróciły i do tego crashe serwera. Żeby było mało wieśniaki które były zarażone i uleczone spowrotem, dziwnie sie zbugowały i nie reagują na nic, nie ruszają się, nie biegają totalnie nic.

popatrzałem w logach i znalazłem to:

[08:57:02] [Paper Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH  - git-Purpur-972 (MC: 1.16.5) ---
[08:57:02] [Paper Watchdog Thread/ERROR]: The server has not responded for 25 seconds! Creating thread dump
[08:57:02] [Paper Watchdog Thread/ERROR]: ------------------------------
[08:57:02] [Paper Watchdog Thread/ERROR]: Server thread dump (Look for plugins here before reporting to Paper!):
[08:57:02] [Paper Watchdog Thread/ERROR]: ------------------------------
[08:57:02] [Paper Watchdog Thread/ERROR]: Current Thread: Server thread
[08:57:02] [Paper Watchdog Thread/ERROR]: 	PID: 17 | Suspended: false | Native: false | State: RUNNABLE
[08:57:02] [Paper Watchdog Thread/ERROR]: 	Stack:
[08:57:02] [Paper Watchdog Thread/ERROR]: 		java.base@11.0.10/java.lang.StringLatin1.toLowerCase(StringLatin1.java:397)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		java.base@11.0.10/java.lang.String.toLowerCase(String.java:2503)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.permissions.PermissibleBase.calculateChildPermissions(PermissibleBase.java:204)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.permissions.PermissibleBase.recalculatePermissions(PermissibleBase.java:177)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.plugin.SimplePluginManager.dirtyPermissibles(SimplePluginManager.java:782)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.plugin.SimplePluginManager.calculatePermissionDefault(SimplePluginManager.java:761)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.plugin.SimplePluginManager.addPermission(SimplePluginManager.java:728)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.plugin.SimplePluginManager.addPermission(SimplePluginManager.java:716)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		net.milkbowl.vault.Vault$1.run(Vault.java:156)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:100)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.MinecraftServer.b(MinecraftServer.java:1371)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:387)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1284)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1010)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:176)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		app//net.minecraft.server.v1_16_R3.MinecraftServer$$Lambda$3139/0x00000008408a0840.run(Unknown Source)
[08:57:02] [Paper Watchdog Thread/ERROR]: 		java.base@11.0.10/java.lang.Thread.run(Thread.java:834)
[08:57:02] [Paper Watchdog Thread/ERROR]: ------------------------------
[08:57:02] [Paper Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
[08:57:02] [Paper Watchdog Thread/ERROR]: ------------------------------

aktualnie 21 osób, ram jest w okolicach 3 gb, tpsy 12

michociaak
michociaak

Pojawia się jakiś crash-report? Jest szansa, że ktoś się bawi w crashowanie, dlatego warto zainstalować exploit-fixer i wymagany do jego działania HamsterAPI.

Jaki masz ustawiony render-distance?

Pomidor
Pomidor

folder z crash-reports pusty, zaraz zainstaluje te 2 pluginy. View distance ustawiony na 5.

michociaak
michociaak

Jasne, na czas problemów najlepiej jakbyś zmniejszył render do 3. Podeślij też ssa swojego steala [ST w prawym górnym rogu po wpisaniu komendy "top" w putty.] Jeśli jest zbyt wysoki, może to być powód lagów

Pomidor
Pomidor

st przed chwila byl 1.8, teraz spadło do 0.6

Pomidor
Pomidor

Serwera nie crashuje, zmieniłem silnik z purpura na papera. Problem jest taki, że czasami tpsy potrafią spaść bez konkretnego powodu do 13/14. Ktoś ma jeszcze jakieś pomysły?

michociaak
michociaak

Wyślij timingi.

Nohet
Nohet

obraz|289x500

michociaak
michociaak

image|427x500

Flagi Aikara:

java -Xms6G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar purpur1-16-5.jar nogui
Pomidor
Pomidor

Właśnie co do tego, zmienialem te ustawienia i po tym villagery sie rozwalily totalnie i nie reagowaly na nic.

Pomidor
Pomidor

Ostatnio mamy problem, im wiecej graczy tym bardziej laguje. Jest szansa ze ilosc rang moze lagowac serwer?

michociaak
michociaak

Raczej nie. W takim razie lepiej jakbyś ulepszył swój pakiet, bo w końcu - im więcej graczy, tym więcej potrzebnych zasobów.

XTurtleSupport
XTurtleSupport

Ulepszenie pakietu nic nie da po prostu trzeba dobrze zoptymalizować ja przy 8gb ramu na optymalizacji bota TPS nie ruszają się z 20 przy ponad 30 graczach

aggankx
aggankx

dużo też zależy od mapy i tego co robią gracze nie wszystko da się zoptymalizować

michociaak
michociaak

Po co się wypowiadasz skoro nie przeczytał*ś całego tematu? O optymalizacji wspominaliśmy @wyżej

A tutaj widać iż użytkownik napisał "Im więcej graczy tym bardziej laguje" po czym można uznać, że zwyczajnie przybyło mu graczy od ostatniego czasu i lagi wróciły, skoro optymalizacja już nie pomaga to chyba należy dokupić zasoby? + To że tobie działa, nie oznacza że mu będzie. On może mieć inne warunki na serwerze [inna wersja javy, inne programy które też zjadają zasoby].

XTurtleSupport
XTurtleSupport

Widzę że ty też nie dokładnie przeczytałeś cała optymalizację jaka zrobił od bota to usunął bo bugowały mu się villagerzy więc nie mów że zrobił 😕 Przynajmniej tak to rozumiem

XTurtleSupport
XTurtleSupport

Jeżeli jednak jest optymalizacja niech wyślę link do timingow żeby można było sprawdzić co laguje i wrzucić do bota może zapomniał o czymś

Pomidor
Pomidor

Wyślę timingi troche pozniej, ale wczoraj jak dalem 8 gb ramu przeznaczonego na serwer, to zaczelo nawet wywalac, a nie powinno skoro mam 10 gb na vps, czy się myle?

michociaak
michociaak

Zależy od tego czy na twoim serwerze VPS jest uruchomione coś innego [przykładowo bazy MySQL, strony www]

Pomidor
Pomidor

tylko serwer minecraft

XTurtleSupport
XTurtleSupport

To 8/10gb ramu do tylu osób to aż nadto

XTurtleSupport
XTurtleSupport

Daj link do timingow

devon
devon

Na testy proponuje wylaczenie spawnowania mobow one potrafia zrobic jatke z wydajnosci, szczególnie potwory

devon
devon

Pomidor:

silnik z purpura na papera. Problem jest taki, że czasami tpsy potrafią spaść bez konkretnego powodu do 13/14. Ktoś ma jeszcze jakieś pomysły?

Troche późno ale wiem co to powoduje. Zapis mapy. co jakiś czas serwer zapisuje mape mozesz policzyc ile godzin konkretnie, zawsze w tym samym odstepie. Po zapisaniu tps wraca do normy zapewne

Pomidor
Pomidor

Zapis mapy co 5 minut, zwiekszyc czy cos?

devon
devon

Raz na kilka godzin osobiscie mam

Pomidor
Pomidor

Chodzi o ten autosave z plikow bukkita tak?

system
system

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