LINUX.ORG.RU

История изменений

Исправление Vit, (текущая версия) :

Когда 2 клиента хотят одновременно дернуть что-то асинхронное, а его не хочется выполнять несколько раз. Обычное дело. Можно запомнить запросы, а потом вернуть обоим одно и то же

Более сложный вариант - кеш асинхронных функций https://github.com/nodeca/promise-memoize.

Еще более сложный и распределенный - очередь задач с дедупликацией. Но если там нужно вернуть результат вызвавшему, то начнется ад. Делать и понимать качественную логику на событиях жутко гиморно.

Исходная версия Vit, :

Когда 2 клиента хотят одновременно дернуть что-то асинхронное, а его не хочется выполнять несколько раз. Обычное дело.

Более сложный вариант - кеш асинхронных функций https://github.com/nodeca/promise-memoize.

Еще более сложный и распределенный - очередь задач с дедупликацией. Но если там нужно вернуть результат вызвавшему, то начнется ад. Делать и понимать качественную логику на событиях жутко гиморно.