Master-X
Форум | Новости | Статьи
Главная » Форум » CJs » 
Тема: Для чего в скриптах крон?
цитата
23/11/11 в 22:57
 st01en
Собственно сабж smail101.gif Что именно выполняет крон? Знаю,- отправляет что-то в дев\нул smail101.gif
Это я к чему. Вобщем, была тут проблема с сервером, пришлось остановить все кроны. Так вот нагрузка упала в 4!!! раза. 25 кронов. Траф при этом поступал и все крутилось.
Что такого делает крон, что это нельзя встроить в сам скрипт? В винде есть ф-ция GetTickCount, которую используют как счетчик. Я не программер, и уж тем более не под линуксом icon_biggrin.gif но может есть какая-то ф-ция, которая заменит крон?
Думаю, это сильно бы облегчило жизнь icon_biggrin.gif
цитата
23/11/11 в 23:10
 paranoik.death
st01en писал:
Так вот нагрузка упала в 4!!! раза

нагрузку давал не сам крон, а те скрипты которые он запускал по расписанию
цитата
23/11/11 в 23:31
 Vyacheslav
Дк не сам крон напрягает сервер, а та задача, которую скрипт по его велению выполняет. Например пересчёт статистики или перерисовка морды ротатором. Хочешь как решение вместо крона задействуй трафик на сайте, но лучше от этого не станет.
Замени крон на что угодно, всё равно будут те же яйца, только с другого боку!
цитата
23/11/11 в 23:47
 Crystal Scripts
От перемены мест слагаемых сумма не меняется. Отказаться от крона можно, но периодические задачи, которые он выполняет (пересчёт статистики, генерация страниц с тумбами для ротатора, генерация топов, аутлистов и т.д.) требуют определённых ресурсов сервера и никуда от этого не деться.
цитата
24/11/11 в 03:37
 mickey
пропиши 25 кронов в отдельный сх файл и вызывай его одного по крону
сразу нагрузка слезет
а еще можно Джиттер поставить, слипы поставить и т.д.
когда экономили на дедиках изъебывались еще не так icon_mrgreen.gif
цитата
24/11/11 в 09:36
 st01en
sawm:
Т.е., все-таки кроны дают нагрузку?
И по-подробней про джиттер, 25 кронов в отдельный файл, слипы можно? icon_biggrin.gif Дело не в экономии, ну люблю я все оптимизировать smail101.gif
цитата
24/11/11 в 10:55
 newuser76
st01en писал:
Так вот нагрузка упала в 4!!! раза.

конфиг сервера указать было бы правильно. ну и траф суммарный. может у тебя кроме кронов и задач никаких не выполнялось. smail101.gif
цитата
24/11/11 в 12:52
 st01en
newuser76 писал:
конфиг сервера указать было бы правильно. ну и траф суммарный. может у тебя кроме кронов и задач никаких не выполнялось. smail101.gif


Ты сам понял, что спросил?

Crystal Scripts:
У вас вроде программер адекватный, может попробуете ради эксперимента сделать версию без крона? И посмотреть, что к чему. icon_cool.gif
цитата
24/11/11 в 12:56
 3Sky
st01en: блин, дружище. крон это такая хрень, которая запускает по расписанию другие хрени. как будильник )

не стоит по этому поводу, париться вообще
цитата
24/11/11 в 13:25
 Crystal Scripts
Цитата:
У вас вроде программер адекватный, может попробуете ради эксперимента сделать версию без крона? И посмотреть, что к чему.
Именно потому, что он у нас адекватный - не попробуем. В unix системах для выполнения периодичных задач ничего лучше и надёжнее чем крон не придумали. Нет смысла городить ту же самую задачу, но встроенными средствами скрипта, нагрузка меньше от этого не станет, в лучшем случае будет то же самое. А маркетинговые ходы вида "Скрипт не использует крон ... и поэтому не грузит сервер" совершенно не в нашем стиле icon_smile.gif

Как разнести грамотно кроны описано тут: Server+cron
цитата
24/11/11 в 13:39
 Semen_ssr
вот пара -top с серваков:
Цитата:
#317
last pid: 93183; load averages: 0.67, 0.90, 0.97 up 15+10:30:37 04:37:54
65 processes: 1 running, 64 sleeping
CPU: 3.3% user, 0.0% nice, 0.7% system, 0.2% interrupt, 95.9% idle
Mem: 536M Active, 1047M Inact, 242M Wired, 54M Cache, 112M Buf, 103M Free
Swap: 2048M Total, 532K Used, 2047M Free
#293
last pid: 33427; load averages: 0.43, 0.52, 0.57 up 4+21:27:39 23:48:22
59 processes: 4 running, 55 sleeping
CPU: 10.0% user, 0.0% nice, 3.5% system, 0.3% interrupt, 86.3% idle
Mem: 616M Active, 971M Inact, 222M Wired, 45M Cache, 112M Buf, 134M Free
Swap: 2048M Total, 4960K Used, 2043M Free

какие вызываются задачи: Crystal+Stream, Scj+Stream, CyberSEO, Inxy, NubilesTube.


так что, вот так smail101.gif

