Limit cpu na serwer

krzukosz | 2018-12-23 00:22:54 UTC | #1

Witam, posiadam taką komendę startową
su - ‘.$GET[‘id’].’ -s /bin/bash -c “screen -AmdS ‘.$GET[‘id’].’ java ’ -Xmx’.$_GET[‘ram’].’M -Xms512M -jar server.jar”

Chciałbym tutaj zlimitować procesor.
I dodatkowo mam pytanie do czego są te parametry startowe
-XX:+UseG1GC -XX:MaxGCPauseMillis=5


Nieznajomy11 | 2017-07-30 09:19:37 UTC | #2

Sama Java nie oferuje nic takiego jak ograniczenie CPU, najlepiej to robić poprzez wirtualizacje.

http://www.oracle.com/technetwork/articles/java/g1gc-1984535.html


Timo | 2018-12-23 00:22:46 UTC | #3

Przez screena, ani javę, nie możesz limitować procesora. Jeśli nie chcesz się bawić w stawianie mniejszych VPSów, polecam Ci dockera - on podobno umie takie rzeczy. Poczytaj poradniki.


krzukosz | 2017-07-30 15:28:13 UTC | #4

Nie chcę się bawić w stawanie vpsów. Tylko w ograniczenie procesora na serwer minecraft. Dałem tam komendę startową


LinGruby | 2017-07-30 15:54:19 UTC | #5

To ja powiem tak wszystko zależy od kernela zbudowanego pod daną maszynę ( tzw. kernel szyty na miarę ) i od odpowiednich patch’y na niego nałożonych, a wtedy CPU może pracować na 100% i wszystko działa płynnie tak jak u mnie od prawie 2 miesięcy, no ale to już wyższa szkoła jazdy ;-)

a co do ograniczeń jakichkolwiek to nie jestem zwolennikiem, sprzęt powinien działać płynnie nawet przy wspomnianych już 100% CPU non stop :-)


krzukosz | 2017-07-30 20:53:54 UTC | #6

Pokaż mi hosting który nie ogranicza procesora?

Nie chce żeby ktoś mi zapchał cały procek.


LinGruby | 2017-07-30 21:42:27 UTC | #7

[quote=”krzukosz, post:6, topic:3488”]
Nie chce żeby ktoś mi zapchał cały procek.
[/quote]

a co masz na myśli?, CPU to nie to co RAM jak ram się skończy wszystko łapie zadyszkę, CPU może na 100% pracować i nic się nie stanie jak pisałem ja mam tak na lapku jak i na KVM i jakoś wszystko płynnie działa a na serwie APRSC mam średnio ponad 100-e użytkowników z całego świata ;-)


krzukosz | 2017-07-30 21:58:39 UTC | #8

Ale po co ludzie wszystko utrudniają. Ja zapytałem o limitowanie procesora np programem cpulimit na linuxa a wszyscy mówią że to nie potrzebne.


Timo | 2017-07-31 09:25:13 UTC | #9

Dokładnie, przejdźmy do sedna.
Na początku podałem propozycję z Dockerem - nim można podobno CPU limitować.


Nieznajomy11 | 2017-07-31 10:04:52 UTC | #10

https://docs.docker.com/engine/admin/resource_constraints/#configure-the-default-cfs-scheduler


krzukosz | 2017-07-31 16:01:46 UTC | #11

za dużo z tym zabawy. Wolał bym cpu limitem


happi | 2017-07-31 16:59:36 UTC | #12

[quote=”krzukosz, post:11, topic:3488”]
Wolał bym cpu limitem
[/quote]

No to go użyj, w czym problem?


krzukosz | 2017-07-31 23:19:52 UTC | #13

Próbowałem użyć komendy

screen -AmdS s2 cpulimit -l 1 – java -XX:+UseG1GC -XX:MaxGCPauseMillis=5 -Xmx1024M -Xms512M -jar server.jar

Komenda nie działa serwer się nie odpala jak usunę screena to idzie


tirex | 2017-08-01 08:38:37 UTC | #14

Stwórz screena ręcznie i później spróbuj wstawić komendę ręcznie i powinnien jakiś error wyskoczyć.
Jak screen się od razu zamyka to spróbuj dać output screena do pliku.


luxDev | 2017-08-01 12:35:13 UTC | #15

Są to parametry odpowiedzialne za GarbageCollector który jest używany przez samą Jave do “czyszczenia ramu”.


krzukosz | 2017-08-01 21:20:23 UTC | #16

Okej, wiesz jak optymalnie to ustawić?

@tirex już tak próbowałem lecz i tak nie działa. CPUlimit otwiera się w swoim screenie.
Jest może jeszcze jakiś program który może ograniczać procesor?


LinGruby | 2017-08-01 23:48:38 UTC | #17

@krzukosz
może coś pomoże ;-)

zrób skrypt o zawartości ( o ile składnia jest poprawna i działa bo nie wnikałem w nią )

 #!/bin/sh
 # Skrypt startowy

 s2 cpulimit -l 1 -- java -XX:+UseG1GC -XX:MaxGCPauseMillis=5 -Xmx1024M -Xms512M -jar server.jar

nazwij go np: cpulimit.sh dodaj do /usr/local/bin

i potem startujesz

screen -AmdS sh "cpulimit.sh"

powinno działać u mnie podobne skrypty działają ;-)


krzukosz | 2017-08-02 02:06:40 UTC | #18

Jak próbuję uruchomić z screenem to nie uruchamia. Bez screna działa. :( ma ktoś jakiś pomysł jeszcze?


kamcio96 | 2017-08-15 17:06:18 UTC | #19

Zainstaluj https://pterodactyl.io/
Limit ramu, cpu, dysku i wszystko inne ;)


Timo | 2018-12-23 00:22:05 UTC | #20