dfc5cc54cc5b1711b66e0cf103b366aa114d75a3
Примеры тестирования микросервисов через API Gateway
Структура проекта
.
├── postman # Готовые ручки для Postman
├── service_1_main.py # User Service
├── service_2_main.py # Order Service
├── requirements.txt # Зависимости
├── Dockerfile.service1 # Docker образ для Service 1
├── Dockerfile.service2 # Docker образ для Service 2
├── kakend-config.json # Конфигурация Krakend API Gateway
└── docker-compose.yaml # Конфигурация Docker Compose
Запуск
docker-compose up -d --build
# или так, если ссыкло
docker-compose up --build
Тест
Бля, скачай Postman и не еби мозги. Должен подхватить ручки из репы - если нет, тогда лох, пиши запросы сам.
Ручки
API Gateway - Угадай
- Порт: 8000
- Функционал: Проксирование запросов, единая точка входа
- Endpoints:
GET /health- Health check (Мне в падлу что-то еще прикручивать)
Service 1 - User Service
- Порт: 8001
- Функционал: Управление пользователями (Крудошлепство)
- Endpoints:
GET /- Проверка статусаGET /health- Health checkGET /users- Список пользователейGET /users/{id}- Получить пользователяPOST /users- Создать пользователяPUT /users/{id}- Обновить пользователяDELETE /users/{id}- Удалить пользователяGET /stats- Статистика
Service 2 - Order Service
- Порт: 8002
- Функционал: Управление продуктами и заказами (Крудошлепство 2)
- Endpoints:
GET /- Проверка статусаGET /health- Health checkGET /products- Список продуктовGET /products/{id}- Получить продуктPOST /products- Создать продуктPUT /products/{id}- Обновить продуктDELETE /products/{id}- Удалить продуктGET /orders- Список заказовGET /orders/{id}- Получить заказPOST /orders- Создать заказGET /stats- Статистика
Логирование и мониторинг
Оба сервиса включают:
- Встроенное логирование (INFO уровень)
- Health check endpoints
- Метрики статистики
- Документацию Swagger на ручках /docs
Languages
Python
100%