Skip to content

A high-performance BitTorrent Tracker implemented in Go. 🚀

License

Notifications You must be signed in to change notification settings

PBH-BTN/trunker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2285362 · Mar 25, 2025
Mar 20, 2025
Mar 24, 2025
Mar 18, 2025
Mar 18, 2025
Mar 17, 2025
Mar 12, 2025
Mar 25, 2025
Mar 24, 2025
Mar 12, 2025
Dec 12, 2024
Mar 10, 2025
Dec 19, 2024
Mar 12, 2025
Mar 9, 2025
Mar 12, 2025
Dec 12, 2024
Mar 21, 2025
Mar 21, 2025
Mar 17, 2025
Mar 12, 2025
Mar 17, 2025
Mar 17, 2025
Feb 17, 2025
Dec 12, 2024
Mar 9, 2025

Repository files navigation

Trunker

A Tracker which will "chuang" you

image

Introduction

A high-performance BitTorrent Tracker implemented in Go. Using Hertz from cloudwego, with observability.

For benchmark, please refer to the Benchmark section.

Official Instance

HTTPS https://tracker.ghostchu-services.top/announce
WebSocket (for WebTorrent Protocol) wss://tracker.ghostchu-services.top/announce
UDP udp://utracker.ghostchu-services.top:6969

How to run

make install_tool
make update_idl
./build.sh
cd output
./bootstrap.sh

or

docker run -d --name trunker -e ADMIN_KEY=aabbcc -p 8888:8888 gaojianli2333/trunker:latest

Features

  • BEP-0003
  • BEP-0007 (IPv6 Tracker Extension)
  • BEP-0023 (Compact Peer Lists)
  • BEP-0024 (External IP)
  • BEP-0031 (Failure Retry Extension)
  • BEP-0048 (Scrape)
  • BEP-0015 (UDP Tracker Protocol)
  • LT-Extension (aka. complete,incomplete)
  • Switchable Mode (Memory or MySQL)
  • Load and store persist from disk
  • Blacklist for info_hash and peer_id
  • Eventbus support
  • Websocket support
  • Prometheus based metrics
  • RPC mode to support cluster. Powered by Kitex

Wiki

Trunker provides much config and observability capabilities, if you want to run trunker in production, please see the Wiki.

Benchmark

Trunker has very strong performance. Here's a record of a real peak.

  • CPU: 4 Cores AMD EPYC-Milan
  • Average response time: 100us when 1267703 torrents and 2406393 peers are online.
  • QPS: 2736 (can be higher, but we don't have such many peers connect to our tracker)
  • Memory Cost: 2635MB.

image

image