- 博客(4)
- 收藏
- 关注
翻译 现在公开一个DHT网络爬虫
我最开始在选用数据库时,为了不使用第三方库,打算使www.usus.cc用erlang自带的mnesia。但是因为涉及到字符串匹配搜索,mnesia的查询语句在我看来太不友好,在经过一些资料查阅后就直接放弃了。 然后我打算使用couchdb,因为它是erlang写的,而我正在用erlang写程序。第一次接触非关系型数www.usus.cc据库,发现NoSQL数据库使用起来比SQL类的简单
2014-07-07 19:29:15 441
翻译 P2P系统
P2P系统的应用越来越广泛,在文件共享、流媒体服务、即时通讯交流、计算和存储能力共享以及协同处理与服务等方面都能看到P2P的存在,一些P2P应用如Napster、eMule、BitTorrent等早已是家喻户晓了。 P2P按其拓扑关系大致可以分为两类四种形式: 1.非结构化拓扑。包括中心化拓扑、分布式拓扑、半分布式拓扑,其分别对应着Napster、BitTorrent、K
2014-07-07 19:27:43 578
翻译 利用DHT网络原理制作
dhtcrawler最早的版本有很多问题,修复过的最大的一个问题是关于erlang定时器的,在DHT实现中,需要对每个节点每个peer做超时处理,在erlang中的做法直接是针对每个节点注册了一个定时器。这不是问题,问题在于定时器资源就像没有GC的内存资源一样,是会由于程序员的代码问题而出现资源泄漏。所以,dhtcrawler第一个版本在节点数配置在100以上的情况下,用不了多久就会内存耗尽,最终
2014-07-07 19:26:42 607
翻译 DHT网络
DHT网络本质上是一个用于查询的网络,其用于查询一个资源有哪些计算机正在下载。每个资源都有一个20字节长度的ID用于标示,称为infohash。当一个程序作为DHT节点加入这个网络时,就会有其他节点来向你查询,当你做出回应后,对方就会记录下你。对方还会询问其他节点,当对方开始下载这个infohash对应的资源时,他就会告诉所有曾经询问过的节点,包括你。这个时候就可以确定,这个infohash对应的
2014-07-07 17:59:24 758
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人