https://github.com/clifftech123/microservices-product-management
This repository contains a simple microservices architecture for managing products, using RabbitMQ for communication and ASP.NET Core Web API.
https://github.com/clifftech123/microservices-product-management
Last synced: 4 months ago
JSON representation
This repository contains a simple microservices architecture for managing products, using RabbitMQ for communication and ASP.NET Core Web API.
- Host: GitHub
- URL: https://github.com/clifftech123/microservices-product-management
- Owner: Clifftech123
- Created: 2024-10-02T11:26:03.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-10-09T19:22:12.000Z (over 1 year ago)
- Last Synced: 2025-04-30T03:35:20.416Z (about 1 year ago)
- Language: C#
- Size: 56.6 KB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Product Management Microservices
This repository contains a simple microservices architecture for managing products, using RabbitMQ for communication and ASP.NET Core Web API.
## Services
### Product Service
- Manages the list of products.
- Publishes product-related events to RabbitMQ.
### Consumer Service
- Interacts with users.
- Retrieves product data from the Product Service.
- Handles user requests.
- Validates tokens issued by the Authentication Service.
- Listens to RabbitMQ for product-related events.
### Authentication Service
- Handles user authentication.
- Issues tokens.
## Getting Started
### Prerequisites
- Docker
- Docker Compose
### Running the Services
1. Clone the repository:
```bash
git clone https://github.com/yourusername/microservices-product-management.git
cd microservices-product-management
```
2. Build and run the services using Docker Compose:
```bash
docker-compose up --build
```
### Endpoints
#### Consumer Service
- **Register**: `POST /api/consumer/register`
- **Login**: `POST /api/consumer/login`
- **Get All Products**: `GET /api/consumer/products`
- **Get Product by ID**: `GET /api/consumer/products/{id}`
## License
This project is licensed under the MIT License.
### Summary
- **GitHub Repository Name**: `microservices-product-management`
- **Solution Name**: `ProductManagementSolution`
- **Project Names**: `ProductService`, `ConsumerService`, `AuthService`
- **Directory Structure**: Organized with separate folders for each service and a `docker-compose.yml` file at the root.
- **README.md**: Provides an overview, setup instructions, and endpoint details.