Главная страница
Навигация по странице:

  • POST /report/user_statistics

  • GET /report/info

  • Желательно

  • Тестовое задание backend. Тестовое задание на backend программиста


    Скачать 71.48 Kb.
    НазваниеТестовое задание на backend программиста
    Дата11.11.2022
    Размер71.48 Kb.
    Формат файлаpdf
    Имя файлаТестовое задание backend.pdf
    ТипДокументы
    #783065

    Тестовое задание на backend программиста
    Реализовать асинхронную обработку запросов на .net core, тип приложения WebApi.
    1. Метод для запроса пользовательской статистики POST /report/user_statistics. В тело запроса передаем идентификатор пользователя, период с и по. Результат выполнения метода Guid запроса.
    2. Метод получения информации о запросе GET /report/info. Параметр методы Guid запроса. Ответ json в котором указан Guid запроса, процент выполнения запроса, и результат выполнения, если он есть.
    Приложение должно обрабатывать запрос не быстрее чем за X миллисекунд
    (вынести в конфигурационный файл, по умолчанию установить 60 секунд),
    и рассчитывать процент обработки в зависимости от пройденного времени с момента создания запроса. Если приложение перезагрузить информацию о запросе не должна быть потеряна.
    Например, если через 30 секунд мы запросим информацию о статусе запроса
    {
    “query” : “1a98b57d-e090-4d18-8654-678e463b73e8”
    “percent”: 50,
    “result”: null
    }
    если через 45 секунд
    {
    “query” : “1a98b57d-e090-4d18-8654-678e463b73e8”
    “percent”: 75,
    “result”: null
    }
    если через 60 секунд
    {
    “query” : “1a98b57d-e090-4d18-8654-678e463b73e8”
    “percent”: 100,
    “result”: {
    “user_id”: “b28d0ced-8af5-4c94-8650-c7946241fd1a”,
    “count_sign_in”:”12”
    }
    }
    Готовые процессоры асинхронных запросов не использовать.
    Желательно использовать ORM, структуру базы данных делать через миграции.
    Покрытие тестами будет большим плюсом.
    После реализации приложение необходимо выложить на github.


    написать администратору сайта