вопросу и его реализовать. У нас есть база отелей +- 2.5 тысячи, которые мы получаем по отдельности в виде комплексной JSON структуры со стороннего API. Это является фактически кешем, нам нужно где-то их хранить с TTL равным суткам чтоб поддерживать постоянную актуализацию данных, то есть когда запись expired мы обращаемся к API и получаем вновь актуальные данные отеля. Что лучше всего для этого использовать? Будет очень много обращений к базе, так как на основе этих данных будет строиться всё остальное. У нас сейчас даже не продакшн, так что мы не в погоне за производительностью, но на будущее тоже учитывать нужно чтоб не переделывать огромный кусок кода.
Как вариант для этого использовать redis (с модулем RedisJSON)
А что вы можете посоветовать?
Я бы в PostgreSQL и хранил. А по крону обновлял там данные. Может там в API вообще ограничения какие-то вроде ограничения RPS. Если сразу туда идти при отсутствии данных в Redis, то юзер может ждать долго загрузку страницы
Ну да, там ограничения 20 запросов в секунду на продакш ключе. Но отелей как бы всего у нас 2.5 тысяч, большинство из них загрузится на этапе рекомендательной системы поэтому с этим проблем не будет. А почему постгрес и по крону, какие у этого подхода бенефиты?
Написать кеш с ttl, если в кеше нет, дёргать апи.
Обсуждают сегодня