分类目录归档:系统调优

系统调优

insert大量数据经验之谈

insert大量数据经验之谈

在很多时候,我们会需要对一个表进行插入大量的数据,并且希望在尽可能短的时间内完成该工作,这里,和大家分享下我平时在做大量数据insert的一些经验。

前提:在做insert数据之前,如果是非生产环境,请将表的索引和约束去掉,待insert完成后再建索引和约束。 继续阅读

xcache加速php减少cpu负载

最近1vps服务器php比较消耗cpu,导致负载有点升高。加上xcache过后效果非常不错。

1. wget http://xcache.lighttpd.net/pub/Releases/1.3.2/xcache-1.3.2.tar.gz
2.tar xx.tar.gz
3.cd xx && xxx/bin/phpize && ./configure –enable-xcache –with-php-config=/opt/php5/bin/php-config
4.php.ini装载xcache模块

xcache.admin.enable_auth = On

xcache.admin.user = "admin"

; xcache.admin.pass = md5($your_password)

xcache.admin.pass = "21232f297a57a5a743894a0e4a801fc3"

xcache.shm_scheme = "mmap"

xcache.size = 64M

xcache.count = 8

xcache.slots = 8K

xcache.ttl = 0

xcache.gc_interval = 0

xcache.var_size = 16M

xcache.var_count = 1

xcache.var_slots = 8K

xcache.var_ttl = 0

xcache.var_maxttl = 0

xcache.var_gc_interval = 300

xcache.test = Off

xcache.readonly_protection = Off

xcache.mmap_path = "/dev/zero"

xcache.coredump_directory = ""

xcache.cacher = On

xcache.stat = On

xcache.optimizer = Off

xcache.coverager = Off

xcache.coveragedump_directory = ""

降低cpu负载效果非常不错!

 

nginx压缩传送的两种方式

nginx gzip静态传送

nginx有两种gzip方式,一种是动态,一种是静态方式。
1.动态方式就是,客户端请求的时候服务器才压缩传送
2.静态方式是服务器端提前使用gzip手工压缩js成xx.js.gz传送压缩包到客户端。客户端根据Content-Encoding    gzip头进行解压
动态配置是:
gzip_static on;
gzip  on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types       text/plain application/x-javascript text/css;
gzip_proxied expired no-cache no-store private auth;
静态配置是:
增加 mime.types
application/x-javascript              js js.gz;
然后增加nginx配置
location ~ .*\.(js.gz)?$
{
root     /home/www;
add_header Content-Encoding gzip;
gzip off;
}

nginx要修改两处,在虚拟主机配置段中添加:

location ~* ^.+.gzjs$ {
add_header Content-Encoding gzip;
gzip off;
}
上面还要增加root目录,否则直接404
另外再修改nginx的mime文件,在application/x-javascript js;中添加gzjs

application/x-javascript js gzjs;

网络性能增强RPS介绍

Receive packet steering介绍

    Receive packet steering简称rps,是google贡献给linux kernel的一个patch,主要的功能是解决多核情况下,网络协议栈的软中断的负载均衡。这里的负载均衡也就是指能够将软中断均衡的放在不同的cpu核心上运行。 继续阅读

vm.swappiness禁用swap分区对性能的提升

wappiness

centos默认的vm.swappiness值是60,这一默认值已经很合适了。但你可以改小一些降低swap的加载,系统性能会有提升。

 

cat /proc/sys/vm/swappiness

 

你会看到值是60, 更改:

sysctl vm.swappiness=10

 

这样你就将值由60改为10,这可以大大降低系统对于swap的写入,建议内存为512m或更多的朋友采用此方法。

如你你发现你对于swap的使用极少,可以将值设为0。这并不会禁止你对swap的使用,而是使你的系统对于swap的写入尽可能的少,同时尽可能多的使用你的实际内存。

这对于你在切换应用程序 时有着巨大的作用,因为这样的话它们是在物理内存而非swap分区中。

如果你想永久得改变这一值,你需要更改 sysctl.conf 文件:

 

添加:

vm.swappiness=10

到末行,需要重启生效。

 

在大内存服务器中我们需要设置这个值为0,尤其是在Mysql服务器上。

 

关于Linux的缓存内存 Cache Memory详解

关于Linux的缓存内存 Cache Memory详解

Linux与Win的内存管理不同,会尽量缓存内存以提高读写性能,通常叫做Cache Memory。有时候你会发现没有什么程序在运行,但是使用top或free命令看到可用内存free项会很少,此时查看系统的 /proc/meminfo 文件,会发现有一项 Cached Memory: 继续阅读