Системное администрирование

индекс
199,95

Хабраэффект глазами сервера или почему не стоит апачем раздавать статику

В статье я расскажу впечатления от хабраэффекта наблюдаемом на личном сервере.



В ней не будет ничего нового для тех, кто давно занимается вебом, а особенно для администраторов решавших вопросы защиты от DDOS.
Просто небольшая заметка о том, как я наблюдал хабраэффект.


У меня уже довольно давно стоит выделенный сервер для различных веб-проектов, ну и в качестве доступной отовсюду файлопомойки. Вначале 2000-ных это была просто обычная десктопная машина, постепенно задачи росли, машинка грейдилась из подручных или списанных комплектующих. Последний раз апгрейд был в 2006 году, и до сей поры железо в ней не менялось.
Сейчас по железу это: 2xPentium 3 866mhz / 512 MB / 5x9Gb uw-scsi raid5 (soft)

Честно говоря, поскольку никаких серьезных нагрузок на сервак никогда не было, вопрос о тюнинге софта никогда и не всплывал. Там хостятся несколько домашних сайтов, пара галерей, несколько форумов и пара тестовых самописных cms.

И вот, позавчера я разместил свои первые два поста на хабре. Поскольку я еще не был знаком с хабраэффектом, в постах были использованы картинки, которые лежали прямыми ссылками на хостинг.

Сначала посты были размещены в блогах, поэтому большого трафика не было. А вот дальше они, набрав какое-то количество баллов, оба попали на главную. И тут я получил сообщения от мониторинга, что хост перегружен, и почти сразу же — что кончилась память.

На графике это выглядело так:

Первый график — это loadavg, нормальная загрузка на 100% обоих процессоров равняется 2, а обычно держится в пределах 0.5-1. Второй — память, третий — своп.
Видно, что в примерно в 23:30 закончилась физическая память, начал заканчиваться своп. Примерно к 23:38 своп то же закончился, и нагрузка поползла сильно вверх, т.к. сервер уже перестал отвечать на запросы и пытался переварить то, что есть.

В этот момент пришлось принудительно рестартнуть apache, т.к. именно он был запущен в 150 экземплярах и сожрал всю память. Освободилось 300 мегабайт физической памяти и около 120 свопа. Ненадолго это помогало, но через небольшие отрезки времени все повторялось.

Я разобрал статистику по хитам, получились два таких симпатичных графика:

Первый график — это хиты за минуту.
Этот сервер совершенно не нагружен, так что 0-10 хитов это то, что я обычно наблюдаю. Тут мы видим, что начиная с 23:20 количество хитов подскочило до 600-800 в минуту, и и на этом ресурсы апача кончились. Отдельно я посчитал хиты с главной страницы хабра, на два джипега стоящие в заголовках статей, они показаны синим графиком.
Второй график — это трафик. В пиках он показывает до 30 мегабайт за минуту. И регулярно по 3-5 мегабайт в минуту с главной страницы.

Настройки апача были дефолтные:
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 10000


В моменты нагрузки loadavg больше 20-30 машинка становится очень задумчивой.
Top отрисовывает экран раз в 3-4 минуты, команды консоли срабатывают с задержкой в минуту.
Вот скриншот снятый с top примерно в 1:50, во время последнего пика.


А логах это выглядело вот так:
линк на pastebin.com

Апач начинает плодиться, память кончается, oom-killer смотрит, что самое жирное в памяти (mysql) и прибивает его. После этого он пытается прибивать других апачей, но плодятся они достаточно быстро.
За ночь oom-killer отработал 37 раз, пять раз по mysql (в те моменты когда он был запущен), остальное по апачу.

Первый пост содержал 762 кб изображений, второй 361 кб. Это под катом, снаружи — в каждом по одной картинке на 27 кб.

За время с 22:00 до 04:00 в логе зарегистрировано 126 939 хитов, отдано 4.14 гигабайта трафика.
Вся нагрузка — исключительно отдача статики, никаких CGI/PHP с сайта не грузилось, отдавались только картинки. За это время запросов к другим частям сайта и другим сайтам было не больше десятка, так что на статистику они не повлияли.
Сам лог апача за это время вырос примерно на 60 мегабайт.

Вывод от капитана очевидность: apache плохо отдает статику при высокой нагрузке.
Необходимо внедрение reverse proxy, например nginx.

N.B. Прошу настоящих хостеров не меряться пиписьками, все понятно, что вы специально настраиваете софт для хайлоада, и отдаете такой трафик ежеминутно. Моя статья не о том.

