Я строю простой API-сервис с использованием Ruby on Rails. В производстве я хотел бы интегрировать Redis/Memcached
, чтобы кэшировать некоторые часто используемые конечные точки с помощью кэширования на основе ключей. Например, у меня есть таблица автомобилей с полями name
и color
.
Мой вопрос: каков наилучший способ определить ключ кэша для конкретной конечной точки (eg. /cars
), когда ресурс имеет множество параметров, которые могут иметь разный порядок? например. /cars?name=honda&color=white
, /cars?color=white&name=honda
.
Если я использую URL-адрес запроса в качестве ключа кэша, у меня будет 2 разные записи кэша, но с технической точки зрения, если оба значения name
и color
имеют одинаковые значения, в базе данных Redis должна быть только одна запись кэша.