Почему Kafka? Почему микросервисы?
1. Принимает запрос и отправляет его в kafka.
От кого принимает и каким образом? Какой выдается ответ и каким образом?
Нужно разделить интернет-магазин на логические части. Проверить какие запросы могут обслуживаться синхронно, а какие - отложенно (асинхронно).
Когда на складе остается мало товара, пользователь должен знать об этом. Еще можно показывать наличие товара только если имеется свыше X единиц. А с точки зрения СУБД можно применить оптимистическую блокировку записи.