Спасибо за внимание. Готов выслушать любые интересные советы.
+117
12 апреля 2010, 00:41
78

комментарии (112)

+13
shai_xylyd #
Когда статья о моем сервисе вышла на главную, готовился к страшному, однако нагрузка на сервере не превысила 10%, при том, что настраивать apache не умею и использую дефолтный. Меня спасло то, что храню всю статику на Amazon S3.

Совет очевиден.
+6
easy_john #
К сожалению, я как-то о хабраэффекте просто не подумал. Да и не рассчитывал, что попаду на главную, хотелось просто написать пару постов, немного набрать кармы.
Плюс для меня хранить все на своем серваке — это самое естественное. Там есть файлы, которые я выкладывал еще лет 6 назад, и по прежнему доступны по старым урлам. А сколько оно будет доступно на чужих сервиса — не всегда очевидно.
+2
KvaNTy #
0
KvaNTy #
*url
0
easy_john #
Поправил.
0
charon #
а вы не сильно на деньги попали после хабраэффекта на этом Амазон Эс3?
0
baxtep2 #
можно и в дропбокс положить пару картинок
тот же s3 но бесплатно…
0
shai_xylyd #
По сравнению с оплатой ec2 оплата s3 просто несущественна — несколько баксов.
0
happybyte #
Сайты на шаред хостинге — апач без nginx. Много раз были на главной хабра и статика и динамика — никогда не было проблем с хабраэффектом.

Мое мнение заключается в том, что и грамотно настроенный апач может нормально работать.

Раньше апач был попроще, а сейчас поумнее стал и асинк-ио там есть и т.п.
–4
f0b0s #
Очень познавательно. Учту!
0
easy_john #
тут еще надо пост придумать такой, что бы на главную попал. то же непрогнозируемое событие :)
+3
BarsMonster #
И апач можно настроить нормально.

Разрешать апачу запускать процессы пока не кончится память — идиотизм.
Берем mpm_prefork, ставим там 8-16-32 worker-ов максимум, и тогда вы никогда не выйдете в своп.
Перед ним — nginx желательно, но для хабраэффекта не обязательно.

Вот график потребления памяти с моего VPS-а, картинки на хабр вставляю без задней мысли всегда:

Как видим, потребление памяти вообще не зависит от нагрузки.
0
easy_john #
Ачто происходит, когда воркеры кончаются? Контент не отдается?
+5
BarsMonster #
Поскольку кол-во физических ядер ограничено, при отдаче статики 64 воркера не сильно лучше 4-х.
Воркер заканчивает работу и берется за следующий запрос. Т.е. да, лишние запросы ожидают очереди.
С nginx ему конечно проще — тогда контент отдается «мгновенно», и апач работает в тепличном режиме.
+1
kmua #
+ очередь регулируется директивой ListenBacklog.
+6
seriyPS #
Оо… будь у меня VPS с 3.5G памяти я бы тоже особенно об этом не задумывался наверное.
+1
BarsMonster #
Это VPS на 0.5Гб, остальные 2.5Гб — burstable, т.е. не гарантированные.
Про этого хостера собираюсь сегодня обзорчик написать :-)
По тестам — 28Мб/сек на статике, из Москвы в Германию ггг :-)
–6
zerkalka #
ха! привет джонни!

ngnix
0
easy_john #
Раз настраивал, скажи nginx-у можно сказать, что бы не обращал внимания на вхосты и передавал все апачу? а то описывать в nginx все полсотни вхостов, лежащих на одном апаче мне не хочется.
+1
zerkalka #
его можно вобще без апача, а можно и проксимировать
0
easy_john #
я бы пока предпочел просто проксей поставить, сразу на все не глядя. а уж потом смотреть по нагрузке и думать как тюнить.
0
tristan #
Настроить-то так можно, но вряд ли удастся одним махом прописать отдачу статики нгинксом, другими словами, это просто переведет апач в более щадящий режим, но сильно нагрузку вряд ли снимет.

Отдача статики нгинксом + проксирование динамики по необходимости.

А что касается настроек, так это лучше один раз пройти. Удобнее всего все настройки вхостов (реврайты, авторизацию, етс) сбросить на нгинкс, тогда в апаче все вхосты становятся стандартными и отличаются только путем и именем (ну, в разумных пределах, конечно).
+1
BarsMonster #
Да. можно, копать в сторону:

