Тестовое задание В качестве тестового задания, вам предлагается разработать систему для отслеживания доступности удаленных хостов(далее адресов).
Система должна быть разработана с применением .NET 5.0 и ASP.NET Core
Результат выполнения тестового задания должен быть размещен в публичном репозитории на сервисе github.com
Результат тестового задания можно представить без UI, при наличии документации к методам API
Система должна представлять из себя веб приложение, в которое можно загрузить адреса (например, google.com) и частоту проверки доступности этого адреса (пауза между проверками или крон выражение). Можно добавить несколько проверяемых адресов и настроить частоту проверки для каждого адреса отдельно. Каждый пользователь может получить результат проверки только для тех адресов, которые добавил сам. Требуется минимизировать количество проверок(Например, если 2 пользователя добавили один и тот-же адрес с одинаковой настройкой частоты проверки, сервер должен выполнять проверку его доступности только 1 раз).
Должна быть реализована возможность: Добавление пользователя; Войти под пользователем; Добавить адрес и частоту проверки доступности; Получить историю проверок за заданный промежуток времени; Получить текущее состояние работоспособности проверяемых адресов.
CQRS, MediatR, AutoMapper, EF Core. Использована фоновая задача для обновления истории проверки доступности к сайтам