Light Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

zpqsunny/dht

Repository files navigation

DHT Wang Luo Pa Chong

Jia Gou She Ji

DHT Server -> Redis

Redis <- Peer -> (Mongodb && local)

Mo Kuai Jie Shi

  • dht-common Gong Gong Bian Liang He Fang Fa
  • dht-fresh hashDe 7Tian Nei Tong Ji Ri Huo Yue Shu
  • dht-krpc krpc Xie Yi Shi Xian
  • dht-peer Peer Ke Hu Duan Shi Xian (TCP),Shi Xian Duan Yu Duan Zhi Jian De Shu Ju Jiao Hu ,Lai Shi Xian Huo Qu Dui Duan De metadataShu Ju He Cun Chu
  • dht-routing-table Wei dht-server Shi Xian De Nei Bu Lu You Biao
  • dht-server Fu Ze Ji Yu UDPChuan Shu Xie Yi De DHTWang Luo Chuan Shu BencodeBian Ma De Fu Wu Qi

config.properties Pei Zhi Wen Jian

DHT Server

server.port=6881 #Jian Ting Duan Kou
server.nodes.min=20 #nodeJie Dian Zui Shao Shu Liang
server.nodes.max=3000 #nodeJie Dian Zui Da Shu Liang
server.findNode.interval=60 #Zhi Xing find_nodeFang Fa Shi Jian Jian Ge (Dan Wei Miao )
server.ping.interval=300 #Zhi Xing pingFang Fa Shi Jian Jian Ge (Dan Wei Miao )
server.removeNode.interval=300 #Zhi Xing Shan Chu Shi Xiao Jie Dian Shi Jian Jian Ge (Dan Wei Miao )
server.fresh=false #Shi Fou Kai Qi hashTong Ji Xu Yao Kai Qi fresh Bu Ran redis listShu Ju Hui Bei Zhan Man
redis.host=127.0.0.1 #redisDi Zhi
redis.port=6379 #redisDuan Kou
redis.password= #redisMi Ma
redis.database=0 #redis Database

Peer

peers.core.pool.size=5 #peerHe Xin Xian Cheng Shu
peers.maximum.pool.size=10 #peerZui Da Xian Cheng Shu
redis.host=127.0.0.1 #redisDi Zhi
redis.port=6379 #redisDuan Kou
redis.password= #redisMi Ma
redis.database=0 #redis Database
mongodb.url= #mongodb url

Shi Xian Xie Yi

DHT Protocol

Extension for Peers to Send Metadata Files

Extension Protocol

Yun Xing

jarBao He config.propertiesPei Zhi Wen Jian Yao Zai Tong Yi Mu Lu

java -jar dht-server-1.0-SNAPSHOT-jar-with-dependencies.jar &
java -jar dht-peer-1.0-SNAPSHOT-jar-with-dependencies.jar &

Docker

Yun Xing Zai Docker

dht-server

dht-peer

ENV Huan Jing Bian Liang Pei Zhi

DHT Server

PORT = 6881 #Duan Kou
MIN_NODES = 20 #nodeJie Dian Zui Shao Shu Liang
MAX_NODES = 5000 #nodeJie Dian Zui Da Shu Liang
FRESH = false #Shi Fou Kai Qi hashTong Ji Xu Yao Kai Qi fresh Bu Ran redis listShu Ju Hui Bei Zhan Man
REDIS_HOST = 127.0.0.1 #redisDi Zhi
REDIS_PORT = 6379 #redisDuan Kou
REDIS_PASSWORD = '' #redisMi Ma
REDIS_DATABASE = 0 #redis Database

DHT Peer

REDIS_HOST = 127.0.0.1 #redisDi Zhi
REDIS_PORT = 6379 #redisDuan Kou
REDIS_PASSWORD = '' #redisMi Ma
REDIS_DATABASE = 0 #redis Database
MONGODB_URL = 'mongodb://localhost' #mongodb url

Kuai Su Yun Xing

docker

docker run -d --name redis --network host redis:5.0.10
docker run -d --name dht-server --network host zpqsunny/dht-server:latest
docker run -d --name mongo --network host -v /docker/mongo/db:/data/db -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin mongo:4.4.1
docker run -d --name dht-peer --network host -v /metadata:/metadata -e MONGODB_URL="mongodb://admin:admin@127.0.0.1:27017/?authSource=admin" -e REDIS_HOST=127.0.0.1 -e REDIS_PORT=6379 zpqsunny/dht-peer:latest

docker-compose

services:
redis:
container_name: redis
image: redis:5.0.10
network_mode: host
restart: unless-stopped
dht-server-1: &dht-server
depends_on:
- redis
image: zpqsunny/dht-server:latest
build:
context: dht-server
dockerfile: Dockerfile
network_mode: host
restart: unless-stopped
environment:
PORT: 6881
REDIS_HOST: 127.0.0.1
REDIS_PORT: 6379
REDIS_PASSWORD:
REDIS_DATABASE: 0
dht-server-2:
<<: *dht-server
environment:
PORT: 6882
dht-server-3:
<<: *dht-server
environment:
PORT: 6883
mongo:
container_name: mongo
image: mongo:4.4.1
volumes:
- /docker/mongo/db:/data/db
- /docker/mongo/backup:/backup
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin
network_mode: host
restart: unless-stopped
dht-peer:
depends_on:
- redis
- mongo
deploy:
mode: replicated
replicas: 3
image: zpqsunny/dht-peer:latest
build:
context: dht-server
dockerfile: Dockerfile
network_mode: host
restart: unless-stopped
volumes:
- /metadata:/metadata
environment:
MONGODB_URL: mongodb://admin:admin@127.0.0.1:27017/?authSource=admin
REDIS_HOST: 127.0.0.1
REDIS_PORT: 6379
REDIS_PASSWORD:
REDIS_DATABASE: 0
docker-compose up

Shi Li Shu Ju

Stargazers over time

Ming Xie

IntelliJ IDEA Shi Yi Ge Zai Ge Ge Fang Mian Du Zui Da Cheng Du Di Ti Gao Kai Fa Ren Yuan De Sheng Chan Li De IDE,Gua Yong Yu JVM Ping Tai Yu Yan .

Te Bie Gan Xie JetBrains Wei Kai Yuan Xiang Mu (Open Source Projects)Ti Gong Mian Fei De IntelliJ IDEA Deng IDE De Shou Quan