войти зарегистрироваться

Системы управления версиямиMercurial hgwebdir через FCGI + несколько разных хранилищ

Введение и отмазка


Доброго времени утра,

Возможно, всё о чём я сейчас буду рассказывать делается проще, правильнее, уже сделано, придумали ещё австралопитеки. Возможно это даже будет воспринято как издевательство над всем упомянутым, а вы зря потратите несколько минут своего драгоценного времени. Знайте — я предупреждал!

Если ещё не закрыли статью — обрисую ситуацию:

Что у нас есть


У нас есть nginx, mercurial несколько самостоятельных проектов, на каждый из которых имеется 3-4 репозитория. Ещё у нас иногда могут появляться сторонние разработчики, которым часть этих проектов показывать совершенно не обязательно.

Что со всем этим делать?

Персональные блоги «Караул, на нас была DDoS-атака!» :)

«На нас вчера была DDoS-атака, поэтому сайт не работал» - часто слышали? А вспомните от кого?

Вот мне кажется, что такое чаще всего раздается от руководителей молодых проектов. В принципе логично: надо развиваться, а кругом враги. И вражины не дремлют. Поэтому когда вдруг резко возрастает загрузка сервера, кончается память и потом наступают кранты – сразу ясно что это загадочный «DDoS». То есть, враги прокрались в датацентр, стали дергать за вилку в розетке и пукать на сетевую карту.

Готов поспорить, что у большинства «погорельцев» в качестве вебсервера использовался apache + mod_php. А чего вы тогда ждали? Когда в гости постучатся Google с Yandex-ом, и начнут лопатить тысячи страниц, сладкая жизнь закончится. Обычно просветление наступает, когда сервер падает по 2 раза в день в течение недели. Со слезами достаешь последнюю пачку денег и докупаешь в сервер память. На несколько месяцев помогает, потом все начинается по-новой.

"Проблема" полностью решается, например, использованием вместо апача nginx, lighttpd или чего-то подобного. Ну и переводом php в режим fast-cgi, само собой. Впрочем, грузиться техническими подробностями не интересно – по ссылкам документации хватает.

А теперь к бывалым: кто еще себя узнал :) ?