Archive for December, 2008
php gd库的细节
今天早晨听到imagerotate()函数不能用,一查是gd库里面的东西。
phpinfo里面显示都正常,显示如下:
gd
GD Support => enabled
GD Version => 2.0 or higher
FreeType Support => enabled
FreeType Linkage => with freetype
FreeType Version => 2.2.1
GIF Read Support => enabled
GIF Create Support => enabled
JPG Support => enabled
PNG Support => enabled
WBMP Support => enabled Read the rest of this entry »
find命令大全
最近视频服务器经常出现接近满的情况,整理了一下,用find查找几天前的,然后删掉
find /upload -path “/upload/somenotdel/” -prune -o -type f -mtime +7 -exec rm {} \;
说明:查找upload下面,类型是普通文件,修改时间7天前,-path -prune -o
不删除 /upload/somenotdel/里面的文件。 -exec 就是执行删除命令 Read the rest of this entry »
关于>&2、2>&1等重定向
在POSIX shell中,命令的结果可以通过%>的形式来定义(其中%表示文件描述符:1为标准输出stdout、2为标准错误stderr)!系统默认% 值是1,也就是1>,而1>可以简写为>,也就是默认为>。而stdout的默认目标是终端。 stderr的默认目标我也是终端,比如:
#aaa
sh: aaa: not found.
错误信息显示在终端上。 Read the rest of this entry »
关于Spider的一些问题
Sosospider很烦人,就封掉吧。
在服务器里进行封杀
BrowserMatch Sosospider a_robot=1
BrowserMatch libwww a_robot=1
使用mdadm管理Raid
今天有台数据库服务器不知道怎么出故障了,直接无法进入系统 kernel panic。
是raid5,可是分区有点问题,4块硬盘一块有/boot/ 还有raid的一个分区。
也就是 sda2 sdb1 sdc1 sdd1 四部分组成raid5
mdadm 命令解释
mdadm -A /dev/md0
mdadm –detail /dev/md0
cat /proc/mdstat 检测raid的情况
如果raid里面有资料,不要用 mdadm 创建 raid
mdadm -C /dev/md0 –level=5 –raid-devices=4 /dev/sda2 /dev/sdb1 /dev/sdc1 /dev/sdd1
这样的话,内容就挂了
总结:
/boot / 尽量不要放到raid上去。这样恢复比较好一点。
用memcached为你的服务器提速(原创)
memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
http://www.danga.com/memcached/
系统: Centos 5.x
1. 安装memcached 服务
安装: yum install -y libevent libevent-devel Read the rest of this entry »
MySQL分区的限制以及性能问题
MySQL 5.1.30 新版支持分区方案,大家都跃跃欲试,先来看看它的一些限制
Partitioning 的限制
1. 创建Partition禁止使用存储过程,声明变量或者用户定义的变量。
2. 创建Partition可以使用”+,-,*”数学运算符,但是结果必须是整数或者NULL([LINEAR] KEY分区方案除外),从5.1.23开始,支持”DIV”,但是不允许”/”, 从5.1.12开始,不允许”|, & , ^ , <<, ~”等位运算符。
性能方面的考虑
文件系统,MySQL启动large_files_support,对于MyISAM 存储引擎, 增加 myisam_max_sort_file_size 可能会提升性能;
存储引擎,MyISAM在分区操作,查询,更新等操作中,优于InnoDB,NDB。
最大分区数, 对于指定的表,最大分区数是1024,其中包括子分区。
不支持 Foreign keys。
不支持FULLTEXT索引。
临时表不能使用分区。
partitioning key 必须是整数或者是通过转化可以变成整数的列
不支持主键缓存
更多资料 http://dev.mysql.com/doc/refman/5.1/en/partitioning-limitations.html
Ubuntu下安装飞鸽传书
准备材料:
飞鸽传书安装包一个http://www.ipmsg.org/archive/g2ipmsg-0.9.6.tar.gz
能联网
安装
sudo apt-get install libxml-parser-perl libgnomeui-dev libpanel-applet2-dev gettext intltool libssl-dev
tar xvzf g2ipmsg-0.9.6.tar.gz
./configure –enable-systray && make && sudo make install
完成
服务器优化之减小服务器磁盘IO的负载
Linux下有个mount参数叫noatime, 如果在/etc/fstab下开启,那么系统将不记录atime信息(atime 最后一次访问时间) 使用noatime可以获取比较明显的性能提升。
例:
LABEL=/ / ext3 defaults 1 1
LABEL=/db /db ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
我们可以加入noatime
LABEL=/ / ext3 defaults,noatime 1 1
LABEL=/db /db ext3 defaults,noatime 1 2
然后执行
mount -o remount /
mount -o remount /db
即可生效, mount命令检查
mount
/dev/sda1 on / type ext3 (rw,noatime)
…
/dev/sda2 on /db type ext3 (rw,noatime)
几个小问题
1. edyliu-laptop:~$ sudo modprobe vfat
WARNING: Error inserting fat (/lib/modules/2.6.27-7-generic/kernel/fs/fat/fat.ko): Cannot allocate memory
FATAL: Error inserting vfat (/lib/modules/2.6.27-7-generic/kernel/fs/vfat/vfat.ko): Cannot allocate memory
内存不足,呵呵
可是挂载分区的时候,它提示说内核没有vfat.
free了一些内存,重新来过。一切顺利!
2. vmware server linux版 对于个人来说, 有点烦人。 总是自动启动, 一生气把它干掉了。
3. source insight 的 linux 版,看源代码不错的工具
sourcenav http://sourcenav.sourceforge.net/index.html
4. 读点MySQL的东西,Internal 还是代码。。。。。我接着看