Autor | Zpráva | ||
---|---|---|---|
Peet Profil |
#1 · Zasláno: 21. 3. 2018, 11:22:40
Dobry den,
chtel bych se zeptat jak mohu nastavit php skriptu, ktery poustim pres cron, nizsi prioritu. Importuji cronem objemne xml feedy, ktere zapisuji do databaze a je to spousty dat, a v nekterych chvilich to dost zabrzdi i frontend dotazy na mysql. Rad bych tedy nejak nastavil nizsi prioritu importu. Tzn. aby se vzdy odbavil frontend prioritne nezavisle na tom zda bezi importy nebo ne. Diky za rady. |
||
smitka Profil |
#2 · Zasláno: 21. 3. 2018, 11:29:01
|
||
Peet Profil |
#3 · Zasláno: 21. 3. 2018, 11:48:10
Diky, takze staci toto
nice -n 19 php some:script ? Nebo jak mohu zjistit s jakou prioritou bezi ostatni skripty ? Jde pouze o php skript nebo i o skripty, ktere se spusti uvnitr, v tomhle pripade prave treba mysqld, ktera pote brzdi ostatni veci. Diky |
||
smitka Profil |
#4 · Zasláno: 21. 3. 2018, 12:02:45
Pokud se skript pustí bez nice, tak má prioritu 0, nice bez parametrů nastaví 10 (čím vyšší, tím menší priorita). Priorita je pro proces a podprocesy jím spuštěné. DB je úplně jiný proces, takže ji to neovlivní. Ale pokud bude pomaleji běžet samotný skript, tak by mělo být i o něco menší tempo vysílání dotazů do DB.
|
||
Peet Profil |
ok, diky. otestuji a uvidim zda je to OK.
Tak to vypada, ze moc nefunguje. Ten php proces ktery spoustim cronem a ktery ma nastaveny nice ve vysledku zabira uplne minimum zateze. Vse to brzdi proces mysqld. Je nejaka moznost tedy nastavit nice pro mysqld spustene z toho php skriptu ? |
||
Keeehi Profil |
#6 · Zasláno: 21. 3. 2018, 17:12:30
mysqld není spouštěný PHP skriptem. mysqld je dlouhoběžící samostatný proces, který je většinou spouštěn automaticky po startu systému. PHP pak s tímto procesem jen komunikuje. Takže i když budeš mít třeba spuštěných 5 PHP procesů, tak všechny budou souběžně komunikovat stále s jedním mysqld procesem.
|
||
TomášK Profil |
#7 · Zasláno: 21. 3. 2018, 17:28:53
Kdybys náhodou používal MyISAM, tak jde použít
INSERT LOW_PRIORITY nebo INSERT DELAYED , ale nepředpokládám. Pokud ten import jen zapisuje, pak bych si vytvořil datový CSV soubor a naimportoval ho pomocí LOAD DATA . Mělo by to být daleko rychlejší a nenáročnější než provádět spousty INSERTů.
|
||
Časová prodleva: 6 let
|
0