Данный сервис является реализазицей многопоточной загрузки protobuf сообщений в memcache на Go.
Для установки данного сервиса необходимо установить сервер memcache
и пакет protobuf-compiler
Так же необходимо установить все зависимости проекта go.
Это можно сделать следующими командами:
export GOPATH=`pwd`
export PATH=$PATH:$GOPATH/bin
go get -u github.com/golang/protobuf/proto
go get -u github.com/golang/protobuf/protoc-gen-go
protoc --go_out=src/appsinstalled appsinstalled.proto
go get -d -v ./...
go install -v ./...
Либо можно воспользоваться Dockerfile и всё приложение соберётся в контейнер. Для этого достаточно запустить из папки проекта командy:
docker build -t mcache_go .
Сервис поддерживает следущие параметры запуска:
"-l", "--log"
, имя файла логирования по умолчанию сообщения выводятся на экран
"--pattern"
, шаблон для поиска логов, по умолчанию равно "./data/appsinstalled/*.tsv.gz"
"--idfa"
, адрес хранилища idfa устройств, по умолчанию равно "127.0.0.1:33013"
"--gaid"
, адрес хранилища gaid устройств, по умолчанию равно "127.0.0.1:33014"
"--adid"
, адрес хранилища adid устройств, по умолчанию равно "127.0.0.1:33015"
"--dvid"
, адрес хранилища dvid устройств, по умолчанию равно "127.0.0.1:33016"
"--goroutines"
, количество горутин для обработки файлов, по умолчанию равно 2
Для запуска сервиса достаточно запустить его из папки проекта с параметрами по умолчанию
go run src/memcache_load/memcache_load.go
Для запуска в докер-контейнере:
docker run -it --net="host" mcache_go