平台haproxy构建20130510

本文详细介绍如何在Linux环境下安装并配置HAProxy负载均衡器,包括下载、编译、安装步骤及常用配置项说明,还提供了发送HTTP日志的具体设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

平台haproxy构建20130510


下载:
wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.23.tar.gz

- linux2628   for Linux 2.6.28 and above (enables splice and tproxy)
splice是linux内核2.6.25之后提供的一个功能,能在网卡之间基于内核之间传输数据而不需要在拷贝数据,减少拷贝数据的cpu占用


# uname -a
Linux haproxy30 2.6.32-358.6.1.el6.x86_64 #1 SMP Tue Apr 23 19:29:00 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

解压、编译、安装
#  tar xvzf haproxy-1.4.23.tar.gz
#  cd haproxy-1.4.23

#  make TARGET=linux2628 PREFIX=/usr/local/haproxy
#  make install PREFIX=/usr/local/haproxy

mkdir /usr/local/haproxy/logs/

启动命令:
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg

重启命令:
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg  -sf $(cat /usr/local/haproxy/haproxy.pid)

分配置文件启动命令:
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg  -f /usr/local/haproxy/haproxy.cfg.pingtai.web

# ulimit -n
65535

配置haproxy发送http log
# more /usr/local/haproxy/haproxy.cfg
defaults  
        log     global  
        mode    http  
        option  httplog  
        option  dontlognull  
        log 127.0.0.1 local0  
        retries 3  

日志服务器接收haproxy发送的日志
# more  /etc/rsyslog.d/haproxy_log.conf
# Enable UDP port 514 to listen to incoming log messages from haproxy
$ModLoad imudp
$UDPServerRun 514
$template Haproxy,"%msg%\n"
local0.=info   -/var/log/haproxy.log;Haproxy
local0.notice  -/var/log/haproxy.admin;Haproxy
# don't log anywhere else
local0.* ~

按日切割日志
# more  /etc/logrotate.d/haproxy
/var/log/haproxy.log {
    missingok
    notifempty
    sharedscripts
    rotate 14
    daily
    compress
    postrotate
        reload rsyslog >/dev/null 2>&1 || true
    endscript
}

 


附:配置文件
# more /usr/local/haproxy/haproxy.cfg
global  
        maxconn 20000  
        chroot /usr/local/haproxy  
        uid 99  
        gid 99  
        daemon  
        quiet  
        nbproc  2  
        pidfile /usr/local/haproxy/haproxy.pid  

defaults  
        log     global  
        mode    http  
        option  httplog clf
        option  dontlognull  
        log 127.0.0.1 local0  
        retries 3  
        option redispatch  
        maxconn 20000  
        contimeout      5000  
        clitimeout      30000  
        srvtimeout      30000  
        
###haproxy statistics monitor
listen statics :8889   
       mode http  
       transparent  
       stats refresh 60s
       stats uri / haproxy-stats  
       stats realm Haproxy \ statistic  
       stats auth l2212:tes21t201  

 

###以下是mysql slave haproxy的备份配置
listen pool_mysql_slave_backup 192.168.0.6:3306
        mode tcp
        maxconn 8000
        balance roundrobin
        option httpchk OPTIONS * HTTP/1.1\r\nHost:\ www
        server sdb1_192.168.0.9  192.168.0.9:3306  check port 8822 inter 2s rise 2 fall 2
        server sdb2_192.168.0.10 192.168.0.10:3306 check port 8822 inter 2s rise 2 fall 2
        option tcpka

###前端配置
frontend wby_pt_http_frontend
       mode http  
       bind *:80
       bind *:8080
       option httpclose  
       option httpchk
       option forwardfor  
       option redispatch
       capture request header Host len 60
       capture request header Referrer len 60

##C
       acl domain_c                hdr(host)     -i qu.xxyyzz.com
       ##将c老域名跳转
       acl domain_c_old            hdr_beg(host) -i plat.xxyyzz.com
       redirect location           http://qu.xxyyzz.com if domain_c_old
       ##C Login登录授权 http://qu.xxyyzz.com/Login => http://192.168.0.5:80809
       acl domain_c_login_url      url_beg /Login/

       ##根据规则选择backend
       use_backend server_pool_c_login if domain_c_login_url domain_c

       use_backend server_pool_c                     if domain_c

###后端server pool配置

##C
backend server_pool_c
        mode http
        balance roundrobin
        server C11 192.168.10.11:80 check weight 1 check inter 10s rise 2 fall 3
        server C12 192.168.10.12:80 check weight 1 check inter 10s rise 2 fall 3

##C登录授权

backend server_pool_c_login
        mode http
        balance roundrobin
        ##重写到login的header,否则 login页无样式
        reqrep ^([^\ :]*)\ /Login/(.*)     \1\ /\2
        server Login_auth53 192.168.0.5:8089 check weight 1 check inter 10s rise 2 fall 3

 


 

基于C2000 DSP的电力电子、电机驱动和数字滤波器的仿真模型构建及其C代码实现方法。首先,在MATLAB/Simulink环境中创建电力电子系统的仿真模型,如三相逆变器,重点讨论了PWM生成模块中死区时间的设置及其对输出波形的影响。接着,深入探讨了C2000 DSP内部各关键模块(如ADC、DAC、PWM定时器)的具体配置步骤,特别是EPWM模块采用上下计数模式以确保对称波形的生成。此外,还讲解了数字滤波器的设计流程,从MATLAB中的参数设定到最终转换为适用于嵌入式系统的高效C代码。文中强调了硬件在环(HIL)和支持快速原型设计(RCP)的重要性,并分享了一些实际项目中常见的陷阱及解决方案,如PCB布局不当导致的ADC采样异常等问题。最后,针对中断服务程序(ISR)提出了优化建议,避免因ISR执行时间过长而引起的系统不稳定现象。 适合人群:从事电力电子、电机控制系统开发的技术人员,尤其是那些希望深入了解C2000 DSP应用细节的研发工程师。 使用场景及目标:①掌握利用MATLAB/Simulink进行电力电子设备仿真的技巧;②学会正确配置C2000 DSP的各项外设资源;③能够独立完成从理论设计到实际产品落地全过程中的各个环节,包括但不限于数字滤波器设计、PWM信号生成、ADC采样同步等。 其他说明:文中提供了大量实用的代码片段和技术提示,帮助读者更好地理解和实践相关知识点。同时,也提到了一些常见错误案例,有助于开发者规避潜在风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值