Post
Topic
Board Альтернативные криптовалюты
Re: [Запуск торгов] ❤️❤️❤️ 3DES - новое свойство пр
by
3DesTeam
on 20/08/2018, 09:16:49 UTC
Обновление продукта 3DES

Добрый день, уважаемые участники проекта 3DES. Сегодня у нас хорошая новость. Мы выпустили долгожданное обновление MVP, и рады его представить Вам.

Техническое описание проведенных работ Вы найдете ниже, мы рады Вашему участию в проекте и предлагаем протестировать обновленную версию продукта.

В настоящее время мы работаем над выходами на биржи, и в ближайшее время сообщим о результатах.

3DES MVP: техническое описание проведенных изменений.

Инструменты и технологии
 В проекте используется следующее: postgresql (база данных), celery (очередь задач), redis (брокер для celery), docker (контейнеризация), django (веб-фреймворк), flask (веб-фреймворк), python (язык программирования).

Компоненты
 Проект разделен на сервер и клиент. Сервер позволяет загружать 3D-модели и профили для 3D-принтеров. Слайсинг выполняется на клиентах. Клиент и сервер находятся в docker-контейнерах, что позволяет легко и быстро установить их на машину.

Описание работы
 На сервере используются selery, redis, postgresql и django. Весь сервер написан на django. На нем так же хранятся все загружаемые пользователями 3д-модели, профили принтеров и сгенерированный g-code (результат самого слайсинга), который клиент отправляет автоматически на сервер через API, после того как отслайсил у себя.
 Клиент написан на flask. База данных на клиенте — postgresql, в ней хранятся результаты задач слайсинга, которые поступили на клиент. Взаимодействует клиент с сервером через API.
 Клиенты подключаются к redis на сервере. Redis хранит в себе задачи слайсинга. Celery распределяет равномерно эти задачи между подключенными клиентами.
 Как только в интерфейсе на сервере нажимают «Slice», создается задача, которая попадает в redis, откуда подключенный клиент, посредствам celery, вытаскивает эту задачу. После этого клиент понимает, что он должен начать слайсить. Через API он скачивает с сервера файл 3д-модели и файл профиля принтера и начинает процесс слайсинга. В результате создается файл g-code, который через API отправляется на сервер и удаляется на клиентской машине. Информация о слайсинге (успех, время начала и конца) записывается в локальную базу данных на клиенте и показывается в интерфейсе. На сервере создается запись о результате в базе данных; пользователь, загрузивший модель уведомляется о завершении; и появляется возможность скачать файл g-code, если операция была завершена успешно.
 Каждый клиент сейчас может слайсить одновременно до 4 разных моделей.

Скачивание архива с клиентом
https://mvp.3des.network/media/worker_container_mac_linux.zip
https://mvp.3des.network/media/worker_container_windows.zip

Инструкция
Quote
#### Подготовка

1.  Установить docker и docker-compose
2.  Клонировать репозиторий [3DES
    worker](https://gitlab.com/3des_public/mvp_worker_container/-/archive/dev/mvp_worker_container-dev.zip)
3.  Зарегистрироваться на сайте [3DES](https://mvp.3des.network)
    \#\#\#\# Запуск на Unix-системах *MacOS, Linux*

        cd path/to/mvp_worker_container/docker/
        chmod +x start_worker_macOS_linux.sh
        ./start_worker_macOS_linux.sh

#### Запуск на Windows

Запустить от имени администратора
mvp\_worker\_container/docker/start\_worker\_windows.bat

#### Доступ к интерфейсу

Для доступа к интерфейу клиента необходимо перейти по адресу в браузере:
[127.0.0.1:5000](http://127.0.0.1:5000)

#### Смена пользователя

Для смены пользователя необходимо открыть файл **.env** и изменить поля
**LOGIN** и **PASS**, после чего перезапустить клиент

#### Остановка клиента

Для остановки клиента используется команда (из директории, где находится
файл **docker-compose.yml**)

    docker-compose down