/chatapp-microservices

A microservices example for Chat Application. Based on Spring Cloud / Netflix / Java / React / React Native/ Docker / Docker Compose.

Primary LanguageJavaMIT LicenseMIT

Microservice demo

A microservices demo implemented with stacks:

  1. Spring and Spring Cloud
  2. React
  3. React Native

Technologies

  • Spring
  • Spring Cloud Config
  • Eureka
  • Zuul
  • Spring Cassandra
  • Spring Kafka
  • Kafka
  • Zookeeper
  • RabbitMQ Stomp
  • Mysql
  • Redis
  • Cassandra

Services implemented

  1. Security: service to authentication with Spring Secrutiy and JWT

  2. Message: service for Chat application API: create room, send message.

    Client (web/mobile) will receive by Websocket.

  3. Storage: service to upload and download file (Client web and mobile is not implement UI)

  4. Contact: service to add and get contact of use. (Client web and mobile is not implement UI)

    After signup user with service security, service security sends messages to Kafka, servie contact receive the message and create data about contact.

All service has Api Documentation which written by Swagger.

How To Run

The demo can be run with Docker Compose.

How to run includes more details

Use ELK Stack

Demo use ELK Stack for logging in microservices at branch elk

Thanks

This demo get inspired from

  1. ewolff/microservice
  2. bezkoder/spring-boot-spring-security-jwt-authentication
  3. jorgeacetozi/ebook-chat-app-spring-websocket-cassandra-redis-rabbitmq