Skip to content

Latest commit

 

History

History
61 lines (49 loc) · 3.24 KB

File metadata and controls

61 lines (49 loc) · 3.24 KB

ticket-system-fullstack-pet-project

Создать систему регистрации обращений. Система должна состоять из следующих элементов:

  • фронтенд
  • бэкэнд
  • сервис очередей
  • сервис записи в базу данных
  • база данных

Описание элемента "фронтенд":

Страница приема обращения гражданина, обязательные элементы:

  • поле Фамилия (тип текст)
  • поле Имя (тип текст)
  • поле Отчество (тип текст)
  • поле Телефон (тип телефон, для упрощения цифры)
  • поле Обращение (тип большой текст)
  • кнопка "Отправить" (инициализируется отправку данных на бэкенд) Реализация: html, js(jQuery) или что-то максимально простое, формирование json(или другого представления данных) и отправдка на бэкенд.

Описание элемента "бэкенд":

Сервис реализующий функционал приема данных от фронтенда, формирование объекта и отправка его в сервис очередей. Реализация: python(tornado)

Описание элемента "сервис очередей":

rabbitMQ

Описание элемента "сервис записи в базу данных":

Сервис непрерывно работающий и подключенный к очереди rabbitmq, проверяет наличие там объектов, извлекает их, и записывает в базу данных. Реализация: python(fastapi)

Описание элемента "база данных":

Любая база данных на выш выбор. Таблица или докумет должны содержать соответственно поля из пункта "фронтенд".

Что в итоге должно получиться: Папка с проектом в котором находится файл docker-compose.yml

. ├── frontend/ ├── backend/ ├── rabbitmq/ ├── servicedb/ ├── db/ └──docker-compose.yml

При запуске команды докер компоуз, должно подниматься 5 контейнеров в своем сетевом пространстве. Соответственно по url ipfrontend:80 нам должна открываться страница приема обращения, а через реквизиты доступа к БД мы должны попасть внутрь и иметь возможность просматривать таблицы. Также необходимо настроить rabbitmq так чтобы там был managemen-plugin (в принципе он понадобится для отладки) и должен быть доступ в консоль раббита с iprabbitmq:15672 Img для докера брать на основе debian.