listen 80;
server_name _;
root /var/www/$host/;
location / {
proxy_pass http://$host:81/;



–1
easy_john #
Дело в том, что я как раз той ночью около 5 утра попробовал этот «server_name _;» поставить, но отдаваться стал почему-то по всем вхостам только один.
С другой стороны я это делал сумбурно, не вчитываясь в конфиг, так что скорее всего просто где-то упустил. Потом будет время и я попробую вдумчиво изучить доку.
+5
zaartix #
На всякий случай привожу свой конфиг nginx'a, авось поможет разобраться:
server {
listen 80 default;
server_name _;
location / {
proxy_pass 127.0.0.1:81;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar|ico|swf)$ {
root /var/www/static/$host;
}
}

В папке /var/www/static находятся симлинки с названиями доменов, ведут на папку document_root вхоста.
0
easy_john #
Ага. Спасибо, я попробую на днях поэкспериментировать.
0
easy_john #
работает, спасибо.

единственно что я не понял можно ли обойти как-то галерею, которая активно использует mod_rewrite для смены путей у jpeg.
0
zaartix #
не сталкивался, но мне кажется что если к примеру все картинки галереи вынести в домен 3 уровня, то можно этот домен заруливать целиком в апач
0
easy_john #
их не вынести, он их через php раздает. :)
+2
Restorer #
собственно, как и указано в заголовке топика, — не стоит отдавать статику апачем.
да и динамику тоже не очень стоит :)
использую лайти (lighttpd) на самой простой VPS (что-то около 256 мег память, 500 MHz процессор) — все хаброэффекты прошли на отличненько.
+2
crea7or #
Хабраэффекты легко держатся на shared хостинге за 250р/мес. Просто там по дефолту статику отдаёт nginx и если верить domaintools, там ещё 20 сайтов живёт, правда с неизвестной посещаемостью.

Вот Daily Hits с этого сервера, все хиты это картинки из моих постов на хабре:
0
easy_john #
С шаредом все понятно, там уже за тебя все настроили и думать не надо.
Но имея свой собственный сервер молотящий с 2002 года (с небольшими перерывами на апгрейд) хостить что-то у других людей просто не хотелось.

Кстати, не совсем видно, вот эти пики до 70к хитов, это за какой промежуток? А то одно дело за пол дня отдать столько, другое за пару часов.
+2
crea7or #
Сейчас конечно просто говорить что нужен nginx.

Я вот сразу нацелился на оптимизацию рабочего сервера, ибо пока сервер стоит, я теряю клиентов (сам его кое как админю). Ставил nginx с версии 0.2 что ли, еакселератор для php, тюнил mysql и т.д. В итоге сейчас мой сервер (по конфигу p4 2.4ghz + 1gb ram + 1hdd ) держит два (мой и партнёра) сайты, и нагрузка на них не меньше хаброэффектов. Причём там не просто картинки, а страницы и файлы от 1мб до 10мб + статистика посетителей собирается в mysql. Так что настраивайте производительность, это никогда не помешает.

Вот за этот день по часам с сайта на шареде:

+1
easy_john #
я согласен, что нужно любой софт настраивать. мой апач ставился довольно давно, и пока не приносил неприятностей, о нем просто не думал.

у вас по статистике 69к хитов за сутки, и трафик полтора гига. У меня примерно такие же значения получились за всего час-полтора хабраэффекта.
–12
disserman #
ну продолжайте дальше использовать LAMP…
+2
easy_john #
Ну почему бы и нет?
С 2002 года это первый случай, когда возникли проблемы.
Все остальное время меня все устраивает.
–7
disserman #
кстате минусуюее красноглазое быдло попрошу аргументировать а не тупо жать кнопку
+1
easy_john #
предположу, что им не нравится ваш комментарий.
вам как минимум необходимо было доказать свою точку зрения, указав что именно вы считаете неприемлемым в LAMP, и какие другие альтернативы лучше рассмотреть.
хотя пост уже ушел с главной страницы, так что думаю теперь сюда редко будет кто-то заглядывать.
–7
disserman #
ну так если не нравится — или пройди молча или ответь нормально. в оффлайне за такое уже б в харю дал
+3
CrayWind #
Я лично минусов не ставил, но мне кажется что комментарий в стиле «ЛДАП — гавно», без аргументов, ничего кроме минуса незаслуживает. И кстати последующий наезд в стиле «красноглазое быдло» также показывает огромную культуру диалога :)
–2
disserman #
я уже не раз пробовал объяснять но метать бисер перед свинями неблагодарное дело. потому тупо разжигаю
0
BarsMonster #
Мда, предлагаю вам посмотреть заголовки ответа вашего апача на ваши картинки:

