Page Cache和Buffer Cache的区别

在监控中开始对着两个Cache有点搞不清楚,后来查了下,弄清楚了它们的区别,都是Cache但完全不是缓存一种东西,很好区分。 磁盘的操作有逻辑级(文件系统)和物理级(磁盘块),这两种Cache就是分别缓存逻辑和物理级数据的。 假设我们通过文件系统操作文件,那么文件将被缓存到Page Cache,如果需要刷新文件的时候,Page Cache将交给Buffer Cache去完成,因为Buffer Cache就是缓存磁盘块的。 也就是说,直接去操作文件,那就是Page Cache区缓存,用dd等命令直接操作磁盘块,就是Buffer Cache缓存的东西。 转自http://www.penglixun.co ...

CPU负载的分析

最近对我的本本(4核8线程)用top命令看系统状况出现了CPU利用率超过200%的情况,非常诧异,查了下相关资料,把这个问题弄清楚了。 首先来分析下CPU Load load average: 0.09, 0.05, 0.01 分别是1分钟、5分钟、15分钟的平均Load。 Load这个东西怎么理解呢,就像一条马路,有N个车道,如果N个进程进入车道,那么正好一人一个,再多一辆车就占不到车道,要等有一个车空出车道。 在CPU中可以理解为CPU可以并行处理的任务数,那么就是“CPU个数 * 核数”,如果CPU Load = CPU个数 * 核数 那么就是说CPU正好满负载,再多一点,可能就要出 ...

Load和CPU利用率是如何算出来的

相信很多人都对Linux中top命令里“load average”这一栏困惑过,到底什么是Load,Load代表了什么含义,Load高会有什么后果?“%CPU”这一栏为什么会超过100%,它是如何计算的? 带着这些问题,我们通过一些测试,来探索下其中的不解之处。 首先,我们通过实验来大概确定其计算方式: 测试服务器:4核Xeon处理器 测试软件:MySQL 5.1.40 服务器上除了MySQL没有运行其他任何非系统自带软件。因为MySQL只能单线程运行单条SQL,所以可以很好的通过增加查询并发来控制使用的CPU核数。 空载时,top的信息为: top – 14:51:47 up 35 days, 4:43 ...

Linux Cache 机制探究

经过研究了下Linux相关代码,把对Linux Cache实现的方式做一些总结。 相关源码主要在: ./fs/fscache/cache.c Cache实现的代码 ./mm/slab.c SLAB管理器代码 ./mm/swap.c 缓存替换算法代码 ./mm/mmap.c 内存管理器代码 ./mm/mempool.c 内存池实现代码 0. 预备:Linux内存管理基础 创建进程fork()、程序载入execve()、映射文件mmap()、动态内存分配malloc()/brk()等进程相关操作都需要分配内存给进程。不过这时进程申请和获得的还不是实际内存,而是虚拟内存,准确的说是“内存区 ...

wordpress评论邮件回复博客名带特殊符号修正

如果你的博客名称有特殊符号,就像我一样,有一个撇,那么就在回信的时候必须修正一下,不然会被转义,其实代码可以写的更好。 方法主要是添加htmlspecialchars()函数来防止转义,如果你看到回信中有转义的部分,可以给那一句直接加一个htmlspecialchars来处理。 比如我的会在标题出现错误,改动如下。 把 $subject = ‘您在 [' . get_option("blogname") . '] 的留言有了回复’; 改成 $subject = '您在['.html_entity_decode(get_option("blogname"), ENT_QUOTES).']的留言有了回复'; 如果觉得麻烦,可以直接贴下面的评论邮件 ...

用yum安装Linux常用的开发包开发库

很多情况下,我们需要用到devel开发包,怎么用yum安装Linux常用的开发包/devel开发库?如下命令即可

yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel

这样,大部分常用的devel开发包都安装了。

给wordpress评论头像添加alt属性

一般评论是调用wp_list_comments()这个函数的,而它在调用get_avatar()列出评论者头像的时,并没有传递头像的alt属性参数。

开启方法如下

找到wp-include/comment-template.php文件打开,查找get_avatar,找到下面这行代码:


将其就改为:

comment_author" ); ?>

注意:修改的是wp核心文件,升级后会覆盖,需要重新再改。只适合于评论通过wp_list_comments()来显示的主题。