Перейти к содержимому

Необходимо написать in-memory кэш, который будет по ключу (uuid пользователя) возвращать профиль и список его заказов:

go · memory-gcSberMarket / СберМаркет (Купер) - 1не решено

Необходимо написать in-memory кэш, который будет по ключу (uuid пользователя) возвращать профиль и список его заказов:

  • У кэша должен быть TTL (2 сек);
  • Кэшем может пользоваться функция(-и), которая работает с заказами (добавляет/обновляет/удаляет). Если TTL истек, то возвращается nil. При апдейте TTL снова устанавливается 2 сек. Методы должны быть потокобезопасными;
  • Должны быть написаны тестовые сценарии использования данного кэша.
// (базовые структуры не менять)
type Profile struct {
UUID string
Name string
Orders []*Orders
}
type Order struct {
UUID string
Value any
CreatedAt time.Time
UpdatedAt time.Time
}

Доп задание: автоматическая очистка истекших записей


Источник: SberMarket / СберМаркет (Купер) - 1

← Необходимо выполнить HTTP-запросы к N з… · Все задачи · Go · Что выведет и почему? →