+2
BarsMonster #
Date: Sun, 11 Apr 2010 21:28:22 GMT
Server: Apache
Last-Modified: Sun, 14 Sep 2008 18:52:16 GMT
Etag: «acb238-abfb-456df9e0a1800»
Accept-Ranges: bytes
Content-Length: 44027
Content-Type: image/jpeg

200 OK

А где expires на месяц вперед? Из-за не настроенного кеширования вы увеличили себе нагрузку в 1.5 раза минимум.
+1
easy_john #
Ну я вообще сейчас впервые слышу, что его надо было ставить :) Хотя док по апачу лет восемь назад читал приличное количество.
Ок, спасибо за подсказку, изучу вопрос.
0
devosx #
А можно по подробней? Надо в апаче активировать mod_expires? Подкиньте конфиг apache, для сервера xeon quad core, 4 gb ram. Статистика отдается nginx, кеширование вроде включено, но эффекта от него незамечено. Апач генерит динамику с сайта. Нагрузка только mysql + apache процессы.
Прошу не минусовать, думаю многим будет полезен конфиг под их сервера.
0
BarsMonster #
Поставьте
expires 31d
в том location который отдает статику.
0
BarsMonster #
Т.е. если статику отдает nginx то ему и header-ы выставлять
0
ivv #
Есть Etag, выставлять и Etag и expires это не совсем правильно, либо то либо то.
0
BarsMonster #
Очень даже правильно )

ETag нужен когда проверяют, обновилась ли картинка или нет — во второй раз будет короткий HTTP запрос.
Expires говорит «целый месяц даже не проверять, обновилась она или нет», т.е HTTP запроса во второй раз не будет вообщею
0
ivv #
да правильно, сам так делал. но по-моему сейчас просто перепутал. при ETag запрос к серверу будет полюбому сделан, а expires если не нужно то нет. так что и правда нужно делать оба варианта.
0
andyceo #
Простите меня, новичка. Но чем вы все такие картинки с графиками генерите? Я вот только про monit знаю, он у меня версии 4.8.1, графики не строит.
0
easy_john #
А вроде вам я уже в джаббере ответил. Ну или ниже смотрите.
0
andyceo #
Спасибо! Дельная штучка, буду ковырять. Только у меня джаббера нету, скорее всего вы меня с кем-то спутали.
0
easy_john #
Если лень разбираться с самим rrd (а там все же некоторые вещи специфичны для понимания) можно взять какую-нибудь из готовых утилит на базе этого проекта. Посмотрите на сайте разработчика, там есть ссылки на утилиты использующие rrd.
Например я в одном месте использую web.taranis.org/drraw/, графики создаются приямо из вебинтерфейса.
0
BarsMonster #
munin еще есть )
0
easy_john #
мунин это полноценный мониторинг. тут скорее разговор именно о тулзе для построения графиков.
0
silentroach #
munin использует rrdtool :)
+1
mrBuG #
Да и cacti вроде тоже :)
+1
sindrom #
Господа, а что за тул у вас мониторит систему и строит такие графики?
+1
easy_john #
Никакого шаманства.
Все графики строятся утилитами rrdtool. Это комплект из циклической базы данных и утилит для внесения в нее данных и постройки графиков.

Например загрузка процессора/памяти — просто по крону запускается ежеминутно скрипт, который делает типа cat /proc/loadavg |awk '{print $1}' и запихивает значения в базу. А потом раз в эн минут вызывается скрипт и герерит картинку.

Ну а логи апача я обработал скриптом, который считал поминутную нагрузку (на том же bash/awk) и забивал в только-что созданную базу rrd. Потом сделал с нее пару графиков за нужный диапазон.
0
xpoison #
напишите обзор rrdtool с примерами?
+2
easy_john #
честно говоря сам настраивал по обзорам, в т.ч. и по русским, так что не думаю, что в этом есть большой смысл…
+2
Bteam #
А в чем тогда смысл?
Сделайте, введите в курс дела так сказать.
+1
walker #
вбейте сабж в гугль и вы удивитесь, как много инфы и обзоров по rrdtool
0
Horse #
Не так давно ощутил эту проблему на своем сервере. Людей 30 качая фильмы и ролики положили 4 Гб оперативки, 1 Гб винчестера… Сервер упал и валялся.
Решил сделать nginx как frontend и apache как backend, но подумал и решил просто снести apache и поставить nginx. На это проблемы закончились.
0
egorinsk #
Проблема апача в том, что он на каждое соединение форкает по процессу (до достижения MaxServers которое видимо у автора по дефолту стояло 150), а каждый процесс жрет прилично памяти. Особенно плохо на OpenVZ, где считается вся выделянмая память.

