
larbin
aican_yu
这个作者很懒,什么都没留下…
展开
-
larbin的程序的结构
主函数:int main (int argc, char *argv[]) { global glob(argc,argv) //初始化变量、队列StartThread(startWebserver,NULL) //web服务cron() //配置初始化for( ; ;) { waitBandWidth(&old);原创 2011-11-14 22:24:04 · 659 阅读 · 0 评论 -
larbin的类得分析
class url : 处理URL的, 包括显示, 分析URL, 得到主机, 端口, 文件数据等.class hashTable: 需要对URL进行排重, 是一个比较大的url Hash表class hashDup: 对网页的内容进行排重, 是一个Document Hash表.class PersistentFifo: 爬行下来的URL量比较大, 需要存到磁盘上, 所以用到一个FIFO原创 2011-10-28 14:10:58 · 470 阅读 · 0 评论 -
Larbin的通信机制
基于TCP/IP协议的通信编程一般有下面三种方法:第一种是单线程阻塞, 由于是阻塞方式读取, DNS解析, 建立连接, 写入请求, 读取结果这些步骤上都会产生时间的延迟;第二种方式是多线程阻塞, 建立多个阻塞的线程, 分别请求不同的URL. 可以更有效的利用机器资源, 特别是网络资源, 因为无数线程在同时工作, 所以网络会比较充分的利用. 第三种是单线程非阻塞. 是目前使用的比较多原创 2011-10-28 14:23:11 · 532 阅读 · 0 评论 -
larbin里的类的介绍
url肯定需要一个单独的类进行处理,包括显示,分析url,得到主机,端口,文件数据。 然后需要对url进行排重,需要一个比较大的url Hash表。 如果还要对网页内容进行排重,则还需要一个Document Hash表。 爬过的url需要记录下来,由于量比较大,我们将它写到磁盘上,所以还需要一个FIFO的类(记作urlsDisk)。 现在需要原创 2011-11-14 23:18:33 · 521 阅读 · 0 评论