сокеты ? EventSource ? просто гет запросы через каждые 2 минуты ?
1) Думаю нет смысла запрашивать эти данные каждые 2 минуты. Можно загружать при заходе на страницу и этим ограничиться. Если пользователь активен, товары всегда будут свежие, а если нет, то и смысл что-то ему показывать особо отсутствует.
2) Если очень хочется прям вот обновлять, то запросы по таймауту - самый простой способ, раз в 2 минуты нагрузку на сервер не создадут, тем более что такие малокритичные данные можно держать в коротком кэше, чтобы не лазить в бд на каждый чих.