Skip to content
/ tyche Public

Example dummy banner system (homework task for interview at hh.ru)

Notifications You must be signed in to change notification settings

mxv2/tyche

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Сервис получения случайного баннера

Описание

Сервис регистрирует информацию о баннерах (тип, баннеры, веса). После регистрации при обращении за баннером, сервис отдает случайный баннер, основываясь на весах - чем больше вес, тем чаще будет появляться данный баннер.

Регистрация

Регистрация производится по URI /banners/register с сообщением вида:

{
  "type": "any_type",
  "banners": ["A", "B", "C"],
  "weights": [1, 3, 8]
}

При успешной регистрации в ответ придет сообщение вида:

{
  "success": true,
  "message": "Banners registered"
}

Получение случайного баннера

Получение баннера производится по URI /banners/${type}/random, где ${type} - зарегистрированный тип баннеров. В ответ придет сообщение вида:

{
  "banner": "C"
}

Запуск проекта

При отсутсвии gradle на компьютере можно воспользоваться следующими командами:

./gradlew build - сборка проекта
./gradlew bootRun - сборка и запуск сервиса

Под Windows вместо gradlew нужно воспользоваться gradlew.bat.

Проект собирается в jar, который можно будет найти в build/libs. Запустить в таком случае сервис можно так:

java -jar build/libs/tyche-rest-service-0.1.0.jar

Сервис поднимается на localhost:8080.

About

Example dummy banner system (homework task for interview at hh.ru)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages