August 28, 2010
Nginx+keepalived负载均衡篇
"由于nginx的url hash功能可以很好的提升squid的性能,所以我把squid前端的负载均衡器更换为nginx,但是一台nginx就形成了单点,现在使用keepalived来解决这个问题,keepalived的故障转移时间很短,而且配置简单,这也是选择keepalived的一个主要原因,建议日PV值小的中小型企业web均可采用如下方案实行,下面直接上安装步骤:\n一、环境:\ncentos5.3、nginx-0.7.51、keepalived-1.1.19\n主nginx负载均衡器:192.168.0.154\n辅nginx负载均衡器:192.168.9.155\nvip:192.168.0.188\n二、安装keepalived\n#tar zxvf keepalived-1.1.19.tar.gz\n#cd keepalived-1.1.19\n#./configure –prefix=/usr/local/keepalived\n#make\n#make install\n#cp /usr/local/keepalived/sbin/keepalived /usr/sbin/\n#cp …"
August 28, 2010
[教程]freebsd8.0下安装coreseek
"一**、安装coreseek**\nA、安装环境配置,为安装coreseek做准备\n#pkg_add -r autoconf262 automake110 libtool mysql50-client libxml2 expat\nB、下载整个安装包(内含mmseg,coreseek):\n#fetch http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.13.tar.gz\n#tar xzvf coreseek-3.2.13.tar.gz\n#cd coreseek-3.2.13\n======================================\nC 、 安装coreseek开发的mmseg,为coreseek提供中文分词功能\n#cd mmseg-3.2.13\n#./bootstrap\n#./configure –prefix=/usr/local/mmseg3\n#make\n#make install\n至此,mmseg已经安装完成,下面进入csft-3.2.13目录里进行安装coreseek …"
August 26, 2010
linux下php多线程的妙用
"开始用php写后台服务一段时间了.也是在这样的驱动下,不断的学习php语法,体验这一原来一直以为神秘且敬而远之的神奇语言的魅力.最初看php多线程的资料是为了提高程序的处理能力,充分发挥linux多任务的优势.不曾想多线程没用成反到是带来了一系列的意外收获.让之后的许多问题迎刃而解,不敢独享特一一道来. 本文所讲的东西是源自php的pcntl_fork函数.因为这个函数依赖操作系统fork的实现,所以本文所讲的东西只适用于linux/unix.ok,那么先看看这个函数的用法吧. php手册 上是这么说的:\n$pid = pcntl_fork();\nif ($pid == -1) {\ndie(‘could not fork’);\n} else if ($pid) {\n// we are the parent\npcntl_wait($status); //Protect against Zombie children\n} else {\n// we are the child\n}\n?\u0026gt;\n通过pcntl_fork创建一个子进程,如果返回值是-1的话,那么说明子进程创建失败.创建成功的进 …"
August 23, 2010
centos IP网络配置
"一、修改IP地址\n修改对应网卡的IP地址的配置文件\n[root@centos]# vi /etc/sysconfig/network-scripts/ifcfg-eth0\n修改以下内容\nDEVICE=eth0(描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0)\nBOOTPROTO=static(设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址)\nBROADCAST=192.168.0.255(对应的子网广播地址)\nHWADDR=00:07:E9:05:E8:B4 (对应的网卡物理地址)\nIPADDR=192.168.1.2(如果设置网卡获得ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址)\nIPV6INIT=no\nIPV6_AUTOCONF=no\nNETMASK=255.255.255.0(网卡对应的网络掩码)\nNETWORK=192.168.1.0(网卡对应的网络地址)\nONBOOT=yes(系统启动时是否设置此网络接口,设置为yes …"
August 22, 2010
Fedora 7配置用yum使用iso DVD镜像源安装软件
"1、先把光盘挂上\n#monut /dev/cdrom /mnt/cdrom 光盘将挂载到/mnt/cdrom 现在我们来检查光盘是否挂载成功(如果没有此目录,先创建)\n#ls /mnt/cdrom 有内容则表示挂载成功。\n2、理解个道理\nCentOS有两个yum源,它们在/etc/yum.repos.d/下面有两个文件:CentOS-Base.repo和CentOS-Media.repo。但这两个源不是同时使用的,默认使用的是采用互联网升级的CentOS-Base.repo源(这文件里都是网址,你可以自己看看),除非我们手动修改让系统使用Media源,而Media源就是指计算机本地的源,就包含我们方才挂上的本地光盘。\n3、开始操作\n首先,把CentOS-Base.repo文件改名,让系统找不到该文件,从而不能使用互联网的更新方式:\n#mv CentOS-Base.repo CentOS-Base.repo.bak\n然后,vi CentOS-Media.repo\n把以下三行的后两行删除\nbaseurl=file:///media/CentOS/ file:///media/cdrom/ …"
August 22, 2010
CentOs 5 安装Zend Optimizer
"一,下载\ncd /usr/local/src wget http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz tar -xzvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz ./ZendOptimizer-3.3.3-linux-glibc23-i386/install.sh 二,安装 1,php.ini配置文件目录是:/etc 2,注意Host5156_Vps使用的是lighttpd,而非apache。\n三,配置域名目录下php.ini文件 1,/etc/php.ini是总的配置文件。还有一个具体的配置文件位于:/home/httpd/domain.com/php.ini,这个文件也要设置下。 2,把php.ini文件下的[zend]段落复制下来,再添加到/home/httpd/domain.com/php.ini文件中。\n[Zend] …"
August 22, 2010
CentOS 防火墙配置 80端口
"在虚拟机的CENTOS装好APACHE不能用,郁闷,解决方法如下\n/sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT /sbin/iptables -I INPUT -p tcp –dport 22 -j ACCEPT\n然后保存:\n/etc/rc.d/init.d/iptables save\n这样重启计算机后,防火墙默认已经开放了80和22端口\n这里应该也可以不重启计算机:\n/etc/init.d/iptables restart\n防火墙的关闭,关闭其服务即可:\n查看防火墙信息:\n/etc/init.d/iptables status\n关闭防火墙服务:\n/etc/init.d/iptables stop\n永久关闭?不知道怎么个永久法:\nchkconfig –level 35 iptables off"
August 22, 2010
Linux中Iptables命令详解
"手册:\n用iptables -ADC 来指定链的规则,-A添加 -D删除 -C 修改\niptables – [RI] chain rule num rule-specification[option] 用iptables – RI 通过规则的顺序指定\niptables -D chain rule num[option] 删除指定规则\niptables -[LFZ] [chain][option] 用iptables -LFZ 链名 [选项]\niptables -[NX] chain 用 -NX 指定链\niptables -P chain target[options] 指定链的默认目标\niptables -E old-chain-name new-chain-name -E 旧的链名 新的链名\n用新的链名取代旧的链名\n说明\nIptalbes 是用来设置、维护和检查Linux内核的IP包过滤规则的。\n可以定义不同的表,每个表都包含几个内部的链,也能包含用户定义的链。每个链都是一个规则列表,对对应的包进行匹配:每条规则指定应当如何处理与之相匹配的包。这被称作’target’(目标),也可以 …"
August 22, 2010
一行命令 Ping 网段所有 IP
"按住 win键+r键 跳出cmd窗口,将下面的代码粘贴到该窗口, @for /l %i in (1,1,255) do @ping -n 1 -w 40 192.168.1.%i \u0026amp; if errorlevel 1 (echo 192.168.1.%i\u0026raquo;na.txt) else (echo 192.168.1.%i\u0026raquo;act.txt) 回车,将自动探测192.168.1.X网段的ip响应情况. 现在是假设你的电脑属于192.168.1.X网段某一部. 存活的保存在 act.txt,不通的在 na.txt; 根据实际改改 -n 1 -w 40 的参数,以达到精准。 还有个高级应用: @for /l %i in (1,1,65535) do @ping -n 1 -w 40 192.168.%i \u0026amp; if errorlevel 1 (echo 192.168.%i\u0026raquo;na.txt) else (echo 192.168.%i\u0026raquo;act.txt)"
August 22, 2010
squid和varnish的小结
"上周初步接触linux下的这2个反向缓存软件,都实验了一下,貌似squid还是比较顺利的,varnish则碰到了一些问题\n从varnish的文档看,性能比squid强很多,而且不是一点点,下面国外某在线媒体的12台squid换成3台varnish前后访问响应延时比较,据说有人也测试过的确如此,\n[][1]\n但我就不那么顺利了。先说squid,安装很顺利,网上的中文文档也很多,在这次尝试中,被缓存的网站的静态内容并不多,主要还是以PHP为主,所以反向cache的效果并不是很好,缓存命中率在60到70%之间,缓存的主要对象是图片。由于安装调试都很顺利,所以在“试玩”了一天后,直接就上线用上了,几天下来,正常。由于做反向缓存的服务器内存不大,只有1G,所以缓存大小只设置了384M,使用了shm,保证了速度,但应该是没有充分发挥出缓存的效能,后期准备增加1G的内存,把缓存扩大到1G,这样的话,缓存对象的大小还能再设置大一些,也许有些mp3之类的也可以缓存起来,这样命中率也许会更高些。\n但即便缓存的命中不是很高,但对后面WEB服务器的压力确实是大大减少了,下面是web服务器上并发连接的图示,一处 …"