Go-matcher is a game matcher implement in Go, which supports add game mode and match strategy easily.
GameMode
: The identifier of each different game, used to define as enum.MatchStrategy
: The strategy to match players, used to define as interface.
- API
- HTTP
- TCP
- UDP
- KCP
- WebSocket
- gRPC
- Service
- match service
- push service
- settle service
- Swagger Doc
- timer
- native timer
- asynq timer
- redis timer
- GameMode
- GoatGame
- MatchStrategy
- Glicko2
- Gather
- ELO
- Config
- File Loader
- Nacos Dynamic Loader
- AI Generator
- Open Telemetry
- Logger
- Tracer
- Metric
- Graceful restart
- tableflip
- save and reload entries
make docker-up
- network
- UDP
- KCP
- WebSocket
- gRPC
- dynamic config
- etcd
- apollo
- consul
- tracer
- repository stats
- match queue stats
- graceful restart
- repository by redis
- hot upgrade
- horizontal expansion
- AI Generator
bash ./setup_pre_commit.sh
# clone repo
git clone [email protected]:hibiken/asynqmon.git
# enter repo
cd asynqmon
# check node version
node -v
# if higher 16, should degrade it
# install nvm if not
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# install node 16
nvm install 16
# use node 16
nvm use 16
# install yarn if not
brew install yarn
# build asynqmon
make build
# start asynqmon
./asynqmon
docker run -d --name jaeger \
-e COLLECTOR_OTLP_ENABLED=true \
-p 16686:16686 \
-p 4317:4317 \
-p 4318:4318 \
jaegertracing/all-in-one:latest
run by docker compose:
git clone https://github.com/nacos-group/nacos-docker.git \
cd nacos-docker \
docker-compose -f example/standalone-mysql-8.yaml up
open nacos website:
open http://localhost:8848/nacos/index.html