Czy przed zrobieniem czegokolwiek bardziej skomplikowanego rozważałeś niewysyłanie żądania, dopóki użytkownik nie przestanie pisać na co najmniej określony czas (powiedzmy, 1 sekundę)? Powinno to radykalnie zmniejszyć liczbę żądań przy niewielkim wysiłku z Twojej strony.