Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Написать на базе aiohttp Api-Диспечер распределяющий по устройствам и запускающий sh-команды

1. Прием команд:

   На входе команды: bash-строка + уточняющие параметры:

     -m1000 - память не меньше указанной

     -v2000;-va;vn - доступ к видеокарте(любой,только AMD,Nvida) память видеокарты не меньше указанной

     -d name; доступ к кластеру базы данных

     -p - приоритет команды

     -w - выполняем в режиме await

       2 конфига:  Конфиг подключенных устройств, Конфиг базы mysql для авторизации

    2.1. Авторизация: 

      в конфиге: user,pass + level - если user='guest', то выполняем все приходящие запросы с level>=заданному

      Создаем сессии

    2.2. Создаем в redis стеки для каждого приоритета записываем туда приходящие команды

 2. Оптимизатор:

   Создает в редис стеки подключенных устройств

   Опредеялет примерное время выполнения по логу

   Сортирует (быстро выполнимые сначала) и распределяет с учетом текущей загруженности устройств

   начиная с самого большого приоритета команды по подходящим устройствам

  3. Исполнитель:

   В цикле последовательно выполняет все команды на каждом устройстве

   Логирует все команды длительностью выполнения выше указанной в конфиге устройств

   для оптимизации распределения задач в дальнейшем.

3 года назад
lik12
49 летРоссия
13 лет в сервисе
Был
2 года назад