Выводы — 1) апач монстр, ведь в каждый процесс подгружается куча библиотек 2) не стоит делать форк на каждый коннект

Nginx отдает на дохлом VPS 1800 статич. ф-в в секунду, и хоть бы хны.
0
easy_john #
Ну я догадался к середине ночи уменьшить количество процессов от дефолтного пополам, что бы хотя бы не кончалась в ноль вся память.
–4
odiszapc #
Хорошая вменяемая статья. Автора пива бы поставил.
–2
silentroach #
С таким железом, да не справиться с такой плевой нагрузкой — стыдно, мне кажется.
0
easy_john #
Ну вот перед вами реальные условия, реальный софт без тюнинга — это приводило к перегрузке системы.
Может кому-то еще поможет лучше понять зачем необходима тонкая настройка веб сервера.
0
devosx #
Может кто подкинет стоящие советы по настройкам apache, nginx, mysql :)
знаю что в инете много доков, но лучше будет примеры настроек с боевых серверов. Пишите железо, нагрузки, вид контента. И какой тюнинг делали.
+1
kolobob #
Конфиг nginx'а имеет смысл писать, исходя из реальной посещаемости, апач же — исходя в первую очередь из железа, на мой взгляд.
Вот кусок конфига апача на «живом» сервере:
<IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 3
MaxSpareServers 4
MaxClients 15
MaxRequestsPerChild 1024

По железу: 1 Gb оперативки, проц — какой-то 2хядерный кастрат от интела, особо не интересовался.
По контенту: очень много картинок (одна игровая карта в 7 слоев чего стоит), скрипты почти все на php.
По посещаемости: 120-150 человек онлайн в любой момент времени, чем-то там занимаются -)

Действительно факт, что статику лучше обрабатывать не апачем. Когда жареный петух клюнул, натравил nginx на статику и настроил апач, нагрузка на сервер уменьшилась в 4-5 раз, памяти освободилось тоже очень прилично. По сути сейчас сервер способен переварить dos в 100 потоков к тяжелой странице, отдав на каждый запрос весь нужный контент (при том, что до mysql руки пока не дошли).
0
z123 #
есть мнение, что апач, сконфигурированый с mpm event будет намного экономичнее
0
kegf #
вот моя статистика после выхода на главную —
0
easy_john #
а что измеряется? это количество коннектов?
0
kegf #
да, количество подключений к nginx'у
+2
brers #
«Поскольку» и «поэтому» слитно пишется.
Простите за нудность, но уж больно глаз режет.

Честно говоря, по скольку никаких серьезных нагрузок на сервак никогда не было, вопрос о тюнинге софта никогда и не всплывал.

По скольку я еще не был знаком с хабраэффектом, в постах были использованы картинки, которые лежали прямыми ссылками на хостинг.

Сначала посты были размещены в блогах, по этому большого трафика не было.
+1
pgrishin #
«Необходимо внедрение reverse proxy, например nginx.»

Путаете функцию реверс прокси с простым асинхронным веб сервером.
Картинки nginx сам должен с диска читать, а не через apache забирать. Некоторые например на отдельный хост уносят статику, что-то типа
s.domain.ru, а на apache надо передавать запросы только по динамике.
0
easy_john #
я назвал реверс-прокси в качестве минимума для решения вопроса нагрузки.
дальнейший разбор на статику и динамику, отдачу разными средствами — это уже следующая ступень развития.
0
BarsMonster #
На отдельных хост уносят по другой причине — чтобы туда с запросами лишние куки не прилетали :-)
0
pgrishin #
так было проще объяснить :)
0
maxcom #
лимиты надо было нормально настроить чтобы OOM-killer не приходил
0
zhekanax #
Сейчас картинки, я смотрю, лежат на fastpic :)
0
easy_john #
в этот раз подстраховался, ибо еще не успел настроить все по новому :)
0
zhekanax #
да уж, я в апаче почти все модули отключаю, даже .htaccess — когда процессов много даже пол-мегабайта памяти влияют существенно :)
0
david_mz #
Удивительно, что в 2010 году кто-то до сих пор использует Апач…
+1
rpeMJIuH #
А почему бы и нет, как backend, за теми же nginx/lighttpd?
Wikimedia и те, не гнушаются апачем :)
0
david_mz #
А зачем он, если nginx/lighttpd и так прекрасно со всей динамикой сцепляются?
+3
rpeMJIuH #
Не заморачиваясь включением мозга позволю себе скопировать с одного форума:
«Apache — огромная система, способная делать кучу всего, для которой написано огромное количество модулей.
Nginx — маленький web-сервер, созданный под узкий круг задач и заточенный на их быстрое и оптимальное выполнение.»