Последний раз редактировалось: Semen_ssr (25/11/11 в 08:21), всего редактировалось 1 раз
цитата
24/11/11 в 15:45
 Vyacheslav
st01en писал:
sawm:
Т.е., все-таки кроны дают нагрузку?
И по-подробней про джиттер, 25 кронов в отдельный файл, слипы можно? icon_biggrin.gif Дело не в экономии, ну люблю я все оптимизировать smail101.gif


Блин, я же обьяснял.. Не кроны дают нагрузку, а те задачи, которые выполняются по их расписанию. Оптимизировать нагрузку можно правильно расставив крон задачи. Выше об этом уже сказали.
Но слова подобные крон даёт нагрузку, равносильны тому, что сказать: неисправный двигатель автомобиля - падла шумит и не даёт спокойно ехать, может убрать его?!
цитата
24/11/11 в 23:19
 newuser76
Vyacheslav писал:
Блин, я же обьяснял..

бесполезно, судя по всему. 25 кронов, а человек не знает зачем они и как их упорядочить. про сервер и траф, кстати, я спрашивал не случайно, вероятно, и проигнорировано тоже не случайно.
цитата
24/11/11 в 23:54
 st01en
Ну я не совсем тупой icon_razz.gif и понимаю, что крон что-то запускает. Я и имел ввиду насколько это критично и можно ли нагрузку как-то распределить.
Crystal Scripts: в другом топике дал вариант решения smail54.gif Буду копать smail101.gif

Цитата:
top - 20:41:35 up 33 days, 14:53, 1 user, load average: 0.91, 1.40, 1.68
Tasks: 108 total, 2 running, 106 sleeping, 0 stopped, 0 zombie
Cpu(s): 4.6%us, 0.3%sy, 0.0%ni, 93.7%id, 1.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 5867924k total, 4982812k used, 885112k free, 389008k buffers
Swap: 3997680k total, 17612k used, 3980068k free, 2869396k cached

13 кристалов, 8 стримов и 9 инкси. Абсолютно не критично, но знать не помешает icon_biggrin.gif Сделаю разделение кронов, посмотрю на результаты icon_wink.gif

ЗЫ:Это я не тебе, умный падаван newuser76, написал, твой пост не видел icon_razz.gif
цитата
25/11/11 в 05:31
 cdroller
можно некоторые задачи реже вызывать, но для этого понимать надо что тот или иной крон дергает и зачем ... иногда необязательно статсу пересчитывать каждую минуту можно и раз в 5 мин поставить ... или там если ротатор автокроп или чек дергает какойнить постоянно, то можно некоторые задачи вообще выключить, часто на скриптах крон не один а несколько на СТ например целых 3 или даже 4 если синхронизация стоит, из которых можно оставить только 1 в зависимости от задач ... но во многих скриптах это не прокатит, ибо там крон может дергать не конкретную задачу а целый список описанный в файле вызываемом ...
цитата
25/11/11 в 15:21
 newuser76
это не есть хорошо:load average: 0.91, 1.40, 1.68 нагрузку в пределах 1 лучше держать.
Swap 17612k used - по опыту, если свап уже дергался, он будет периодически таки юзаться, значит для твоих проектов памяти стоит добавить.
зы. не огрызайся, ничего против тебя не имею.
цитата
30/11/11 в 10:24
 st01en
Итак, результаты. Разделил кроны - кристалы в один файл, инкси и стримы в другой.
Было:
st01en писал:
top - 20:41:35 up 33 days, 14:53, 1 user, load average: 0.91, 1.40, 1.68
Tasks: 108 total, 2 running, 106 sleeping, 0 stopped, 0 zombie
Cpu(s): 4.6%us, 0.3%sy, 0.0%ni, 93.7%id, 1.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 5867924k total, 4982812k used, 885112k free, 389008k buffers
Swap: 3997680k total, 17612k used, 3980068k free, 2869396k cached


Стало:
Цитата:
top - 07:06:24 up 39 days, 1:18, 1 user, load average: 0.27, 0.33, 0.35
Tasks: 108 total, 1 running, 107 sleeping, 0 stopped, 0 zombie
Cpu(s): 3.8%us, 1.5%sy, 0.0%ni, 90.3%id, 4.3%wa, 0.0%hi, 0.2%si, 0.0%st
Mem: 5867924k total, 5596968k used, 270956k free, 380588k buffers
Swap: 3997680k total, 21452k used, 3976228k free, 3550920k cached

Все работает без проблем уже вторые сутки, ни инкси, ни стримы, ни кристалы не ругаются.
Единственное, в файл с кронам после каждой строки нужно ставить точку с запятой. Иначе у меня шелл выполнял только первый крон.
Вот так примерно
Цитата:
#!/bin/sh
cd /home/user/domain.com/crtr/bin && ./cron.sh;
cd /home/user/domain.com/crtr/bin && ./cron.sh;
cd /home/user/domain.com/crtr/bin && ./cron.sh;
cd /home/user/domain.com/crtr/bin && ./cron.sh;
cd /home/user/domain.com/crtr/bin && ./cron.sh;
cd /home/user/domain.com/crtr/bin && ./cron.sh;


Эта страница в полной версии