问答1 问答5 问答50 问答500 问答1000
网友互助专业问答平台

web nginx 负载均衡的项目怎么处理

提问网友 发布时间:2022-02-26 21:28
web nginx 负载均衡的项目是要复制到每台子服务器上吗?像我的web项目用laravel框架写的,那应该怎么做负载均衡呢,求个相对详细点的就教程
声明:本网页内容为用户发布,旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:1656858193@qq.com
1个回答
热心网友 回答时间:2022-02-26 22:57

nginx和haproxy一样也可以做前端请求分发实现负载均衡效果,比如一个tomcat服务如果并发过高会导致处理很慢,新来的请求就会排队,到一定程度时请求就可能会返回错误或者拒绝服务,所以通过负载均衡使用多个后端服务器处理请求,是比较有效的提升性能的方法;另外当单机性能优化到一定瓶颈之后,一般也会用负载均衡做集群,配置也很简单,下面是配置过程:

首先需要安装nginx服务器,我这里已经安装好了,比如这里有三个tomcat服务器,地址如下:

192.168.1.23 8080

192.168.1.24 8080

192.168.1.25 8080

其中nginx安装在192.168.1.23上面,如果只有一个服务器测试,也可以在一个服务器上运行多个tomcat开多个端口来实现,这样也能提升性能

首先看nginx配置,在nginx.conf中http {}块内并且server {}块之外添加如下配置:

upstream  my_service {
server    127.0.0.1:8080  weight=2;
server    192.168.1.24:8080  weight=1;
server    192.168.1.25:8080  weight=1;
}

上面的my_service是集群的名字,可以自己命名,server指定后端服务列表,weight是设置权重,权重越大,请求被分发过来的可能性就越大,这里本机权重设置了2,也就是说对到达的请求分配到本地上的会多一些

配置这个之后,需要在server {}中添加location配置拦截请求并转发给后端的集群,最简单的配置如下:

location / {
proxy_pass http://my_service;    proxy_redirect default;
}

这样配置之后保存并重新载入,然后对于所有的请求都会转发到这个集群指定的机器处理了,当然也可以设置拦截具体的请求比如.do或者.action都可以根据需要设置;另外location里面也可以设置更多的配置项,比如客户端body大小,buffer大小,超时时间等,配置参考如下:

location / {
proxy_pass http://my_service;    proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}  

上面的配置可以参考,根据具体业务需要配置即可,nginx负载均衡的配置基本上就是上面这些

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

相关推荐
  • nginx负载均衡配置

    nginx负载均衡配置

    nginx的负载均衡配置方法先在nginx配置文件中,增加一个upstream name {......} 负载均衡器的名字,然后在upstream字段中写入后端服务器的地址就可以了。
    查看详情
  • nginx的负载均衡怎么配置

    nginx的负载均衡怎么配置

    1、下面的架构就是我们今天的演示结构,后端有两台服务器,分别是node1和node2、前端是一台web服务器,然后在web服务器上做负载均衡,将前端的访问流量导到后端的两个节点服务器上。三个服务器的IP地址分别是:web:192.168.1.210node1:192.168.1.211node2:192.168.1.212
    查看详情
如何在unubtu中配置nginx给另外2台机器做负载均衡? nginx反向代理和nginx负载均衡的区别 请描述Nginx配置七层负载均衡的方式及其关键字? 如何在一台pc上做nginx负载均衡 怎么查找快手官方帐号 nginx tomcat 负载均衡怎么配置https nginx负载均衡配置必须要有服务器吗 想用nginx做负载均衡,server配置的ip必须是局域网同一网段的吗? 快手怎么看到前两天浏览记录啊 nginx 负载均衡 负责转发的那台服务器 配置是否要求比较高 如何配置nginx四层负载均衡 nginx 做负载均衡需要什么配置 linux 分区分配....新手求解 300G硬盘怎么分区 求详解 交换区 boot 电脑上要如何设置微信多开? Linux分区/+/boot+swap和/+/boot的区别,哪种好点。用虚拟机和本机装Linux应选择哪个方案 微信多开电脑如何设置 linux系统应该用什么分区表 ubuntu13.10 500GB 硬盘最佳分区方案 如何进行Linux分区优化 linux怎么分区比较合理 苹果怎么开震动 如何查看nginx负载均衡访问情况 iphone震动在哪里设置 苹果微信震动怎么开 苹果home键在哪里设置震动怎么关闭? 如何 解析 nginx 配置文件 nginx 文件配置 如何设置域名 nginx配置文件路径 nginx配置文件#号是什么意思 关于nginx根目录配置 nginx配置文件中有多个server 如何把手机上的微信聊天记录导出 阿里云主机的nginx配置文件在哪 手机怎么导出微信聊天记录 如何查看nginx 启动的配置文件 怎么从手机内存把微信聊天记录导出恢复 nginx 查看调用了哪些配置文件 如何验证Nginx配置文件是否准确 nginx配置文件在哪 如何用命令编辑nginx的配置文件
Top