Наличие горы наработок ускоряет и удешевляет дальнейшую разработку. И да, зачастую дешевле докупить пару серверов, чем оптимизировать код (особенно, и так уже вылизанный и причёсанный).
+1
david_mz #
Ну, это неправда просто. То, что в апаче делается модулем, в nginx-е обычно делается подключением бэкенда через fastcgi. Что там надо в апаче делать? Это веб-сервер, а не звездолёт. Его дело принять запрос и передать на динамику, а результат отдать обратно. PHP к нему цепляется, ява к нему цепляется, перл цепляется… чего ещё надо-то?

Просто реально нет массовых задач, для которых нужен именно апач. Ну разве что виртуальный хостинг — да, там он удобнее из-за .htaccess. А на отдельном проекте зачем этого слона держать? Он просто не нужен.
0
rpeMJIuH #
Хмм… вот тут спорить не буду, ловите плюс, наверняка и для включения поддержки .htaccess есть какой-нибудь модуль под nginx.
0
david_mz #
Нет, нету, это у Игоря принципиальная позиция. Она понятна — если при каждом запросе дёргать файл, какая уж тут производительность…
0
maniac #
> 2xPentium 3 866mhz / 512 MB / 5x9Gb uw-scsi raid5 (soft)

прелесть-то какая.
0
easy_john #
дык хватает. :)
на самом деле апгрейд запланирован был еще на конец того года, но из-за личных финансовых кризисов немного отложился.
–1
Novikov #
Ребята, скажите мне, вы вообще где все хоститесь? Что у вас за хостинги такие, которые ложатся от попадания статьи на главную хабра?

У меня в блоге и 20 тысяч уникальных посетителей в день было, и 60 тысяч. И каждый просматривает не по одной странице. И никакого «хабраэффекта». И хостинг шаред на Dinohost.Ru, а не сервак отдельный.

При этом блог на «вордпрессе», а это не самая легкая CMS, хоть и оптимизированная мной.
0
easy_john #
а ты внимательно прочитал текст статьи? там все написано про то что это за хостинг. :)
–1
Novikov #
Мы знакомы? Вы внимательно прочитали комментарий? Там обращение не только к автору. Умный и наблюдательный человек непременно припомнит периодически повторяющиеся топики в духе «ура, нас заметили и аж сервер упал».
–1
oleg40a #
coralize
0
easy_john #
не понял.
–1
oleg40a #
0
easy_john #
сделал и все равно не понял.
можно своими словами?
–1
oleg40a #
можно.
но долго.
translate.google.com/translate?u=http://wiki.coralcdn.org/wiki.php%3Fn%3DMain.Servers&hl=ru&langpair=auto|ru&tbb=1&ie=ISO-8859-1
0
easy_john #
ссылка совершенно не помогла понимаю.
вики была лучше en.wikipedia.org/wiki/Coral_Content_Distribution_Network
0
oleg40a #
зато по моей лежит готовый конфиг от апача
и в Examples ещё один
понятнее не бывает
кстати вот habrahabr.ru/blogs/i_recommend/82739/
0
mobilz #
хабраэффект чувствую только на графиках лиру. Года 3 уже на nginx`е с пирогами, но дело даже не в этом =) можно и апач настроить, чтобы отдавал не хуже остальных. li.ru тот же вон гляньте =)
–1
Zharskiy #
чёта про пироги туплю в полчетвёртого утра…
что за пироги?
0
easy_john #
пол года прошло, ничего не смущает?
0
daiver #
могу поделится скриптом автоматической генерации nginx.conf для cpanel сервера.
0
easy_john #
что такое cpanel?
НЛО прилетело и опубликовало эту надпись здесь
0
easy_john #
привет, тролль.
НЛО прилетело и опубликовало эту надпись здесь

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.