Skip to content

rpc1/idfactory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idfactory - Сервис генерация уникальных id

Описание реализации:

Основная идея реализация в получении веб сервисом доступного диапазона значений для него. Каждый раз при генерации нового id происходит проверка текущего максимального значения, если значение превышено, то запрашиваем новый диапазон.Размер диапазона (batch-size) задается в конфигурационном файле, чем больше batch-size, тем реже сервис будет обращаться за новым диапазоном.

В качестве источников может быть СУБД, другой вебсервис, файлы и т.д., для реализации этого проекта был выбран Redis, и framework для работы с ним Redisson.

Сборка:

  • "./gradlew build" - создание jar файла
  • "docker build -f ./docker/Dockerfile.deploy -t idfactory ." - создание образа докер контейнера
  • "docker-compose -f ./docker/docker-compose.yml up" - запуск Redis и двух экземпляров сервиса (сюда можно еще балансировчик накинуть)
  • ./gradlew integrationTest - запуск интеграционных тестов с использованием TestContainers

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages