Skip to content

MWT-proger/shortener

Repository files navigation

Shortener - Сервис сокращения URL

Развертывание проекта

  1. Склонируйте репозиторий в любую подходящую директорию на вашем компьютере.
git clone https://github.com/MWT-proger/shortener.git
  1. Скопируйте шаблон файла с переменным окружения
  cp deployments/.env.example deployments/.env
  1. Укажите верные переменные окружения в только что созданный файл .env

Доступны следующие переменные

POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=testDB
POSTGRES_PORT=5432
  1. Запустите БД Postgres следующей командой
  docker compose -f deployments/docker-compose.yaml --env-file deployments/.env up -d
  1. Запустите cервис сокращения URL
go run ./cmd/shortener -a "localhost:7000" -d "user=postgres password=postgres host=localhost port=5432 dbname=testDB sslmode=disable" -l debug
  1. Сборка проекта с глобальными переменными
go build -ldflags "-X main.buildVersion=v1.0.1 -X main.buildDate=15.12.1998 -X main.buildCommit=first_commit" main.go

Тестирование проекта

  1. Benchmark
go tool pprof -http=":9090" -seconds=30 http://localhost:7000/debug/pprof/profile 
go build ./cmd/
go tool pprof shortener -seconds=30 http://localhost:7000/debug/pprof/profile 
go test  -bench=. -cpuprofile=cpu.out -coverpkg=./../../...

go test -bench=. -memprofile=base.out
go tool pprof -http=":9090" bench.test base.out 
goimports -local "github.com/MWT-proger/shortener" -w main.go 


export GOPATH="$HOME/go" export PATH="$GOPATH/bin:$PATH"

About

Сервис сокращения URL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published