Улучшить код Python (multiprocessing, asyncio, threading) + docker
3 000 руб. за проект
Улучшить код Python:
1. Код получает параметр при запуске - % загрузки процессора. По умолчанию 50% и его использует в работе;
2. Добавить обработку нескольких задач одновременно (пока не загрузим процессор до целевого значения)
3. Код загружает "модели" - при сбое загрузки или запуска модели - откатываемся к предыдущей версии
4. "Повторное" использование загруженных в память моделей (ввиду медленной инициализации)
5. Сохранить весь код в одном файле
6. Корректное отображение текущего состояния с учётом многопоточности
7. В случае "зависания" потока - через ~ час его принудительно завершать
8. Выгрузка неиспользуемых моделей из памяти через час неактивности
9. Для docker образа если сервер не передаёт новых задач в течение ХХ минут - останов и выгрузка всего
10. Временные файлы (например загруженные аудио) - аккуратно удалять (с учётом многопоточности)
11. В сокет без надобности запросы не отправляем.
Комментарий: сервер на запрос "next" в течение нескольких секунд возвращает ID следующей задачи. Если не отвечает - задачи нет (как появится сервер сам посылает новую команду без запроса со стороны клиента).
Образ для ПК должен работать постоянно и в случае сбоев восстанавливаться.
Контролировать использование оперативной памяти: vosk может потребить много ресурсов
Socket Сервер для тестирования собрать самостоятельно (логика простая: получив команду next выдаёт новую задачу (или не выдаёт), также выдаёт новую задачу сразу после коннекта (если есть)
1. Код получает параметр при запуске - % загрузки процессора. По умолчанию 50% и его использует в работе;
2. Добавить обработку нескольких задач одновременно (пока не загрузим процессор до целевого значения)
3. Код загружает "модели" - при сбое загрузки или запуска модели - откатываемся к предыдущей версии
4. "Повторное" использование загруженных в память моделей (ввиду медленной инициализации)
5. Сохранить весь код в одном файле
6. Корректное отображение текущего состояния с учётом многопоточности
7. В случае "зависания" потока - через ~ час его принудительно завершать
8. Выгрузка неиспользуемых моделей из памяти через час неактивности
9. Для docker образа если сервер не передаёт новых задач в течение ХХ минут - останов и выгрузка всего
10. Временные файлы (например загруженные аудио) - аккуратно удалять (с учётом многопоточности)
11. В сокет без надобности запросы не отправляем.
Комментарий: сервер на запрос "next" в течение нескольких секунд возвращает ID следующей задачи. Если не отвечает - задачи нет (как появится сервер сам посылает новую команду без запроса со стороны клиента).
Образ для ПК должен работать постоянно и в случае сбоев восстанавливаться.
Контролировать использование оперативной памяти: vosk может потребить много ресурсов
Socket Сервер для тестирования собрать самостоятельно (логика простая: получив команду next выдаёт новую задачу (или не выдаёт), также выдаёт новую задачу сразу после коннекта (если есть)
- Файлы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.