kademlia/examples/server.tac

22 lines
683 B
Python
Raw Normal View History

2014-01-04 14:27:45 -05:00
from twisted.application import service, internet
2014-01-13 19:49:16 -05:00
from twisted.python.log import ILogObserver
2014-01-13 21:44:44 -05:00
from twisted.internet import reactor, task
2014-01-13 19:49:16 -05:00
2014-01-14 18:21:40 -05:00
import sys, os
2014-01-04 14:27:45 -05:00
sys.path.append(os.path.dirname(__file__))
from kademlia.network import Server
2014-01-13 19:49:16 -05:00
from kademlia import log
2014-01-04 14:27:45 -05:00
2014-01-14 18:21:40 -05:00
application = service.Application("kademlia")
application.setComponent(ILogObserver, log.FileLogObserver(sys.stdout, log.INFO).emit)
2014-01-13 21:44:44 -05:00
if os.path.isfile('cache.pickle'):
kserver = Server.loadState('cache.pickle')
2014-01-13 21:44:44 -05:00
else:
kserver = Server()
2014-01-14 18:21:40 -05:00
kserver.bootstrap([("1.2.3.4", 8468)])
kserver.saveStateRegularly('cache.pickle', 10)
2014-01-13 21:44:44 -05:00
server = internet.UDPServer(8468, kserver.protocol)
2014-01-04 14:27:45 -05:00
server.setServiceParent(application)