Я бы, вероятно, стремился иметь дело с DoS на более высоком уровне в стеке.Если вы используете Apache, взгляните на mod_security .Или, может быть, хороший набор правил брандмауэра.
Редактировать: В зависимости от вашей ситуации вы также можете взглянуть на сервер кэширования, например Varnish .DoS сделать намного сложнее, если подавляющее большинство обращений обслуживается молниеносным Varnish еще до того, как они достигают вашего обычного веб-сервера.