上回说到bittorrent-tracker项目性能较低,于是便换为chihaya项目,Github地址如下:
该Tracker使用GOLang编写,实测在日请求量400W+的情况下,CPU占用不超过5%。
基本组件与GO环境安装
首先安装一些基本组件(已经安装的可以跳过)
sudo apt-get install wget curl vim git -y
然后下载一个预构建好的GO环境:
wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz sudo tar -xzvf go1.14.2.linux-amd64.tar.gz -C /usr/bin
打开账户配置文件,把GO的PATH写到账户配置文件下:
# 切换到root用户 sudo -i # 打开账户配置文件 vim ~/.bash_profile # 将下行内容写到该配置文件中 export PATH=$PATH:/usr/bin/go/bin # 使其生效 source ~/.bash_profile
拉取Chihaya并构建
首先从github拉取Chihaya仓库
# SSH方式 git clone [email protected]:chihaya/chihaya.git # HTTPS方式 git clone https://github.com/chihaya/chihaya.git
然后进入仓库内,开始构建
cd chihaya go build ./cmd/chihaya
构建完成后仓库内会出现一个名为chihaya的可执行二进制文件,将其复制到/usr/bin:
cp chihaya /usr/bin chmod +x /usr/bin/chihaya
执行如下命令,可以检查Chihaya是否正常:
chihaya --help
下载配置文件,并保存到/etc中。
sudo wget https://raw.githubusercontent.com/chihaya/chihaya/master/dist/example_config.yaml -O /etc/chihaya.yaml
打开并根据需要编辑其中的配置选项,相关配置都有英文说明。
sudo vim /etc/chihaya.yaml
创建Systemd启动项
# 新建systemd配置文件,将以下代码一起复制到SSH运行 sudo cat > /lib/systemd/system/chihaya.service <<EOF [Unit] Description=chihaya tracker server [Service] User=root ExecStart=/usr/bin/chihaya --config /etc/chihaya.yaml Restart=on-abort LimitCORE=infinity LimitNOFILE=infinity LimitNPROC=infinity [Install] WantedBy=multi-user.target EOF # 以上为命令的全部内容 # 设置开机启动 sudo systemctl enable chihaya # 启动服务 sudo systemctl start chihaya # 查看服务状态 sudo systemctl status chihaya # 停止服务 sudo systemctl stop chihaya # 重启服务 sudo systemctl restart chihaya
启动之后chihaya便会根据配置文件监听相应的http和udp端口(默认6969),此时Tracker服务器地址如下:
http://你的服务器公网IP:6969/announce
udp://你的服务器公网IP:6969/announce
至于反向代理和CloudFlare接入,方法参照上一篇文章,不过接入Cloudfare时不需要筛选IP了,Chihaya的配置文件里有一个选项可以指定使用CF的连接IP。
real_ip_header: "CF-Connecting-IP"
Chihaya具有丰富的配置文件,同时还支持Redis,这里就不展开讲了。
本组Tracker地址为:
https://tracker.tamersunion.org/announce
剧毒
What are you talking about. I don't understand?