и один из таких паттернов - CQRS который позволяет это делать без шаринга стэйта. Юзкейс - например тебе надо не просто водителя выбрать, а из 10-ти подписавшихся выбрать того кто будет вести на основе факторов всяких. Например у тебя 6 водителей по дешевому тарифу а чел согласился на подороже и кто-то ближе кто-то дальше и где-то будет больше коммисия сервису и водителю и где-то меньше... словом тебе и решение может потребоваться принимат на основе кучи данных которые со временем меняются и начинают усложняться причинно следственные связи
Прилетает заказ. Мы ег регистрируем (пишем в бд). После регистрации рассылаем уведомления на всех водил в радиусе заказа.
После чего кидаем в очередь отложенную задачу, допустим на 15 секунд. В которой проверяем всех, кто подписался на выполнение заказа (кликнул "принять вызов") за это время. В этой задаче выбираем наиболее оптимального исполнителя и шлем ему уведомление с деталями заказа. Остальные сосут бибу.
Так это выглядит "менее зависим от времени", или как это происходит? Интересует алгоритм примерный.