当前位置: 首页 > news >正文

昆明做网站方案手机网站适应屏幕

昆明做网站方案,手机网站适应屏幕,wap网站 教程,首饰网站建设策划案文章目录 Web架构负载均衡介绍为什么使用负载均衡负载均衡类型 HAProxy简介应用场景HAProxy是什么HAProxy功能 脚本安装HAProxy基础配置global多进程和线程HAProxy日志配置项 Proxies配置-listen-frontend-backendserver配置 frontendbackend配置实例子配置文件 HAProxy调度算法… 文章目录 Web架构负载均衡介绍为什么使用负载均衡负载均衡类型 HAProxy简介应用场景HAProxy是什么HAProxy功能 脚本安装HAProxy基础配置global多进程和线程HAProxy日志配置项 Proxies配置-listen-frontend-backendserver配置 frontendbackend配置实例子配置文件 HAProxy调度算法静态算法动态算法roundrobinleastconnrandom Web架构 负载均衡介绍 负载均衡:Load Balance简称LB是一种服务或基于硬件设备等实现的高可用反向代理技术负载均衡将特定的业务(web服务、网络流量等)分担给指定的一个或多个后端特定的服务器或设备从而提高了公司业务的并发处理能力、保证了业务的高可用性、方便了业务后期的水平动态扩展。 阿里云SLB介绍https://developer.aliyun.com/article/1803 为什么使用负载均衡 1.增加业务并发访问及处理能力 -- 解决单服务器瓶颈问题 2.节约公网IP地址 -- 降低IT支出成本 3.隐藏内部服务器IP -- 提高内部服务器安全性 4.Web服务器的动态水平扩展 -- 对用户无感知 5.负载均衡配置简单 -- 固定格式的配置文件 6.负载均衡功能丰富 -- 支持四层和七层支持动态下线主机 7.负载均衡性能较强 -- 并发数万甚至百万负载均衡类型 四层: LVS: Linux virtual server Nginx: 1.9版之后 HAProxy: High Availability Proxy七层: HAProxy Nginx硬件: F5 https://www.f5.com.cn/ Netscaler https://www.netscaler.com/ Array https://www.arraynetworks.com.cn/ 深信服 https://www.sangfor.com.cn/ 北京灵州 http://www.lingzhou.com.cn/cpzx/llfzjh/ HAProxy简介 HAProxy的定位和LVS类似仅仅作为一个反向代理没有其他功能是一个专业级的反向代理往往作为企业服务的总入口。 Nginx作为web服务器其性能还是很优秀的但是作为反向代理性能还是不如LVSLVS是工作在Linux内核中的LVS的并发可以达到百万级以上。 LVS虽然性能好但是没有Nginx功能丰富Nginx可以提供四层和七层的反向代理且还具备健康检查功能。 HAProxy作为反向代理介于LVS和Nginx之间性能比Nginx好功能比LVS更丰富。HAProxy会作为企业项目中一个总的入口。 应用场景 随着公司业务的发展公司负载均衡服务既有四层的又有七层的通过LVS实现四层和Nginx实现七层的负载均衡对机器资源消耗比较大并且管理复杂度提升运维总监要求目前需要对前端负载均衡服务进行一定的优化和复用能否用一种服务同既能实现七层负载均衡又能实现四层负载均衡并且性能高效配置管理容易而且还是开源。 在企业生产环境中每天会有很多的需求变更比如增加服务器、新业务上线、url路由修改、域名配置等等对于前端负载均衡设备来说容易维护复杂度低是首选指标。在企业中稳定压倒一切与其搞得很复杂经常出问题不如做的简单和稳定。在企业中90%以上的故障来源于需求变更。可能是程序bug也可能是人为故障也可能是架构设计问题等。前端负载均衡设备为重中之重在软件选型上一定充分考虑能满足业务的前提下尽可能降低复杂度提高易维护性。 HAProxy是什么 社区版https://www.haproxy.org/ 企业版https://www.haproxy.com/ 这里HAProxy吹了一个牛“offering high availability”提供高可用其实它本身不具备高可用需要借助别的服务像Keepalived… HAProxy功能 支持功能1.TCP和HTTP反向代理2.SSL/TSL服务器3.可以针对HTTP请求添加cookie进行路由后端服务器4.可平衡负载至后端服务器并支持持久连接5.支持所有主服务器故障切换至备用服务器6.支持专用端口实现监控服务7.支持停止接受新连接请求而不影响现有连接8.可以在双向添加修改或删除HTTP报文首部响应报文压缩9.支持基于pattern实现连接请求的访问控制10.通过特定的URI为授权用户提供详细的状态信息11.支持http反向代理12.支持动态程序的反向代理13.支持基于数据库的反向代理脚本安装 #!/bin/bash # #****************************************************************************** #Author: wangxiaochun #Date: 2022-07-03 #FileName: install_haproxy.sh #URL: www.wangxiaochun.com #Description: install haproxy for centos 7/8 ubuntu 18.04/20.04 #Copyright (C): 2022 All rights reserved #******************************************************************************HAPROXY_VERSION2.6.1 HAPROXY_FILEhaproxy-${HAPROXY_VERSION}.tar.gz #HAPROXY_FILEhaproxy-2.2.12.tar.gz LUA_VERSION5.4.4 LUA_FILElua-${LUA_VERSION}.tar.gz #LUA_FILElua-5.4.3.tar.gz HAPROXY_INSTALL_DIR/apps/haproxySRC_DIR/usr/local/src CWDpwd CPUSlscpu |awk /^CPU\(s\)/{print $2} LOCAL_IP$(hostname -I|awk {print $1})STATS_AUTH_USERadmin STATS_AUTH_PASSWORD123456VIP192.168.10.100 MASTER1192.168.10.101 MASTER2192.168.10.102 MASTER3192.168.10.103. /etc/os-releasecolor () {RES_COL60MOVE_TO_COLecho -en \\033[${RES_COL}GSETCOLOR_SUCCESSecho -en \\033[1;32mSETCOLOR_FAILUREecho -en \\033[1;31mSETCOLOR_WARNINGecho -en \\033[1;33mSETCOLOR_NORMALecho -en \E[0mecho -n $1 $MOVE_TO_COLecho -n [if [ $2 success -o $2 0 ] ;then${SETCOLOR_SUCCESS}echo -n $ OK elif [ $2 failure -o $2 1 ] ;then ${SETCOLOR_FAILURE}echo -n $FAILEDelse${SETCOLOR_WARNING}echo -n $WARNINGfi${SETCOLOR_NORMAL}echo -n ]echo }check_file (){if [ ! -e ${LUA_FILE} ];thencolor 缺少${LUA_FILE}文件! 1exitelif [ ! -e ${HAPROXY_FILE} ];thencolor 缺少${HAPROXY_FILE}文件! 1exitelsecolor 相关文件已准备! 0fi }install_haproxy(){if [ $ID centos -o $ID rocky ];thenyum -y install gcc make gcc-c glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel libtermcap-devel ncurses-devel libevent-devel readline-devel elif [ $ID ubuntu ];thenapt update apt -y install gcc make openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev libreadline-dev libsystemd-dev elsecolor 不支持此操作系统! 1fi[ $? -eq 0 ] || { color HAPROXY 启动失败,退出! 1; exit; }tar xf ${LUA_FILE} -C ${SRC_DIR}LUA_DIR${LUA_FILE%.tar*}cd ${SRC_DIR}/${LUA_DIR}make all testcd ${CWD}tar xf ${HAPROXY_FILE} -C ${SRC_DIR}HAPROXY_DIR${HAPROXY_FILE%.tar*}cd ${SRC_DIR}/${HAPROXY_DIR}make -j ${CPUS} ARCHx86_64 TARGETlinux-glibc USE_PCRE1 USE_OPENSSL1 USE_ZLIB1 USE_SYSTEMD1 USE_CPU_AFFINITY1 USE_LUA1 LUA_INC${SRC_DIR}/${LUA_DIR}/src/ LUA_LIB${SRC_DIR}/${LUA_DIR}/src/ PREFIX${HAPROXY_INSTALL_DIR}make install PREFIX${HAPROXY_INSTALL_DIR}[ $? -eq 0 ] color HAPROXY编译安装成功 0 || { color HAPROXY编译安装失败,退出! 1;exit; }[ -L /usr/sbin/haproxy ] || ln -s ${HAPROXY_INSTALL_DIR}/sbin/haproxy /usr/sbin/ /dev/null[ -d /etc/haproxy ] || mkdir /etc/haproxy /dev/null [ -d /var/lib/haproxy/ ] || mkdir -p /var/lib/haproxy/ /dev/nullcat /etc/haproxy/haproxy.cfg -EOF global maxconn 100000 stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin uid 99 gid 99 daemonpidfile /var/lib/haproxy/haproxy.pid log 127.0.0.1 local3 infodefaults option http-keep-alive option forwardfor maxconn 100000 mode http timeout connect 300000ms timeout client 300000ms timeout server 300000mslisten statsmode httpbind 0.0.0.0:9999stats enablelog globalstats uri /haproxy-statusstats auth ${STATS_AUTH_USER}:${STATS_AUTH_PASSWORD}#listen kubernetes-6443 # bind ${VIP}:6443 # mode tcp # log global # server ${MASTER1} ${MASTER1}:6443 check inter 3000 fall 2 rise 5 # server ${MASTER2} ${MASTER2}:6443 check inter 3000 fall 2 rise 5 # server ${MASTER3} ${MASTER2}:6443 check inter 3000 fall 2 rise 5EOF#echo PATH${HAPROXY_INSTALL_DIR}/sbin:${PATH} /etc/profile.d/haproxy.shgroupadd -g 99 haproxyuseradd -u 99 -g haproxy -d /var/lib/haproxy -M -r -s /sbin/nologin haproxycat /lib/systemd/system/haproxy.service -EOF [Unit] DescriptionHAProxy Load Balancer Aftersyslog.target network.target[Service] ExecStartPre/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c -q ExecStart/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid ExecReload/bin/kill -USR2 $MAINPID[Install] WantedBymulti-user.target EOFsystemctl daemon-reloadsystemctl enable --now haproxy systemctl is-active haproxy /dev/null color HAPROXY安装完成! 0 || { color HAPROXY 启动失败,退出! 1; exit; }echo -------------------------------------------------------------------echo -e 请访问链接: \E[32;1mhttp://${LOCAL_IP}:9999/haproxy-status\E[0mecho -e 用户和密码: \E[32;1m${STATS_AUTH_USER}/${STATS_AUTH_PASSWORD}\E[0m }main(){check_fileinstall_haproxy }main HAProxy基础配置 官方文档 https://docs.haproxy.org/ https://docs.haproxy.org/3.0/configuration.html HAProxy的配置文件haproxy.cfg由两大部分组成分别是global和proxies部分 global HAProxy 的全局配置主要用于管理进程行为、日志、安全性以及性能调优等。在配置 HAProxy 时全局设置是整个系统稳定、高效运行的基础。 官方帮助手册https://docs.haproxy.org/3.0/configuration.html#3 global:全局配置段1.进程及安全配置相关的参数2.性能调整相关参数3.Debug参数vim /etc/haproxy/haproxy.cfg globallog 127.0.0.1 local2chroot /var/lib/haproxypidfile /var/run/haproxy.pidmaxconn 4000user haproxygroup haproxydaemon# turn on stats unix socketstats socket /var/lib/haproxy/stats#utilize system-wide crypto-policiesssl-default-bind-ciphers PROFILESYSTEMssl-default-server-ciphers PROFILESYSTEM 配置参数说明 chroot #锁定运行目录,黑客攻破了这个目录化它也只能在这个目录下操作不会以此为跳板操作别的目录deamon #以守护进程运行stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin process 1 #socket文件,并可以通过此文件管理user, group,uid,gid #运行haproxy的用户身份nbthread 1 #和多进程nbproc配置互斥版本有关,centos8的haproxy1.8无此问题,指定每个haproxv进程开启的线程数默认为每个进程一个线程 #如果同时启用nbproc和nbthread 会出现以下日志的错误无法启动服务 Apr 7 14:46:23 haproxy haproxy: [ALERT] 097/144623 (1454) : config : cannot enable multiple processes if multiple threads are configured. Please use eithernbproc or nbthread but not both.#cpu-map 1 0 绑定haproxy worker进程至指定CPU将第1个worker进程绑定至0号CPU #cpu-map 2 1 绑定haproxy worker进程至指定CPU将第2个worker进程绑定至1号CPUcpu-map auto:1/1-8 0-7 #haproxy2.4中启用nbthreads在global配置中添加此选项可以进行线程和CPU的绑定nbproc选项2.5版本中将会删除,每个进程中1-8个线程分别绑定0-7号CPUmaxconn n #每个haproxy进程的最大并发连接数 maxsslconn n #每个haproxy进程ssl最大连接数,用于haproxy配置了证书的场景下 maxconnrate n #每个进程每秒创建的最大连接数量spread-checks n #后端server状态check随机提前或延迟百分比时间建议2-5(20%-50%)之间默认值0 pidfile #指定pid文件路径 log 127.0.0.1 local2 info #定义全局的syslog服务器:日志服务器需要开启UDP协议最多可以定义两个多进程和线程 从2.5以上新版中用多线程代替多worker进程 范例:多进程和socket文件 [roothaproxy ~]#vim /etc/ haproxy / haproxy .cfggloba1 maxconn 100000 chroot /apps/haproxy stats socket /var/lib/haproxy/haproxy1.sock mode 600 level admin process 1 stats socket /var/lib/haproxy/haproxy2.sock mode 600 level admin process 2 stats socket /var/lib/haproxy/haproxy3.sock mode 600 level admin process 3 stats socket /var/lib/haproxy/haproxy4.sock mode 600 level admin process 4 uid 99 gid 99 daemon nbproc 4[roothaproxy ~]#ps axo pid,cmd,psr|grep haproxy 1933 /usr/sbin/haproxy -ws -f /e 5 1935 /usr/sbin/haproxy -ws -f /e 0 1936 /usr/sbin/haproxy -ws -f /e 1 1937 /usr/sbin/haproxy -ws -f /e 2 1938 /usr/sbin/haproxy -ws -f /e 3 1965 grep --colorauto haproxy 1范例:多线程和CPU绑定 #范例1 [roothaproxy ~]#vim /etc/haproxy/haproxy. cfg globalcpu-map auto: 1/1-8 0-7#语法检查 [roothaproxy ~]#haproxy -c -f /etc/haproxy/haproxy.cfg[roothaproxy ~]#systemctl restart haproxy.service[roothaproxy ~]#pidstat -p 915 -t Linux 4.15.0-112-generic (haproxy. wang.org) saturdayseptember 042021 _x86_64_ (8 CPU)07:46:56 CST UID TGID TID ‰usr %system %guest %wait %CPU CPUCommand 07:46:56 CST 999 915 - 0.00 0.00 0.00 0.00 0.00 0 haproxy 07∶46:56 CST 999 - 915 0.00 0.00 0.00 0.00 0.00 0 |__haproxy 07∶46:56 CST 999 - 916 0.00 0.00 0.00 0.00 0.00 1 |__haproxy 07∶46:56 CST 999 - 917 0.00 0.00 0.00 0.00 0.00 2 |__haproxy 07∶46:56 CST 999 - 918 0.00 0.00 0.00 0.00 0.00 3 |__haproxy 07∶46:56 CST 999 - 919 0.00 0.00 0.00 0.00 0.00 4 |__haproxy 07∶46:56 CST 999 - 920 0.00 0.00 0.00 0.00 0.00 5 |__haproxy 07∶46:56 CST 999 - 921 0.00 0.00 0.00 0.00 0.00 6 |__haproxy 07∶46:56 CST 999 - 922 0.00 0.00 0.00 0.00 0.00 7 |__haproxy#范例2 [roothaproxy ~]#vim /etc/haproxy/haproxy.cfg cpu-map auto:1/1-4 0-3[roothaproxy ~]#ps axo pid,cmd,psr -L |grep haproxy1437 /usr/sbin/haproxy -ws -f /e 41439 /usr/sbin/haproxy -ws -f /e 01439 /usr/sbin/haproxy -ws -f /e 11439 /usr/sbin/haproxy -ws -f /e 21439 /usr/sbin/haproxy -ws -f /e 3HAProxy日志配置项 HAproxy本身不记录客户端的访问日志.此外为减少服务器负载,一般生产中HAProxy不记录日志.也可以配置HAProxy利用rsyslog服务记录日志到指定日志文件中 HAProxy配置 #在global配置项定义: log 127.0.0.1 local{1-7] info #基于syslog记录日志到指定设备级别有(err、warning、info、 debug)listen web_portbind 127.0.0.1:80mode httplog global #开启当前web_port的日志功能默认不记录日志server web1 127.0.0.1:8080 check inter 3000 fall 2 rise 5#systemctl restart haproxyRsyslog配置 vim /etc/rsyslog.conf $ModLoad imudp $UDPServerRun 514 ...... local3.* /var/log/haproxy.log ......#systemctl restart rsyslog验证HAProxy日志 #tail -f /var/ log/haproxy. 1og Aug 14 20:21:06 localhost haproxy[18253]: connect from 192.168.0.1:3050 to10.0.0.7:80 (web_host/HTTP) Aug 14 20:21:06 localhost haproxy[18253]: connect from 192.168.0.1:3051 to10.o.0.7:80 (web_host/HTTP) Aug 14 20:21:06 localhost haproxy[18253]: connect from 192.168.0.1:3050 to10.0.0.7:80 (web_host/HTTP)Proxies配置 官方帮助手册https://docs.haproxy.org/3.0/configuration.html#4 defaults [name] #默认配置项针对以下的frontend、backend和listen生效可以多个name也可以没有name frontend name #前端servername类似于Nginx的一个虚拟主机 server和LVS服务集群. backend name #后端服务器组等于nginx的upstream和LVS中的RS服务器 listen name #将frontend和backend合并在一起配置相对于frontend和backend配置更简洁生产常用注意: name字段只能使用大小写字母数字-(dash)‘_(underscore) .’ (dot)和∵’(colon)并且严格区分大小写 -listen 使用listen替换frontend和backend的配置方式可以简化设置常用于TCP协议的应用 #官网业务访问入口 listen WEB_PORT_80bind 192.168.10.100:80mode httpoption forwardforserver web1 10.0.0.17:8080 check inter 3000 fall 3 rise 5server web2 10.0.0.27:8080 check inter 3000 fall 3 rise 5#检查语法 [rootubuntu2004 ~]#haproxy -c -f /etc/haproxy/haproxy.cfg configuration file is valid-frontend frontend 配置参数: bind: #指定HAProxy的监听地址可以是IPV4或IPV6可以同时监听多个IP或端口可同时用于listen字段中#格式: bind [address]:port_range [...] [param*]#注意:如果需要绑定在非本机的IP需要开启内核参数: net.ipv4.ip_nonlocal_bind1backlog backlog #针对所有server配置,当前端服务器的连接数达到上限后的后援队列长度注意:不支持backendfrontend http_proxy #监听http的多个IP的多个端口和sock文件bind :80,:443,:8801-8810bind 10.0.0.1:10080,10.0.0.1:10443bind /var/run/ssl-frontend.sock user root mode 600 accept-proxyfrontend http_https_proxy #https监听bind :80bind :443 ssl crt /etc/haproxy/site.pem #公钥和私钥公共文件frontend http_https_proxy_explicit #监听ipv6、ipv4和unix sock文件bind ipv6:80bind ipv4public_ss1:443 ssl crt /etc/haproxy/site.pembind unixssl-frontend.sock user root mode 600 accept-proxylisten external_bind_app1 #监听file descriptorbind fd${FD_APP1]生产示例 frontend wang_web_port #建议采用后面形式命名:业务-服务-端口号bind :80, :8080bind 10.0.0.7:10080, :8801-8810,10.0.0.17:9001-9010mode http|tcp #指定负载协议类型use_backend backend_name #调用的后端服务器组名称-backend 定义一组后端服务器backend服务器将被frontend进行调用。 注意: backend 的名称必须唯一,并且必须在listen或frontend中事先定义才可以使用,否则服务无法启动 mode http|tcp #指定负载协议类型,和对应的frontend必须一致 option #配置选项 server #定义后端real server,必须指定IP和端口注意: option后面加httpchksmtpchk,mysql-check,pgsql-checkss-hello-chk方法可用于实现更多应用层检测功能。 server配置 针对一个后端服务器server的配置 #针对一个server配置 check #对指定real进行健康状态检查如果不加此设置默认不开启检查,只有check后面没有其它配置也可以启用检查功能#默认对相应的后端服务器IP和端口,利用TCP连接进行周期性健康性检查,注意必须指定端口才能实现健康性检查addr IP #可指定的健康状态监测IP可以是专门的数据网段减少业务网络的流量port num #指定的健康状态监测端口inter num #健康状态检查间隔时间默认2000 msfall num #后端服务器从线上转为线下的检查的连续失效次数默认为3rise num #后端服务器从下线恢复上线的检查的连续有效次数默认为2weight weight #默认为1最大值为256,0(状态为蓝色)表示不参与负载均衡但仍接受持久连接 backup #将后端服务器标记为备份状态,只在所有非备份主机down机时提供服务类似sorry server disabled #将后端服务器标记为不可用状态即维护状态除了持久模式将不再接受连接状态为深黄色,优雅下线,不再接受新用户的请求 maxconn maxconn #当前后端server的最大并发连接数,放在server指令后面 redir http://www.baidu.com #将请求临时(302)重定向至其它URL只适用于http模式,放在server指令后面redirect配置 #注意:此指令和redir功能相似,但不属于server指令后面,是独立存放在1isten,frontend,backend语句块 redirect prefix http://www.baidu.com/ #将请求临时(302)重定向至其它URL只适用于http模式frontendbackend配置实例 范例1 frontend wang-test-httpbind :80, :8080mode tcpuse_backend wang-test-http-nodesbackend wang-test-http-nodesmode tcpdefault-server inter 1000 weight 6server web1 10.0.0.17:80 weight 2 check addr 10.0.0.117 port 8080server web1 10.0.0.27:80 check范例2 #官网业务访问入口 frontend WEB_PORT_80bind 10.0.0.7 :80mode httpuse_backend web_prot_http_nodesbackend web_prot_http_nodesmodehttpoption forwardforserver 10.0.0.17 10.0.0.17:8080 check inter 3000 fall 3 rise 5server 10.0.0.27 10.0.0.27:8080 check inter 3000 fall 3 rise 5子配置文件 当业务众多时将所有配置都放在一个配置文件中会造成维护困难。可以考虑按业务分类将配置信息拆分放在不同的子配置文件中从而达到方便维护的目的。 注意:子配置文件的文件后缀必须为.cfg #创建子配置目录 [rootcentos7 ~]#mkdir /etc/haproxy/conf.d/#添加子配置目录到unit文件中 [rootcentos7 ~]#vim /lib/systemd/system/haproxy.service [Unit] DescriptionHAProxy Load Balancer Aftersyslog.target network.target[Service] #修改下面两行 ExecStartPre/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -f /etc/haproxy/conf.d/ -c -q Execstart/usr/sbin/haproxy -ws -f /etc/haproxy/haproxy.cfg -f /etc/haproxy/conf.d/ -p /var/lib/haproxy /haproxy.pid ExecReload/bin/kill -USR2 $MAINPID[Install] wantedBymulti-user.target创建子配置文件注意:必须为cfg后缀非.开头的配置文件 [rootcentos7 ~]#vim/etc/haproxy/conf.d/test.cfg listen WEB_PORT_80bind 10.0.0.7:80mode httpbalance roundrobinserver web1 10.0.0.17:80 check inter 3000 fall 2 rise 5server web2 10.0.0.27:80 check inter 3000 fall 2 rise 5[rootcentos7 ~]#systemctl daemon-reload [rootcentos7 ~]#systemctl restart haproxyHAProxy调度算法 HAProxy通过固定参数balance指明对后端服务器的调度算法该参数可以配置在listen或backend选项中。 HAProxy的调度算法分为静态和动态调度算法但是有些算法可以根据参数在静态和动态算法中相互转换。 官方帮助手册https://docs.haproxy.org/3.0/configuration.html#4.2 balance algorithm [ arguments ] balance url_param param [check_post]静态算法 静态算法:按照事先定义好的规则轮询进行调度不关心后端服务器的当前负载、连接数和响应速度等且无法实时动态修改权重(只能为0和1,不支持其它值)或者修改后不生效如果需要修改只能靠重启HAProxy生效。 动态算法 动态算法:基于后端服务器状态进行调度适当调整新请求将优先调度至当前负载较低的服务器且权重可以在haproxy运行时动态调整无需重启。 roundrobin roundrobin:基于权重的轮询动态调度算法支持权重的运行时调整不同于lvs中的rr轮训模式HAProxy中的roundrobin支持慢启动(新加的服务器会逐渐增加转发数)其每个后端backend中最多支持4095个real server支持对real server权重动态调整roundrobin为默认调度算法,此算法使用广泛。 listen web_hostbind 10.0.0.7:80, :8801-8810,10.0.0.7 :9001-9010mode httplog globalbalance roundrobinserver web1 10.0.0.17:80 weight 1 check inter 3000 fall 2 rise 5server web2 10.0.0.27:80 weight 2 check inter 3000 fall 2 rise 5leastconn leastconn加权的最少连接的动态支持权重的运行时调整和慢启动即根据当前连接最少的后端服务器而非权重进行优先调度(新客户端连接)比较适合长连接的场景使用比如: MySQL等场景。 listen web_hostbind 10.0.0.7:80,:8801-8810,10.0.0.7 : 9001-9010mode httplog globalbalance leastconnserver web1 10.0.0.17:80 weight 1 check inter 3000 fall 2 rise 5server web2 10.0.0.27:80 weight 1 check inter 3000 fall 2 rise 5random 在1.9版本开始增加random的负载平衡算法其基于随机数作为一致性hash的key随机负载平衡对于大型服务器场或经常添加或删除服务器非常有用支持weight的动态调整weight较大的主机有更大概率获取新请求 listen web_hostbind 10.0.0.7:80,:8801-8810,10.0.0.7: 9001-9010mode httplog globa1ba1ance randomserver web1 10.0.0.17:80 weight 1 check inter 3000 fall 2 rise 5server web2 10.0.0.27:80 weight 1 check inter 3000 fall 2 rise 5
http://www.w-s-a.com/news/10694/

