php nginx实现负载均衡,使用Nginx简单实现负载均衡

只是简单使用Nginx而已,知道能这么用,但是在实际项目中并没有实践过,在项目不大的时候用不到,但是对于理解负载均衡来说还是可以的。

利用虚拟机安装了三个CentOS系统,然后顺便装了环境。

这里顺便说一下,不需要转三次系统,装一个系统,配置环境完成之后,另外两个可以使用虚拟机的克隆功能直接克隆即可,配置是完全相同的。

首先是服务器配置及当前IP地址,注意一点,为了测试方便,我把所有的防火墙都直接关闭了,但是实际中限制端口号,而不要直接关闭

服务器A:IP:192.168.0.134

服务器B:IP:192.168.0.132

服务器C:IP:192.168.0.133

主人本机使用的是Windows系统,其他系统自己看着办,改一下本地的host,这样浏览器输入这个域名就能解析到固定你输入的IP了

在C:\Windows\System32\drivers\etc目录下,修改host文件

需要注意的是,host在当前目录下面用户是没有修改权限的,所以你需要先复制出来到桌面,然后用记事本打开修改,然后复制回去替换。

在文件末尾加上192.168.0.134 xx.com

然后在cmd模式下ping xx.com 看是否能ping通,如果可以证明域名没有问题了。

正在 Ping xx.com [192.168.0.134] 具有 32 字节的数据:

来自 192.168.0.134 的回复: 字节=32 时间=1ms TTL=64

来自 192.168.0.134 的回复: 字节=32 时间<1ms TTL=64

来自 192.168.0.134 的回复: 字节=32 时间<1ms TTL=64

来自 192.168.0.134 的回复: 字节=32 时间<1ms TTL=64

这个域名也只能在你本地起作用,实验就简单点好了。

下载nginx

http://nginx.org/en/download.html

选择了稳定版本

然后解压到A服务器的你喜欢的目录下面

首先是在A服务器上配置nginx,软件的安装我都不介绍了,在最后给出安装说明的地址,然后根据步骤一步步来就好了。

修改nginx配置中的

在server中修改以下位置

location / {

proxy_pass        http://xx.com;

proxy_set_header  Host            $host;

proxy_set_header  X-Real-IP        $remote_addr;

proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;

}

在http中加入

#--------------------------------------------------------

upstream xx.com {

server  192.168.0.132:8080;

server  192.168.0.133:8080;

server  127.0.0.1:8080;

}

#--------------------------------------------------------

我在A服务器上装了tomcat。默认端口是8080。

其他两台就不装了,简单的配置了一个默认的页面

在其他两台服务器上面nginx配置

server{

listen 8080;

server_name xx.com;

index index.html;

root /root;

}

server {

listen      80;

server_name  xx.com;

修改了这两个配置之后,三台服务器全部重新启动nginx

然后在浏览器中输入xx.com

然后刷新页面,就会出现三台服务器不同的页面了。

也就是说,当我们的项目的域名被访问的时候会根据实际情况负载均衡至3台服务器。

我觉得实际项目中,A服务器还是不要作为项目服务器的一部分,不用tomcat部署项目,

为什么呢,虽然这样服务器有点浪费,但是,如果部署了项目的话,这样A服务器就有可能出现宕机,导致BC服务器均不能被访问。

如果没有部署服务的话,那么即使B或C任意一台服务器宕机,A服务器会自动均衡到另一台服务器上面。

但是一些静态资源的获取可以放在A上面,这样可以减轻后面服务器的压力,同时提高A的利用率。

下面给出安装软件的步骤,很多网站上都写的很好。我就不多说了。

--------------------------------------分割线 --------------------------------------

--------------------------------------分割线 --------------------------------------

Nginx 的详细介绍:请点这里

Nginx 的下载地址:请点这里

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值