modulepackage
0.0.0-20230831202007-33e68ccfeb8a
Repository: https://github.com/eorug/avitotest.git
Documentation: pkg.go.dev
# README
гайд по установке
один из подов может не подняться при первом запуске, тогда следует потушить все командой docker-compose down и запустить compose up еще раз
docker-compose up --build
примеры запросов
- получение сегментов пользователя
curl --location 'localhost:8080/GetUserInfo' \
--header 'content-type: application/json' \
--data '{"id":1}'
2 Метод создания сегмента
curl --location 'localhost:8080/CreateSegment' \
--header 'content-type: application/json' \
--data '{"name":"name3",
"persent":1}'
3 Метод добавления и удаления сегментов у пользователя
curl --location 'localhost:8080/ChangeSegment' \
--header 'content-type: application/json' \
--data '{"toAdd":["name2"],
"toDelete":[],
"userId":1,
"TTL":"2023-08-31 22:00:00"}'
4 Метод удаления сегментов
curl --location 'localhost:8080/DeleteSegment' \
--header 'content-type: application/json' \
--data '{"name":"name3"}'
Структура проекта
модели находятся в папке models
контроллеры лежат в папке handler
взаимодействие с базой данных в папке db
Miro схема
Вопросы по ходу разработки
1 Было не очень понятно как чистить по ttl так что я написал клинер в отдельной горутине
2 Так как для работы было необходимо где-то складировать пользователей была создана таблица users
3 Так как не было ясно как распределять % пользователей было использовано случайное распределение
# Functions
No description provided by the author