Skip to content

Str1kez/SportiqEventService

Repository files navigation

Event Microservice for Sportiq Project

This microservice is responsible for CRUD operations on events. It receives the User-header from API Gateway and uses it as the authorization key.

Microservice Architecture Microservice Architecture

Related Sportiq services

Documentation

OpenAPI - https://str1kez.github.io/SportiqEventService

Caching

The cache is used in GET-requests on list of events on the map or specific event.
It drops after removing of event or ttl elapsing (by default 1 minute for event and 10 minutes for sport types).
The cache is updated after next GET or PATCH requests.

Microservice

Microservice uses message query to interact with the subscription microservice.
It uses RabbitMQ with persistent delivery mode to maintain delivering and handling guarantee.
Events database automatization is used to update event statuses and mark events as deleted.

Startup

  1. Create .env file and fill it:
    make env
    
  2. Run migrations:
    make upgrade head
    
  3. Create Docker-image:
    make build
    
  4. Run the microservice:
    make up
    

make down - to stop