- Frontend (Nginx) - маршрутизация запросов
- Backend (Fastapi) - получение и обработка запросов пользователя
fastapi
- основной backend фреймворкpydantic
- валидация входящих данных apiuvicorn
- локальный запуск проекта,gunicorn
- запуск в прод. окруженииpyjwt
- библиотека для работы с jwt
- flake8, mypy, bandit
- init poetry and pre-commit
poetry install --no-root
poetry run pre-commit install
- env
cp ./.env.template ./.env
cp ./src/.env.template ./src/.env
- build and up docker local
make build-local
make up-local
- go to
http://localhost:8000/docs
- build and up docker local
make up-kafka
- go to
http://localhost:8090
install dependencies
poetry install --only performance_testing
- run vertica
make up-vertica
-
wait until vertica is running
-
Run test script
poetry run python3 performance_tests/vertica.py
- run mongo
make up-mongo
-
wait until mongo is running
-
Run test script
poetry run python3 performance_tests/mongo.py
- create .env file and change it if you want
cp ./infra/elk/.env.template ./infra/elk/.env
- run elk
make up-elk
-
wait until elk is running
-
go to
http://localhost:5601
login - elastic
password - ES_PASSWORD
from .env
Filebeat забирает логи из папки logs/nginx и logs/ugc_service по-умолчанию и передаёт их в logstash elk.
- run filebeat
make up-filebeat
- check logs in kibana