Skip to content

A simple Spring Boot and Apache Kafka microservices application with four modules: Order services, Email Services, Stock Services and one Base Domain.

Notifications You must be signed in to change notification settings

AthirsonSilva/kafka-microservices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kafka-microservices

A simple Spring Boot and Apache Kafka microservices application with four modules: Order services, Email Services, Stock Services and one Base Domain.

Requirements

Architecture Layers

PRESENTATION LAYER

This layer is at the top of the architecture. This tier is responsible for:

✔️ Performing authentication.

✔️ Converting JSON data into an object (and vice versa).

✔️ Handling HTTP requests.

✔️ Transfering authentication to the business layer.

BUSINESS LAYER

The business layer is responsible for:

✔️ Performing validation.

✔️ Performing authorization.

✔️ Handling the business logic and rules.

PERSISTENCE LAYER

This layer is responsible for:

✔️ Containing storage logic.

✔️ Fetching objects and translating them into database rows (and vice versa).

DATABASE LAYER

This layer is simply the actual database that is responsible for:

✔️ Performing database operations (mainly CRUD operations).

Software structure

image

Getting Started

  1. Clone the repository
  2. Navigate to the project directory
  3. Build the project using Maven:
./mvnw clean install
  1. Run the project using Maven wrapper:
./mvnw spring-boot:run
  1. The application will start on http://localhost:8080

Usage

  • You will also need the database installed on your machine and set the connection vars on the application.properties or application.yml

About

A simple Spring Boot and Apache Kafka microservices application with four modules: Order services, Email Services, Stock Services and one Base Domain.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages