软件开发: 11 2009存档
本来是想查Intel的“sfence”指令,却找到了这篇文章:http://www.cnblogs.com/flier/archive/2004
/07/08/22352.html
乍一看吓一跳,内存拷贝可以提高50%的性能!,那我们以前用的的memcpy岂不是很菜?!于是按照文章的代码试着在linux上写了个
fast_memcpy函数,测试了一下。好久没写gcc里的嵌入汇编,折腾了半天。
结果发现不如memcpy快。如果我把mm0换成别的寄存器,比如rax、r8等,则movntq根本不可用,zhe这下明白了,movntq加sfence是针对MMX寄存器用的,对普通的内存拷贝没有帮助。
结果发现不如memcpy快。如果我把mm0换成别的寄存器,比如rax、r8等,则movntq根本不可用,zhe这下明白了,movntq加sfence是针对MMX寄存器用的,对普通的内存拷贝没有帮助。
主要参考http://blog.chenlb.com/2009/06/install-haproxy-and-configure-load-balance.html
我的haproxy配置结果如下:
global
log 127.0.0.1 local0
#log 127.0.0.1 local1 notice
#log loghost local0 info
pidfile /tmp/haproxy.pid #pid文件
maxconn 200
ulimit-n 1024
daemon #作为daemon启动
nbproc 4 #且启动4个haproxy进程(企图把4核cpu用干净)
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
option forwardfor
option redispatch
retries 3
balance leastconn #负载均衡算法采用“最少链接者先处理”
stats uri /ha-st
contimeout 5000
clitimeout 50000
srvtimeout 50000
listen web_proxy1 0.0.0.0:1180 #侦听virtual server的1180端口
server app1 10.254.2.197:80 weight 3 check #第一台real server
server app2 10.254.3.142:80 weight 3 check #第二台real server
#server app3 10.254.3.143:80 weight 3 check
我的haproxy配置结果如下:
global
log 127.0.0.1 local0
#log 127.0.0.1 local1 notice
#log loghost local0 info
pidfile /tmp/haproxy.pid #pid文件
maxconn 200
ulimit-n 1024
daemon #作为daemon启动
nbproc 4 #且启动4个haproxy进程(企图把4核cpu用干净)
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
option forwardfor
option redispatch
retries 3
balance leastconn #负载均衡算法采用“最少链接者先处理”
stats uri /ha-st
contimeout 5000
clitimeout 50000
srvtimeout 50000
listen web_proxy1 0.0.0.0:1180 #侦听virtual server的1180端口
server app1 10.254.2.197:80 weight 3 check #第一台real server
server app2 10.254.3.142:80 weight 3 check #第二台real server
#server app3 10.254.3.143:80 weight 3 check