https://github.com/vrun545/microservices_nodejs
Microservices Node.js project for E-commerce Web Services is designed to provide a scalable and modular backend solution for an e-commerce platform.
https://github.com/vrun545/microservices_nodejs
consul docker expressjs javascript linux load-balancer microservice mongodb nodejs
Last synced: 2 months ago
JSON representation
Microservices Node.js project for E-commerce Web Services is designed to provide a scalable and modular backend solution for an e-commerce platform.
- Host: GitHub
- URL: https://github.com/vrun545/microservices_nodejs
- Owner: vrun545
- Created: 2024-04-17T16:16:21.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-05-19T07:06:26.000Z (about 1 year ago)
- Last Synced: 2025-01-26T06:28:03.942Z (4 months ago)
- Topics: consul, docker, expressjs, javascript, linux, load-balancer, microservice, mongodb, nodejs
- Language: JavaScript
- Homepage:
- Size: 5.95 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Microservices E-commerce Project
This repository contains a Node.js project for building microservices for e-commerce web services. The project includes the following microservices:
- **User Service**: Manages user profiles, authentication, and authorization.
- **Cart Service**: Handles shopping cart functionality, including adding, removing, and updating items in the cart.
- **Inventory Service**: Manages product inventory, including stock levels and availability.
- **Product Service**: Manages the product catalog, including CRUD operations on products.## Features
- **Modular Architecture**: Each microservice is designed to handle a specific aspect of the e-commerce platform, promoting modularity and scalability.
- **RESTful APIs**: All microservices expose RESTful APIs, allowing seamless communication between services and clients.- **Node.js**: The backend services are developed using Node.js, leveraging its asynchronous, event-driven architecture for high performance.
- **Dockerized Environment**: Docker containers are used for deployment, providing consistency across different environments and facilitating scalability.
- **Load Balancer and API Gateway**: Utilizes a load balancer to distribute incoming traffic across multiple instances of microservices, improving performance and reliability. An API gateway is employed to manage the entry point for all client requests, providing routing, authentication, and rate limiting.
- **Service Discovery**: Consul services are used for service discovery, enabling dynamic registration and discovery of microservices within the architecture.
## Prerequisites
- Node.js and npm installed on your machine.
- Docker and Docker Compose installed to run the application locally.## Getting Started
1. Clone this repository to your local machine.
2. Navigate to the root directory of the repository.
3. Run `docker-compose up` to start the application and spin up the required Docker containers.
4. Access the individual microservices using their respective endpoints.## Usage
- Each microservice has its own endpoints for performing CRUD operations and other functionalities.
- Use the API gateway endpoint to access the microservices from the client application.
- Monitor the health and performance of the services using Consul services and other monitoring tools.## Contributing
Contributions are welcome! Please feel free to submit a pull request for any improvements or additional features.
## License
This project is licensed under the [MIT License](LICENSE). Feel free to use, modify, and distribute it as per the terms of the license.