hostmaster

hostmaster
Рейтинг
26
Регистрация
26.05.2009
Должность
system engineer

для корректного анализа, надо смотреть картину в динамике чтобы видеть какая именно память растет. Если кэш то как сказал предыдущий оратор всё ОК. поставте какой нибудь простой мониторинг ресурсов типа monit или collectd, графики покажут вам всё что нужно.

практически все современные свичи поддерживают bounding, то есть объединение 2-х (и более) сетевых интерфейсов в один (на стороне сервера). Это делается для избыточности, либо как в вашем случае для увеличения полосы.

соответственно вам надо узнать у хостера, поддерживают ли они эту feature и если да, то все решается очень просто.

настройте в monit перезапуск apache при достижении лимита занятой памяти

Zaqwr:
напишите апач на перле ещё =)
вобще rsync -va /my/source/file /my/target/file будет копить чуть ли не всё, если fs смонтирована без notime

это лечится параметрами запуска, о чем и написано в след предложении

dksm:
Можно глянуть на код?

что такого удивительного вы хотите там увидеть ?

https://gist.github.com/945d28c7ddc3ba6a0df9

Raistlin:
Зачем для этого перл... На баше легко. Вот оно:

old_hash=`md5deep /путь к файлу`
hash=`md5deep /путь к эталонному файлу`
if [ $old_hash != $hash ]; then
cat /путь к эталонному файлу > /путь к файлу
fi

этот вариант подходит только если md5 эталонного файла можно посчитать, в противном случае надо действовать по другому


посчитать md5 файла
if есть сохраненный md5 ?
if md5 текущего файла != записанное значение md5
перезаписать файл
fi
else
записать md5 в файл
fi

скрипт не нужен, ибо велосипед уже изобретен и называется rsync

 $ rsync -va /my/source/file /my/target/file 

проверять права, размер или контрольную сумму всё это настраивается через параметры rsync

в подобной ситуации когда нужно было чистить очень большой кэш nginx-а я написал скрипт который удалял 1k файлов и делал sleep. и запускал его с низким приоритетом.

всё таки отвечу на заданный вопрос,

1) кэш в nginx можно чистить просто удалением файлов из соответствующего каталога. find /cache -type f и так далее. nginx переживает такую операцию без всяких последствий

2) есть пач http://labs.frickle.com/nginx_ngx_cache_purge/ который позволяет делать тоже самое через http . Во FreeBSD этот пач включен в порт nginx

оптимальный вариант как раз и описан в статье master-master, если сервера не очень далко друг от друга то всё будет как ты хочешь.

Всего: 131