Я понимаю то, что я пишу, вот не решения для Вас. Но, я предложил бы, чтобы Вы посмотрели на эти точки при выборе Распределенного решения по защите DoS.
DDoS обычно является трудной проблемой. Вы склонны наконец ограничивать сервис в некотором роде при защите сервера и заканчиваться с отказом в обслуживании любой путь.
Если был распределенный DoS, которые совершают нападки, Ваш сервер в (говорят), что 100 запросов в секунду (очень консервативная фигура) и Ваш сервер обычно занимались 10 допустимыми запросами в секунду. Если бы необходимо было ограничить запросы в некотором роде, вероятно, что допустимые запросы были бы заблокированы в процессе, заставив Вас отделиться распределенной деятельности DoS.
Лучшее решение состояло бы в том, чтобы установить дорожку количества запросов на источник или лучше, исходная подсеть, и начало блокировать или ограничивать источники, которые пересекают некоторые пороги.
Принятие остальной части Вашей установки хорошо, как это, затем нет.
Поскольку temoto пишет, что Memcached был создан для работы webnodes (серверы веб-приложения) под предположением, что webnodes в большой степени загружаются на ЦП, но имеют свободную RAM. Целая архитектура Memcached создается, чтобы она работала на нескольких серверах;в тесноте, да не в обиде.
Таким образом, если необходимо выполнить Memcached, необходимо выполнить его на всех серверах, которые имеют некоторую свободную RAM. Возможно, необходимо также запустить все веб-приложения на всех веб-серверах (на различных портах) для имения полной способности ЦП в наличии к скачкам загрузки. (Используйте подсистему балансировки нагрузки впереди для маршрутизации трафика к правильным приложениям на основе URL.)
Однако эта установка была бы более сложной для управления в повседневной работе системного администратора. Это - вероятно, не лучший способ масштабировать Ваши приложения.
Вы не пишете, какую платформу Вы используете. Большинство современных серверов веб-приложения имеет незавершенный механизм кэширования в наличии. Смотрите на незавершенное кэширование прежде, чем идти в сетевое кэширование как Memcached...
В теории веб-приложение использует много ЦП (парсинг запроса, шаблонный рендеринг) и небольшой объем памяти. Memcached противоположен. Который делает их идеальными соседями.
Но на практике, Ваши приложения обычно используют некоторый сервер базы данных, который имеет, это - внутренний кэш и в общих работах лучше с большей памятью.
Трудно дать совет для такой универсальной ситуации, так как Вы не предоставили подробную информацию.
Но прежде, чем изменить что-нибудь, сделайте глубокий анализ, узнайте, где Ваше текущее узкое место.