Как реализовать повторные попытки (retry) вызова внешнего сервиса при ошибках

асинхронностьвызов внешнего сервисамногопоточностьобработка ошибокповторные попытки