Пользователи должны идентифицироваться: по ключу лучше всего.
Скажем, вы хотите установить лимит не более 10 запросов в 15 секунд.
Для учета можно использовать не БД а
Redis.
Ключ - ключ API пользователя, значение - список. Хранить списки (Lists) timestamp'ом последних 10 запросов. Установить время жизни в 15 секунд.
При поступлении нового запроса смотреть, есть ли уже такой ключ и не более 10 записей в списке. Если меньше, дописывать в конец текущее время и разрешать выполнение запроса. Если 10 записей есть, но самая левая более 15 секунд назад, её можно стереть и справа вставить новую.