使用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的利用率。
下面给出安装软件的步骤,很多网站上都写的很好。我就不多说了。
负载均衡大致流程转载自:http://www.php100.com/html/program/nginx/2013/0905/5525.html
nginx配置文件详解转载自:http://blog.csdn.net/shimiso/article/details/8690897
nginx安装流程转载自:http://www.cnblogs.com/skynet/p/4146083.html(其实前面的3个不装在测试项目中也是可以运行nginx的,可能是我之前装过一些软件的原因)
使用nginx简单实现负载均衡的更多相关文章
- Nginx 简单的负载均衡配置示例(转载)
原文地址:Nginx 简单的负载均衡配置示例(转载) 作者:水中游于 www.s135.com 和 blog.s135.com 域名均指向 Nginx 所在的服务器IP. 用户访问http://www ...
- Nginx 简单的负载均衡配置示例
http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html 在此记录下Nginx服务器nginx.conf的配置文件说明, ...
- Nginx 简单的负载均衡配置演示样例
近期在做开放查询应用的时候,因为数据两天特别多,两千多万条呢,用户訪问需求也比較大,所以就用nginx做了 负载均衡,以下是改动之后的相关内容. http://www.cnblogs.com/xiao ...
- tomcat+nginx简单实现负载均衡
1.环境准备 在前面的博客中我已经安装好nginx和一台tomcat了.现在就在加一台tomcat tomcat1: /apps/tomcat/tomcat1/apache-tomcat-7.0.6 ...
- Nginx简单的负载均衡(一)
Nginx是一个高性能的http和反向代理服务器,官方测试nginx能够支支撑5万并发链接,并且cpu.内存等资源消耗却非常低,运行非常稳定. 1.应用场景 1.http服务器.Nginx是一个htt ...
- Nginx简单的负载均衡入门
nginx是用来管理tomcat的,只管理tomcat,并没有管理具体tomcat里面的项目,这里实现了简单的nginx管理两个tomcat的配置,注意upstream节点应该配置到service节点 ...
- Docker+nginx+tomcat7配置简单的负载均衡
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng/p/4995513.html 本文介绍在Docker上配置简单的负载均衡,宿主机为Ubuntu 14.04.2 ...
- Windows下nginx+tomcat实现简单的负载均衡
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...
- nginx Win下实现简单的负载均衡(2)站点共享Session
快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...
随机推荐
- ural 1353. Milliard Vasya's Function(dp)
1353. Milliard Vasya's Function Time limit: 1.0 second Memory limit: 64 MB Vasya is the beginning ma ...
- 模拟IIC协议时序
IIC是飞利浦公司开发的两线式串行总线,主要应用在单片机和外围电子器件之间的数据通讯. IIC总线优点是节约总线数,稳定,快速,是目前芯片制造上非常流行的一种总线,大多数单片机已经片内集成了IIC总线 ...
- HDU - 1045 Fire Net(搜索)
Description Suppose that we have a square city with straight streets. A map of a city is a square bo ...
- linex下部署发布web项目
准备工作:通过Xmanager远程连接linux系统,下载对应的jdk和tomcat. 1.通过Xmanager远程连接linux系统,下载地址请自己网上搜索吧. 2.下载jdk (这里为jdk-7u ...
- 框架基础:ajax设计方案(二)---集成轮询技术
上一篇文章介绍了ajax技术核心方法,和跨域的问题(只要后台支持跨域默认post就可以),这篇文章讲解一下使用ajax实现的轮询技术,至于iframe,SSE服务器单向推送,以及webSocket ...
- 《Windows驱动开发技术详解》之分层驱动程序
分层驱动程序概念 分层的目的是将功能复杂的驱动程序分解成多个简单的驱动程序.一般来说,他们是指两个或两个 以上的驱动程序,它们分别创建设备对象,并且形成一个由高到低的设备对象栈.IRP请求一般会被传送 ...
- DOM操作-遍历HTML文档内容
基础: JS nodeType返回类型:http://blog.csdn.net/qyf_5445/article/details/9232907 代码: <!DOCTYPE html> ...
- json 数组 对象 xml 之间转换(待补充)
json 数组 xml 对象 之间转换(待补充) 1 把对象的类型或者数组转换成字符串类型(或者更确切的说是json类型的). 此处参考链接http://www.jb51.net/article ...
- 16.按要求编写Java应用程序。 编写一个名为Test的主类,类中只有一个主方法; 在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1, 3,5,…,99}输出这个数组中的所有元素,每输出十个换一行;在主方法中定义一 个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是‘*’,其余 位置存的是‘#’;输出这个数组中的所有元素。
//分类 package com.bao; public class Shuchu { int[]yi=new int[50]; String[][]er=new String[10][10]; vo ...
- spring security 3中的10个典型用法小结
spring security 3比较庞大,但功能很强,下面小结下spring security 3中值得 注意的10个典型用法 1)多个authentication-provide可以同时使用 &l ...