
linux
文章平均质量分 63
aican_yu
这个作者很懒,什么都没留下…
展开
-
python爬虫
用得最多的还是各类爬虫脚本:写过抓代理本机验证的脚本,写过在discuz论坛中自动登录自动发贴的脚本,写过自动收邮件的脚本,写过简单的验证码识别的脚本,本来想写google music的抓取脚本的,结果有了强大的gmbox,也就不用写了。-这些脚本有一个共性,都是和web相关的,总要用到获取链接的一些方法,再加上simplecd这个半爬虫半网站的项目,累积不少爬虫抓站的经验,在此总结一下,原创 2013-04-10 23:12:02 · 958 阅读 · 0 评论 -
HTTP代理服务器的原理分析与安全问答
由于各种原因,在国内上网,免不了要和HTTP代理服务器打交道。HTTP代理服务器分加密代理服务器和普通代理服务器。如果我们在自己的电脑上运行了某些软件之后就能访问之前不能访问的网站,那么很可能是加密代理;如果我们直接在浏览器中设置代理服务器,不用运行任何软件,那么这种类型的代理服务器就是普通代理。一般来说,如果加密代理软件没有问题,加密代理的安全性要好于普通代理。在这里,本文主要还是讲述普通代理的原创 2012-03-16 13:17:14 · 3975 阅读 · 0 评论 -
QPS、PV和需要部署机器数量计算公式
术语说明:QPS = req/sec = 请求数/秒【QPS计算PV和机器的方式】QPS统计方式 [一般使用 http_load 进行统计]QPS = 总请求数 / ( 进程总数 * 请求时间 )QPS: 单个进程每秒请求服务器的成功次数单台服务器每天PV计算公式1:每天总PV = QPS * 3600 * 6公式2:每天总PV = QPS * 36原创 2012-03-14 15:24:18 · 461 阅读 · 0 评论 -
手把手教你把Vim改装成一个IDE编程环境--2
手把手教你把Vim改装成一个IDE编程环境(图文)By:吴垠Date:2007-12-27Email:lazy.fox.wu#gmail.comHomepage:http://blog.youkuaiyun.com/wooinCopyright:该文章原创 2012-03-28 11:20:48 · 487 阅读 · 0 评论 -
手把手教你把Vim改装成一个IDE编程环境
手把手教你把Vim改装成一个IDE编程环境(图文)By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomepage:http://blog.youkuaiyun.com/wooinCopyright:该文章版权由吴垠和他可爱的老婆小包子所有转载 2012-03-28 11:19:07 · 588 阅读 · 0 评论 -
Linux玩具清单
也晒一下我的Linux玩具清单By:吴垠Date:2008-01-31Homepage:http://blog.youkuaiyun.com/wooinEmail:lazy_fox#msn.com版权信息:该文章版权由吴垠和他可爱的老婆小包子所有。可在非商业目的下任意传播和复制。对于商业目的下对本文的任何行为需经作者同意。转载 2012-03-28 11:21:59 · 517 阅读 · 0 评论 -
vimrc的配置
1 "=============================================================================== 2 " Filename: vimrc 3 " Author: Wu Yin(吴垠) 4 " Email: lazy_fox#gmail.com 5 "转载 2012-03-28 11:20:01 · 378 阅读 · 0 评论 -
gcc的一些选项
-c指定源代码只编译不链接.如:gcc -c -o a.o a.c编译成a.o目标工程文件.-D定义宏gcc -DDIR = "/root" -o a a.c-Idir将目录dir加入到头文件搜寻的路径中-Ldir将目录dir加入到搜寻库的目录中-llibhello.so链接到原创 2012-03-27 13:01:08 · 710 阅读 · 0 评论 -
base64编码
Base64编码的作用:由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。它使用下面表中所使用的字符与编码。而且base64特别适合在http,mime协议下快速传输数据。base64其实不是安全领域下的加密解密算法。虽然有时候经常看到所谓的base64加密解密。其实base64只能算是一个编码算法,对数据内容进行编码原创 2012-03-25 18:09:41 · 471 阅读 · 0 评论 -
libtool的使用
介绍在不同的系统中建立动态链接库的方法有很大的差别,这主要是因为每个系统对动态链接库的看法和实现并不相同,以及编译器对动态链接库支持的选项也不太一样。对于开发人员,如果尝试将使用动态库的软件在这些系统之间移植,需要参考枯涩难懂的系统手册,以及修改相应的 Makefile,这一工作是乏味的,并且具有一定的难度。使用 GNU Libtool 可以容易的在不同的系统中建立动态链接库。它通原创 2012-02-13 15:25:39 · 2244 阅读 · 0 评论 -
实战SSH端口转发
第一部分 概述当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我们带来什么好处吧!端口转发概述让我们先来了解一下端口转发的概念吧。我们知道,SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据。但是,SSH 还同时提供了一个非常原创 2012-02-07 21:50:58 · 496 阅读 · 0 评论 -
TC数据库
1. 概述TC(Tokyo Cabinet )是日本人平林幹雄开发的一款 Key-Value 键值数据库,该数据库读写非常快。TT(Tokyo Tyrant )是由同一作者开发的 Tokyo Cabinet 数据库网络接口。它拥有自己的协议,并支持Memcached兼容协议和HTTP协议。Tokyo Cabinet的数据库类型分为:TCHDB (Hash Dat原创 2012-04-07 18:05:08 · 2361 阅读 · 0 评论 -
如何自学图形图像
现在,图像类信息越来越多了,对图像的编程需求也越来越多。图像类项目的特点是性价比高,单行代码的价格一般是普通的程序的10倍,每行代码能够卖几块钱。很多人把目光放在这个上面。刚才又有网友咨询,做图像要看些什么书?结合我的自学经验,写一篇博客谈谈这个问题。 需要先明确几个问题: (1)你的基础如何?做图形图像的话,对数学要求比较高,至少要有大学数学的基础——微积分、线性代数、概率统计和数原创 2012-04-09 09:44:15 · 744 阅读 · 0 评论 -
shell空格作用
1:定义变量时, =号的两边不可以留空格.eg:gender=femal------------rightgender =femal-----------wronggender= femal-----------wrong2条件测试语句 [ 符号的两边都要留空格.eg:if [ $gender = femal ]; then-------right.原创 2012-11-07 14:41:56 · 632 阅读 · 0 评论 -
知乎的技术方案
知乎的整个网站架构图如下: 知乎是国内很少的使用Python开发的一个网站,也很多值得我们学习的地方,从知乎让我们也可以了解到一些新的WEB技术。 一、Python框架 知乎目前使用的是Tornado 框架。Tornado 全称Tornado Web Server,是一个用Python 语言写成的Web 服务器兼Web 应用框架,由 FriendFeed原创 2012-06-19 15:20:03 · 2225 阅读 · 0 评论 -
syslog的用法
许多应用程序需要记录它们的活动。系统程序经常需要向控制台或日志文件写消息。这些消息可能指示错误、警告或是与系统状态有关的一般信息。例如,su程序会把某个用户尝试得到超级用户权限但失败的事实记录下来。通常这些日志信息被记录在系统文件中,而这些系统文件又被保存在专用于此目的的目录中。它可能是/usr/adm或/var/log目录。对一个典型的Linux安装来说,文件 /var/log/messag原创 2012-06-12 20:24:48 · 660 阅读 · 0 评论 -
nginx + syslog
环境:WEB主机:FREEBSD8.2 + nginx 1.0.6 日志服务器:FREEBSD8.2 + splunk需求:将nginx的access日志以及error日志全部尽数以syslog的方式发送到日志服务器备份以便备查,同时不能影响本地日志的生成,也就是本地也有日志,远程主机也有日志。解决思路:网络GOOGLE大神告诉我,nginx必须要打一个补丁才能让其原创 2012-05-18 15:39:20 · 4481 阅读 · 0 评论 -
lua c在linux下的编译
gcc -o myx myx.c -llua -lm -ldlmyx.c==================================#include //Lua语言解析器#include //Lua标准库#include原创 2012-05-11 15:57:18 · 632 阅读 · 0 评论 -
对自己的要求
1、毕业进公司、15个月,技术能力超越团队80%的人。2、刻苦,对技术有无穷探索乐趣,任何技术难题都不放弃。3、乐于学习,不但用一个软件,还要通过研读源码了解核心原理,并且在团队进行分享。原创 2012-04-20 17:03:05 · 635 阅读 · 0 评论 -
LevelDB介绍
LevelDB是google开源的一个key-value存储引擎库,类似于开源的Lucene索引库一样。其他的软件开发者可以利用该库做二次开发,来满足定制需求。LevelDB采用日志式的写方式来提高写性能,但是牺牲了部分读性能。为了弥补牺牲了的读性能,一些人提议使用SSD作为存储介质。对于本地化的Key-value存储引擎来说,简单的使用一般都分成三个基本的步骤:(1)打开一个数据库实例;原创 2012-04-16 09:55:14 · 854 阅读 · 0 评论 -
DDOS攻击报告
1)什么是DOS,DDOS,DDOS的基本原理?2)为什么会遭受DDOS攻击?3)攻击类型、种类、攻击原理? SYN Flood攻击 IP欺骗DOS攻击 UDP洪水攻击 Ping洪流攻击 泪滴(teardrop)攻击 Land攻击 Smurf攻击原创 2012-04-27 11:27:41 · 759 阅读 · 0 评论 -
动态库与静态库
作者: laomai地址: http://blog.youkuaiyun.com/laomai本文主要参考了如下资料⑴hcj写的"Linux静态/动态链接库的创建和使用"地址 http://fanqiang.chinaunix.net/system/linux/2006-05-08/4126.shtml⑵雨亦奇的文章"LINUX动态链接库高级应用"地址http://www.ccw.原创 2012-04-09 23:16:23 · 508 阅读 · 0 评论 -
linux内核学习
写给Linux内核新手-关于Linux内核学习的误区 先说句正经的:其实我没资格写这篇文章,因为自己也就一两个月以来才开始有所领悟的。因此,这里与其说是关于Linux内核学习的经验,不如说是自己的教训吧,希望不要扔鸡蛋砸我^_^ 常常有人问:我想学习内核,需要什么基础吗?Linus Torvalds本人是这样回答的:你必须使用过Linux。 这个……还是有点太泛了吧,我想下面原创 2012-04-09 17:08:01 · 627 阅读 · 0 评论 -
gcc预定义的一些宏
gcc中的预编译宏 * 预定义的宏 * __NASE_FILE__ 源文件的完整路径名,和 __FILE__ 不同,被引用的文件仍然是原来文件名 * __CHAR_UNSIGNED__ 用于指定该机器上 char 是无符号类型 * __cplusplus 使用 C++ 编译器编译 * __DATE__ 编译时的日期 * __FILE原创 2012-02-07 10:26:50 · 1097 阅读 · 0 评论 -
automake创建静态库
使用Automake 创建和使用静态库1. 目录结构如下:example|——src 目录(存放源代码文件) |——hello.c|——lib 目录(存放用来生成库的文件) |——test.c 用来生成静态库libhello.a|——include 目录(存放程序中使用的头文件) |——hello.h2. 编写的各个原创 2012-02-06 15:23:55 · 593 阅读 · 0 评论 -
configure and make
作为Linux下的程序开发人员,一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了. 在本文中,将介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常见的GNU程序一样,只要使用“./c原创 2012-02-05 22:57:46 · 574 阅读 · 0 评论 -
rpm命令的使用
rpm -qa|grep soft_name 查找现在机子装的软件版本等信息rpm -e soft_name 卸载某一个软件netstat -tnl 查看系统的端口使用情况在linux系统中源代码包安装过程:1. 配置( configure)2. 编译(make)3. 安装(make install)原创 2011-11-27 20:21:02 · 384 阅读 · 0 评论 -
计算机专业应该读得书
列一下我所认为的,你面试微软前必须要读的十本书:Code: The Hidden Language of Computer Hardware and Software (《编码的奥秘》)Computer System: A Programmer’s Approach (《深入理解计算机系统》) / Windows via C/C++ (《Windows核心编程》 / 《程序员的自我修养》C原创 2011-11-05 13:51:15 · 930 阅读 · 0 评论 -
关于如何学好编程的一个很漂亮的回答
学编程书是必读的,代码也是必敲的,每一个学习阶段最好都运用上已学的知识来独立开发一个小玩意。即使C语言语法+控制台环境,结合好的想法都有机会能开发出令人惊叹的白字黑窗作品,甚至改变整个IT行业的美妙算法或数据结构。原创 2011-11-04 18:04:52 · 340 阅读 · 0 评论 -
localtime函数中的返回指针的思考
localtime和gmtime这两个函数采用了time.h中的一个tm结构体:struct tm{ int tm_sec; /* Seconds. [0-60] (1 leap second) */ int tm_min; /* Minutes. [0-59] */ int tm_hour; /* Hours原创 2011-11-25 14:30:50 · 1755 阅读 · 0 评论 -
linux指定运行时的动态路径
众所周知, Linux 动态库的默认搜索路径是 /lib 和 /usr/lib 。动态库被创建后,一般都复制到这两个目录中。当程序执行时需要某动态库, 并且该动态库还未加载到内存中,则系统会自动到这两个默认搜索路径中去查找相应的动态库文件,然后加载该文件到内存中,这样程序就可以使用该动态库中的函 数,以及该动态库的其它资源了。在 Linux 中,动态库的搜索路径除了默认的搜索路径外,还可以通过以下原创 2011-11-22 09:31:09 · 398 阅读 · 0 评论 -
AMQP简单介绍
当前各种应用大量使用异步消息模型,并随之产生众多消息中间件产品及协议,标准的不一致使应用与中间件之间的耦合限制产品的选择,并增加维护成本。AMQP是一个提供统一消息服务的应用层标准协议,基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同开发语言等条件的限制。 当然这种降低耦合的机制是基于与上层产品,语言无关的协议。AMQP协议是一种二进制协议,提供原创 2011-11-17 13:34:05 · 641 阅读 · 0 评论 -
带宽的理解
目前全国各地电信对于ADSL家庭用户分配的带宽是不同的,以笔者所在的城市为例,家庭用户是2M,相信外地的朋友应该也都差不多。但是这里提到的“带宽”同我们平时常见的内存带宽等概念是不同的。 网络带宽单位是:位/每秒(即:bit/s),而内存等带宽单位却是:字节/每秒(即:byte/s)。两者由于1byte=8bit。 因此正确的计算ADSL网络“理论最大”的下载速度,原创 2011-11-15 14:51:24 · 853 阅读 · 0 评论 -
ps命令--内存
rss RSS resident set size, the non-swapped physical memory that a task has used (in kiloBytes). (alias rssize, rsz). vsz VSZ virtual memory size of the process in KiB (10原创 2011-10-22 16:39:34 · 419 阅读 · 0 评论 -
查看系统的IO信息命令
sar的安装方式:yum -y install sysstat1.sar是做什么的? 主要负责收集、汇报与存储系统运行信息。2.sar怎么控制信息输出的时间间隔和次数? 有两个参数非常有用,就是“时间间隔”和“输出次数”。例如:sar 0 表示输出的信息是从开机到现在为止的平均值 sar 60 5 表示每60秒输出一次,共输出5次,历时300原创 2011-10-22 14:24:48 · 1395 阅读 · 0 评论 -
关于cpu的分析--us,sys百分比代表什么
topus 用户空间占用CPU百分比sy 内核空间占用CPU百分比ni 用户进程空间内改变过优先级的进程占用CPU百分比id 空闲CPU百分比wa 等待输入输出的CPU时间百分比hi 硬件中断si 软件中断 wa 数值高的话,一般是由io阻塞引起的。考虑数据库或文件读写有问题在top下按1,显示逻辑cpu信息Summar原创 2011-10-22 14:59:17 · 2415 阅读 · 0 评论 -
larbin的队列
以前整理过的关于larbin的队列结构给需要的网友: 为什么disk和priority的队列都是成对出现的,是因为可以认为每个site在namedSiteList当中都有一个小的队列来保存它的url,这个url的个数是有个限制的,当超过这个限制的时候就不能再把该site下的url放入,但也不能丢弃,而是放入wait队列。larbin会控制一段时间在disk队列中取url,一段原创 2011-11-10 17:22:24 · 802 阅读 · 0 评论 -
larbin队列(2)
一 larbin中的2中类型的队列 static SyncFifo *URLsPriority; //最高优先级 static SyncFifo *URLsPriorityWait; //次高优先级 static PersistentFifo *URLsDisk; //低原创 2011-11-10 19:32:59 · 715 阅读 · 0 评论 -
linux平台下的C语言开发
一、工具的使用1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑器,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。2、学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。3、掌握gcc和gdb的基本用原创 2012-01-31 18:46:57 · 604 阅读 · 0 评论 -
用SecureCRT传输文件
使用SecureCRT传输文件 SecureCRT当然和以传送文件了,要不你们难道都开ftp来传送文件?这太危险了吧! SecureCRT可以使用zmodem、xmodem模式工作,当然要目标主机支持。 上传: SecureCRT里面有个transfer菜单,你选择Zmodem upload list ... ,然后选择你要上传的文件,选完之后点击close,再在命令行 c原创 2011-12-09 11:14:39 · 1218 阅读 · 0 评论