相关文章:

  • 网站关键词设置代码seo搜索优化 指数
  • 做网站卖东西送上门做暧暧xoxo网站
  • 网站网站设计公司网站维护运营好做吗
  • 照片做成视频的软件seo两个域名一个网站有影响吗
  • 制作动画的网站河南省住房城乡建设门户网站
  • 网站推广原则做网站的那个语言好
  • 潍坊网站建设怎样商品网站建设设计思路
  • 建网站公司是如何赚钱南昌营销网站公司哪家好
  • 淘宝客网站管理质量好网站建设费用
  • 网站建设教程搭建青岛中企动力做网站怎么样
  • wordpress最底部网站优化怎么弄
  • 二手市场网站建设的目的长沙ui设计公司
  • 微信公众号做留言网站wordpress详情页选择模板
  • php网站开发面向对象教程如何做分享赚钱的网站
  • 山东网站建设最便宜常州网站建站公司
  • 网站地图 seo中国建设招标网是私人网站吗
  • 高中作文网站全网营销有哪些平台
  • 网站构建建设制作平台上海搬家公司收费价目表
  • 成功案例展示网站做网站赚多少钱
  • 建设银行网站用什么字体网站建站后维护需要做哪些
  • 有哪些做平面设计好素材网站有哪些开网站建设
  • 国际交流网站平台有哪些筑建网
  • 网站程序是如何开发的江门市住房建设管理局网站
  • 网站建设一般需要几个步骤昵图网免费素材
  • 个人网站建设需求说明书微信域名防封在线生成
  • 专业网站建设的公司wordpress后台没有模板
  • 哈尔滨网站运营服务商制作外贸网站公司
  • 个人网站需要备案宁波网站推广工具
  • 苏州建设银行网站首页wordpress修改密码
  • 网站建设员工技能要求网站制作简单协议