开源一个完整的BT搜索引擎


开源

特性

  • 高性能
    单核,768MB的VPS上,每秒处理UDP请求超过12K,内存占用不超过100MB`
  • 大容量
    采用Mysql分表存储,设计容量6千万~8千万数据
  • 全文搜索
    采用Elasticsearch实现全文索引和热度排序

组件

  • spider 底层DHT网络爬虫库
  • crawl 从DHT网络中抓取活跃的infohash与metadata并存储
  • storage 根据infohash从网络中抓取torrent并存储metadata
  • api 对外提供接口,响应搜索等请求

直接下载可执行文件运行(推荐方式)

安装准备(从源码安装,较为复杂)

  • 安装 golang
  • 安装 mysql
  • 安装 Elasticsearch
  • 安装组件crawl
    go get github.com/btlike/crawl
  • 安装组件api
    go get github.com/btlike/api
  • 安装组件storage
    go get github.com/btlike/storage

流量图

flow

设计思路

  • 从全网尽可能多的获取infohash
  • 从DHT网络,通过BEP0009获取资源
  • 通过资源库查询资源,采用流量+带宽暴力遍历
  • 极力优化内存、CPU与带宽资源

帮助与联系

在项目下提issue或联系 yanyuan2046 at 126.com