antoniosergiojr / ecommerce_digital_innovation_one

Criando uma solução de e-commerce com microsserviços em Java

Home Page:https://github.com/hatanakadaniel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

E-commerce com microsserviços | Digital Innovation One

Project developed to use microservices in an e-commerce environment.

📌 Index


⚙ Settings

Docker, postgresql, and jdk must be installed. To the postgresql create the user: admin and password: admin, port: 5432 to the localhost (port: 5433 to docker). Then create the database with name checkout and payment.


💻 Technologies

- Java
- Spring Boot
- Spring Cloud Stream (framework for building highly scalable event-driven microservices connected with shared messaging systems)
- Schema Registry (to ensure compatibility between microservice communication)
- PostgreSQL
- Docker
- Apache ZooKeeper (manage all brokers in kafka)
- Apache Kafka (distributed platform of messaging and streaming. Broker: instances of kafka)
- Apache Avro (data serialization)

🚀 How to run

Cloning the repository

  # Cloning repository
  git clone https://github.com/antoniosergiojr/ecommerce_digital_innovation_one.git

Running web project

  # Accessing web project
  cd ecommerce_digital_innovation_one

  # Running web project	
  
  In the terminal access ecommerce-checkout-api/docker and run docker-compose up --build --force-recreate to build and docker-compose down to destroy.
  Run docker ps to check.
  
  run ecommerce-checkout-api and ecommerce-payment-api in your IDE. 
  
  Open ecommerce-checkout-frontend/cart.html in your browser, fill in the fields and click buy.
   
  Notes:
  -> Access http://localhost:8080/v1/checkout/ in the postman ou insomnia to make a request (POST) in JSON format. To this alter in the class CheckoutResource
     @ModelAttribute to @RequestBody.
  -> Schema Registry API: http://localhost:8081/subjects/streaming.ecommerce.checkout.created-value/versions/latest
  
  

About

Criando uma solução de e-commerce com microsserviços em Java

https://github.com/hatanakadaniel


Languages

Language:JavaScript 87.8%Language:Java 6.8%Language:HTML 4.9%Language:Shell 0.6%