设计色彩的门户网站模板北京最大的网站开发公司

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

设计色彩的门户网站模板,北京最大的网站开发公司,wordpress手机上发文章,电子商务网站建设感悟简介 负载均衡 什么是负载均衡#xff1f; 负载均衡#xff0c;英文名称为Load Balance#xff0c;其含义就是指将负载#xff08;工作任务#xff09;进行平衡、分摊到多个操作单元上进行运行。 Nginx负载均衡 什么是Nginx负载均衡#xff1f; Nginx负载均衡可以大…简介 负载均衡 什么是负载均衡 负载均衡英文名称为Load Balance其含义就是指将负载工作任务进行平衡、分摊到多个操作单元上进行运行。 Nginx负载均衡 什么是Nginx负载均衡 Nginx负载均衡可以大大提升系统的吞吐率、请求性能、容灾性能。 工作原理 web服务器直接面向用户时往往要承载大量并发请求。 单台服务器难以负荷此时使用多天web服务器组成集群前端使用Nginx负载均衡将请求分散到后端web服务器集群中。 示意图 应用 主机规划 主机名称主机地址主机功能master-1192.168.131.129负载均衡主机master-2192.168.131.130web主机1master-3192.168.131.131web主机2 环境准备 安装Nginx 三台主机一同安装Nginx服务 配置yum仓库 cat /etc/yum.repos.d/nginx.repo EOF [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/\(releasever/\)basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key module_hotfixestrue[nginx-mainline] namenginx mainline repo baseurlhttp://nginx.org/packages/mainline/centos/\(releasever/\)basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key module_hotfixestrue EOF安装Nginx yum list | grep nginx yum -y install nginx nginx -v配置web主机 配置web站点 地址192.168.131.130、192.168.131.131 路径/etc/nginx/conf.d/default.conf server {listen 80;server_name wang.mingqu.com;charset utf-8;location / {root /www/wangmingqu/;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location /50x.html {root /usr/share/nginx/html;}}配置web页面 地址192.168.131.130、192.168.131.131 路径/www/wangmingqu/index.html #主机192.168.131.130、192.168.131.131 mkdir -p /www/wangmingqu/#主机192.168.131.130 echo 王茗渠测试页面主机IP192.168.131.130 /www/wangmingqu/index.html#主机192.168.131.131 echo 王茗渠测试页面主机IP192.168.131.131 /www/wangmingqu/index.html注意生成环境中两台web主机的资源内容需要保持一致此处是为了演示负载均衡分配到了两台机器上 启动web服务 systemctl stop firewalld setenforce 0 nginx -t systemctl start nginx curl -iv wang.mingqu.com简单应用 配置负载均衡 地址192.168.131.129 路径/etc/nginx/conf.d/wangmingqu.conf upstream web {server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }检查配置 nginx -t systemctl reload nginx验证负载均衡 配置参数 upstream 语法upstream name {…} 作用定义一个负载均衡主机组 适用范围http server 语法server url|host; 作用定义负载均衡主机组中的主机 适用范围upstream proxy_pass 语法proxy_pass http://name; 作用引用定义的负载均衡主机组将客户端请求转发至upstream服务池。 适用范围location 后端状态 weight 语法server url|host weight数值; 作用指定负载均衡主机组中的主机权重将客户端请求优先发送到该主机。 适用范围upstream down 语法server url|host down; 作用指定当前主机暂时不参与负载均衡。 适用范围upstream backup 语法server url|host backup; 作用指定负载均衡主机组中的某个主机为备份主机。 适用范围upstream max_fails 语法server url|host max_fails数值; 作用允许请求失败的次数 适用范围upstream fail_timeout 语法server url|host max_fails数值 fail_timeout时间s; 作用经过max_fails失败后服务暂停时间单位秒“s” 适用范围upstream max_conns 语法server url|host max_conns数值; 作用限制最大的请求连接数。 适用范围upstream 算法详解 轮询算法 简介 按时间顺序逐一分配到不同的后端服务器默认算法简称rr。 不考虑实际负载或配置平均分配客户端请求。 应用 upstream web {server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }权重算法 简介 权重算法设置的weight值越大请求访问到该机器的概率越高。又称为加权轮询简称wrr。 应用 upstream web {server 192.168.131.130 weight10;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }IP哈希算法 简介 每个请求按访问IP的hash结果分配。 这样来自同一IP的固定客户端访问同一个后端服务器。 注意不能和weight一起使用。 应用 upstream web {ip_hash;server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }URL哈希算法 简介 每个请求按访问URL的hash结果分配。 每个相同的URL定向到同一个后端服务器。 应用 upstream web {hash \(request_uri;server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }最少连接数算法 简介 最少连接数算法哪台机器的链接数少就分发到这台机器上简称lc。 应用 upstream web {least_conn;server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }加权最少连接数算法 简介 加权最少连接数算法就是weight和least_conn两个算法的集合简称wlc。 应用 upstream web {least_conn;server 192.168.131.130 weight5;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }七层负载四层负载 七层负载 七层负载均衡简介 什么是Nginx七层负载均衡 七层负载均衡是在应用层可以完成很多应用方面的协议请求。 比如http应用的负载均衡可以实现http信息的改写、头信息的改写、安全应用规则控制、URL匹配规则控制、以及转发、rewrite等等的规则。 所以在应用层的服务里面可以做的内容就更多Nginx是一个典型的七层负载均衡。 七层负载均衡应用场景 可以将请求分发到不同的服务上并且可以根据请求信息进行灵活的代理转发 由于请求会通过负载均衡服务器负载均衡服务器会过滤一些请求例如DOS攻击避免所有请求信息都打到服务器上保障了服务器的稳定运行。 处于网络分层的最上层需要对数据进行解析与客户端建立连接效率比较低。 配置web主机 配置web站点 地址192.168.131.130、192.168.131.131 路径/etc/nginx/conf.d/default.conf server {listen 80;server_name wang.mingqu.com;charset utf-8;location / {root /www/wangmingqu/;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location /50x.html {root /usr/share/nginx/html;}}配置web页面 地址192.168.131.130、192.168.131.131 路径/www/wangmingqu/index.html #主机192.168.131.130、192.168.131.131 mkdir -p /www/wangmingqu/#主机192.168.131.130 echo 王茗渠测试页面主机IP192.168.131.130 /www/wangmingqu/index.html#主机192.168.131.131 echo 王茗渠测试页面主机IP192.168.131.131 /www/wangmingqu/index.html注意生成环境中两台web主机的资源内容需要保持一致此处是为了演示负载均衡分配到了两台机器上 启动web服务 systemctl stop firewalld setenforce 0 nginx -t systemctl start nginx curl -iv wang.mingqu.com配置负载均衡 地址192.168.131.129 路径/etc/nginx/conf.d/wangmingqu.conf upstream web {server 192.168.131.130;server 192.168.131.131; }server {listen 80;server_name wang.wangmingqu.com;charset utf-8;location / {proxy_pass http://web; } }检查配置 nginx -t systemctl reload nginx验证负载均衡 四层负载 四层负载均衡简介 什么是Nginx四层负载均衡 四层负载均衡是基于传输层协议包来封装的如TCP/IP那我们前面使用到的七层是指的应用层他的组装在四层的基础之上无论四层还是七层都是指的OSI网络模型。 四层负载均衡应用场景 四层七层来做负载均衡四层可以保证七层的负载均衡的高可用性如nginx就无法保证自己的服务高可用需要依赖LVS或者keepalive。如tcp协议的负载均衡有些请求是TCP协议的mysql、ssh或者说这些请求只需要使用四层进行端口的转发就可以了所以使用四层负载均衡。 四层负载均衡总结 四层负载均衡仅能转发TCP/IP协议、UDP协议、通常用来转发端口如tcp/22、udp/53四层负载均衡可以用来解决七层负载均衡端口限制问题七层负载均衡最大使用65535个端口号四层负载均衡可以解决七层负载均衡高可用问题多台后端七层负载均衡能同时的使用四层的转发效率比七层的高得多但仅支持tcp/ip协议不支持http和https协议通常大并发场景通常会选择使用在七层负载前面增加四层负载均衡 添加四层负载模块 查看四层负载均衡模块 /usr/local/nginx/sbin/nginx -V 21 | grep stream安装四层负载均衡模块 cd /usr/local/nginx/conf/ ./configure --prefix/usr/local/nginx \ --usernginx --groupnginx \ --with-http_realip_module \ --with-http_v2_module \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-stream \ --with-stream_ssl_module \ --with-http_sub_module \ --with-http_random_index_module创建配置文件 mkdir -p /usr/local/nginx/conf/conf.stream/主配置文件 路径/usr/local/nginx/conf/nginx.conf 主机地址192.168.131.129 user nginx; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid;events {worker_connections 1024; }include /usr/local/nginx/conf/conf.stream/*.conf;http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main \)remote_addr - \(remote_user [\)time_local] \(request \)status \(body_bytes_sent \)http_referer \(http_user_agent \)http_x_forwarded_for;access_log /var/log/nginx/access.log main;sendfile on;#tcp_nopush on;keepalive_timeout 65;#gzip on;include /usr/local/nginx/conf/conf.d/*.conf; }子配置文件 路径/usr/local/nginx/conf/conf.d/stream.conf 主机地址192.168.131.129 stream {upstream web_test_01 {server 192.168.131.130:22;}upstream web_test_02 {server 192.168.131.131:22;}server {listen 8081;proxy_connect_timeout 1s;proxy_timeout 3s;proxy_pass web_test_01;}server {listen 8082;proxy_connect_timeout 1s;proxy_timeout 3s;proxy_pass web_test_02;} }验证四层负载 检查配置文件 /usr/local/nginx/sbin/nginx -t systemctl reload nginx验证四层负载 ssh -p 8081 root192.168.131.129 ssh -p 8082 root192.168.131.129