Цей проект представляє собою стандартний API Gateway з мікросервісом для авторизації та демонстраційним мікросервісом на Python. Проект складається з трьох основних компонентів:
- API Gateway: Центральний компонент, який керує взаємодією між клієнтами та мікросервісами.
- auth-microservice: Мікросервіс аутентифікації, написаний на TypeScript.
- puthon_api: Демонстраційний REST API додаток, написаний на Python, який служить прикладом використання API Gateway.
- API Gateway та мікросервіс авторизації (auth-microservice) вже завершені та функціональні. Однак, вони постійно вдосконалюються, і в найближчому майбутньому очікуються зміни для підвищення зручності їх використання.
- Мікросервіс на Python (puthon_api) на даний момент знаходиться в розробці і служить як приклад інтеграції з API Gateway.
- Основний компонент для маршрутизації запитів
- Керує аутентифікацією та авторизацією
- Забезпечує взаємодію між клієнтами та мікросервісами
app.ts: Головна точка входу додаткуconfig/: Конфігураційні файлиcontrollers/: Контролери для обробки HTTP запитівmiddlewares/: Middleware функціїmodels/: TypeScript класи, що представляють сутності бази данихroutes/: Конфігурація маршрутівservices/: Сервісні класи для бізнес-логікиutils/: Утиліти для загальних завдань
app.py: Головна точка входу Python додаткуconfig/: Конфігураційні файлиcontrollers/: Контролери для обробки HTTP запитівrouter/: Конфігурація маршрутизаціїtools/: Утилітарні скриптиutils/: Утиліти для загальних завдань
- Node.js та npm
- Python 3.x
- MongoDB
- Перейдіть до директорії
gateway - Встановіть залежності:
npm install - Запустіть gateway:
ts-node index.ts
- Перейдіть до директорії
auth-microservice - Встановіть залежності:
npm install - Запустіть сервіс:
ts-node app.ts
- Перейдіть до директорії
puthon_api - Встановіть залежності:
pip install -r requirements.txt - Запустіть API:
python3 app.py
- Налаштування MongoDB знаходяться в файлі
gateway/mongo/database.ts - Інші конфігураційні файли можна знайти в директоріях
config/кожного компонента
Проект активно розвивається. Найближчим часом планується:
- Покращення зручності використання API Gateway
- Розширення функціональності auth-microservice
- Завершення розробки та інтеграція puthon_api