#  Re: Небольшая DDoS-атака на 51t.ru
zhuk@ (lenina,131) → 51t  –  06:19:45 2014-08-22

> делать демона, который раз в n-минут обновляет состояние (понятия не имею, как это делается)

Что значит "обновляет состояние"? Вообще, я представлял себе фетчер так: сливает инфу во временную папку по соседству с папкой эхи (типа, myecho.tmp), как закончил - делает rename(2) для каждого файла в папку эхи. Остаётся лишь вопрос генерации постоянных уникальных идентификаторов для сообщений. При таком варианте гонок быть не должно при условии отсутствия параллельно работающих фетчеров (решается блокировкой какого-нибудь файла вроде /tmp/ii-fetch-myecho).

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

С радостью. Но проблемы с гонками-то никуда не денутся... Впрочем, это ты рулишь сервисом, тебе и решать. :) Стоит, в общем.

> а вообще, простой в несколько секунд - это не страшно.

Там не просто "несколько секунд", там уже простучаться было нереально вообще. Собственно, Icinga и рапортовала именно о превышении таймаута подключения. А про дозвон на скорости в пару килобод - тогда альтернатив не было (ограничения на клиенте), а сейчас страдания исключительно по серверной вине. :)
Powered by iii-php v0.11