По каким критериям лучше определять нового пользователя и блокировать его в случае превышения n-го кол-ва запросов в установленное время. Блокировка на пару секунд.
1. IP
2. Сессия
3. User-Agent + IP
Что еще можно придумать? И нужно ли, может хватит просто User-Agent + IP ?