2011年11月7日

Nginx 配置

摘要: 1.wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.10.tar.gztar -zxvf pcre-8.10.tar.gz./configure Error :g++ apt-get install g++ makemak installgroupadd nginxuseradd -g nginx nginx -s /sbin/nologin 2.tar -zxvf nginx-0.8.47.tar.gz./configure --prefix=/usr/local/nginx \--user=nginx -- 阅读全文

posted @ 2011-11-07 21:33 zhoulinhu 阅读(332) 评论(0) 推荐(0) 编辑

删除 setup.py 安装的 Python 软件包

摘要: 在 CentOS 5.5 上通过 setup.py 安装了一个软件包。删除的时候发现 setup.py 没有 uninstall 选项。在网上找了个简单的方法,2 个步骤可轻松完成卸载:* 增加 –record 参数重新安装软件包,执行命令:# python ./setup.py install –record install.txt* 删除安装文件,执行命令:# cat install.txt | xargs rm -rf 阅读全文

posted @ 2011-11-07 21:16 zhoulinhu 阅读(327) 评论(0) 推荐(0) 编辑

nginx负载均衡和lvs负载均衡的比较分析

摘要: lvs和nginx都可以用作多机负载的方案,它们各有优缺,在生产环境中需要好好分析实际情况并加以利用。首先提醒,做技术切不可人云亦云,我云即你云;同时也不可太趋向保守,过于相信旧有方式而等别人来帮你做垫被测试。把所有即时听说到的好东西加以钻研,从而提高自己对技术的认知和水平,乃是一个好习惯。下面来分析一下两者:一、lvs的优势:1、抗负载能力强,因为lvs工作方式的逻辑是非常之简单,而且工作在网络4层仅做请求分发之用,没有流量,所以在效率上基本不需要太过考虑。在我手里的lvs,仅仅出过一次问题:在并发最高的一小段时间内均衡器出现丢包现象,据分析为网络问题,即网卡或linux2.4内核的承载能力 阅读全文

posted @ 2011-11-07 14:26 zhoulinhu 阅读(184) 评论(0) 推荐(0) 编辑

2011年10月26日

vim+cscope的使用

摘要: 1.vim的准备首 先vim--version|grepcscope,看看vim是否支持cscope,如果不支持需要重新安装vim。最简单的是在. /configure后加上-enable-cscope,当然可以在Makefile文件(./src/Makefile)中修改(把原来的注释去 掉),这是最根本的:CONF_OPT_CSCOPE=--enable-cscope然后安装:make&&makeinstall2.在目录下建立cscope索引文件为了方便使用,编写了下面的脚本来更新cscope和ctags的索引文件:#!/bin/shfind.-name"*.h&q 阅读全文

posted @ 2011-10-26 15:18 zhoulinhu 阅读(3174) 评论(0) 推荐(0) 编辑

2011年10月25日

Vim+Taglist+Ctags组合(精简版)

摘要: 要求: 1.vim版本6.0及以上 [root@mylinux ~]# vim -version VIM - Vi IMproved 6.3 (2004 June 7, compiled Dec 5 2004 06:16:10) 2.Exuberant Ctags5.0及以上(注意GNU与Unix的ctags不行) [root@mylinux ~]# ctags --version Exuberant Ctags 5.5.4, Copyright (C) 1996-2003 Darren Hiebert 3.vim必须支持system()调用,进入vim,执行:echo exists(' 阅读全文

posted @ 2011-10-25 11:51 zhoulinhu 阅读(613) 评论(0) 推荐(0) 编辑

爬虫larbin的运行配置说明

摘要: 终于运行了一下larbin,爬行的是很快爬的太多了回来一看系统提示硬盘空间不足了。这也主要是我的给Ubuntu分配的空间太少了。不过爬行的好几千个文件每个文件都上十MB的。够大的。下面就说一说larbin运行的配置即所谓的定制说明和运行结果的简介。larbin的配置说明:(运行命令自不用再说了) Larbin的配置基本涉及到两个文件。Larbin.conf及Options.h 。larbin.conf进行一些简单的配置。修改此配置文件不需要重新编译larbin。但要修改options.h则需要重新编译。这个文件是你要larbin怎么做的设置文件非常重要。修改要重新编译生成新的larbin再运行 阅读全文

posted @ 2011-10-25 11:15 zhoulinhu 阅读(620) 评论(0) 推荐(0) 编辑

10步搞定Larbin

摘要: 步骤:1. 下载:wget http://prdownloads.sourceforge.net/larbin/larbin-2.6.3.tar.gz2. 解压:tar –zxvf larbin-2.6.3.tar.gz3. 进入到larbin-2.6.3目录4. 修改编译选项配置vi options.ha) 修改输出选项#define SIMPLE_SAVE 注释都很清楚6. 设置:./configure7. 编译:gmake.(备注:在这里你还可以选择两种编译方法:gmake prof或者gmake debug)8. 修改配置文件:vi larbin.confa) 修改startUrlb) 阅读全文

posted @ 2011-10-25 08:26 zhoulinhu 阅读(292) 评论(0) 推荐(0) 编辑

2011年10月24日

Larbin代码分析

摘要: 在larbin里判断用一个URL是否被抓取过,用的是bloom filter算法(至少网上的人这么说),但是我感觉与《数学之美系列二十一-布隆过滤器(Bloom Filter)》中所介绍的算法有着很大的不同,因为larbin中只是简单用了hash方法,它有点像位图法,但我的算法很一般,意见仅供参考。先看一下hashTable的类定义:classhashTable{private:ssize_tsize;char*table;public:/* constructor */hashTable(boolcreate);/* destructor */~hashTable();/* save the 阅读全文

posted @ 2011-10-24 23:01 zhoulinhu 阅读(908) 评论(0) 推荐(0) 编辑

LARBIN源代码分析[12]GLOBAL文件中的四个INIT初始化模块函数

摘要: 一 在global.cc文件中的global构造函数中,存在四个初始化模块函数 initSpecific() , initInput() , initOutput() , initSite() 。 下面分别分析这四个初始化函数的作用。 (1) initSpecific 函数定义在 file.cc文件中。然而却没有具体的实现,据估计是用作 处理 网页中出现的jpg 等多媒体文件的。 (2)initInput() 函数 ,实际上只有定义了thread_output才有实现。 (3)initOutput()函数,实际上该函数主要是调用了useroutput.cc中的inituseroutput()函 阅读全文

posted @ 2011-10-24 17:45 zhoulinhu 阅读(324) 评论(0) 推荐(0) 编辑

Larbin源代码分析[10]IPSITE站点的抽象类

摘要: 一 该类的功能 NamedSite中的类经过dns请求之后,就会将站点名转换为ip,然后将url transfer到Ipsite中,由Ipsite具体完成爬虫工作。二 类的具体成员参数 time_t lastAccess; //该IP最后获取的时间 bool isInFifo; //当该对象完成了一次fetch之后,将其加入到oksites中,并将其置为true,或者将一个url加入进fifo中 url *getUrl (); //获取队列中的 url对象 IPSite (); ~IPSite (); Fifo<url> tab; //队列中进行爬取的url列表 int fetch 阅读全文

posted @ 2011-10-24 17:39 zhoulinhu 阅读(426) 评论(0) 推荐(0) 编辑

导航