Nginx安装好之后。開始使用它来简单实现反向代理与负载均衡的功能。在这之前。首先得脑补一下什么是反向代理和负载均衡。

  反向代理:是指以代理server来接收Internet上的请求,然后将请求转发到内部网络的server上,并将结果返回给Internet上连接的client。此时的代理server对外就表现为反向代理server。

   通俗来讲,反向代理server就好比我们常说的中介。Internetclient能够看作是租房的客户,而内部网络的server好比是房东。租户通过中介与房东沟通,最后租到房子。

                

    负载均衡。分摊到多个操作单元上进行运行。从而实现多个操作单元来共同完毕任务,经常使用来平衡集群中各server的负载压力。本次实例主要是在反向代理的基础上实现简单的负载均衡。

   实例:

     1、准备工作

        Nginxserver、多个应用server(本实例使用tomcat)

     2、文件改动

        改动本地文件hosts文件(在本机C:\Window\system32\drivers\etc)

           

        改动nginx安装文件夹下的配置文件nginx.conf(本路径为/usr/local/nginx/nginx.conf)。添加Server节点,例如以下:   

upstream tomcats{
server 192.168.91.129:8080 ;
server 192.168.91.129:8081;
} server {
listen 80;
server_name tomcat.vb2c.com; location /{
proxy_pass http://tomcats;
index index.html index.htm;
}
}

        分别启动tomcat(本次使用两个tomcat)、nginxserver

     3、測试

       在本地输入:tomcat.vb2c.com地址,没刷新一次訪问不同的tomcatserver,例如以下:

       

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3BiOTI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

 

      在此基础上实现负载均衡。事实上就是为Serverport加上weight权重。权重越大。訪问的概率越大,例如以下:     

 upstream tomcats{
server 192.168.91.129:8080 weight=2;
server 192.168.91.129:8081;
} server {
listen 80;
server_name tomcat.vb2c.com; location /{
proxy_pass http://tomcats;
index index.html index.htm;
}
}

      訪问时,8080的响应次数大于8081

    我们从外部进行訪问时。实际訪问的是Nginxserver,可是Nginxserver将我们的请求转发给内部的tomcatserver,从外相来看,我们訪问的是Nginx,实际上是tomcat。

此时的Nginxserver就作了反向代理的功能,这种长处就是,众多用户同一时候訪问一台server,通过反向代理,能够实现将请求转向多台内部server,既能加快处理的速度。又能减轻server的压力。

    至此,简单的反向代理与负载均和实例就完毕了。看似非常easy的功能。可是对于Linux菜鸟来说在操作时会遇到各种问题。比方改动配置文件。怎样使用命令来操作等。当然等熟练之后也就得心应手了,并且如今有好多专门的工具进行文件的改动。

版权声明:本文为博主原创文章,未经博主同意不得转载。

  • 本文已收录于下面专栏:

Nginx简单实现反向代理和负载均衡

Nginx安装好之后,開始使用它来简单实现反向代理与负载均衡的功能。在这之前,首先得脑补一下什么是反向代理和负载均衡。
  反向代理:是指以代理server来接收Internet上的请求,然后将请求转发到...
  • u013036278
  • 2017年02月05日 20:10
  • 2170

Nginx反向代理和负载均衡

1.反向代理概念(1).正向代理的概念
正向代理,也就是传说中的代理,他的工作原理就像一个跳板。简单的说。我是一个用户。我訪问不了某站点,可是我能訪问一个代理server,这个代理server呢,...
  • qq_21267705
  • 2016年06月27日 22:06
  • 2902

负载均衡 反向代理 nginx

1. 先看下概念性东西(欲完负载均衡  必看其文)

让代理server将请求 均匀转发给多台内部Webserver之中的一个上,从而达到负载均衡的目的。这样的代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理...

  • yilukuangpao
  • 2016年07月12日 13:06
  • 2399

Nginx简单实现反向代理和负载均衡

Nginx安装好之后,開始使用它来简单实现反向代理与负载均衡的功能。在这之前。首先得脑补一下什么是反向代理和负载均衡。

反向代理:是指以代理server来接收Internet上的请求,然后将请求转发到...

  • ahjxhy2010
  • 2017年04月17日 11:44
  • 128

Nginx简单实现反向代理和负载均衡

Nginx安装好之后。開始使用它来简单实现反向代理与负载均衡的功能。在这之前,首先得脑补一下什么是反向代理和负载均衡。
  反向代理:是指以代理server来接收Internet上的请求。然后将请求转发到...
  • qq_34341290
  • 2017年04月17日 11:04
  • 195

学习Nginx反向代理实现简单负载均衡

学习Nginx反向代理实现简单负载均衡
  • zhangming1013
  • 2015年03月03日 21:59
  • 824

使用Nginx反向代理来实现简单的负载均衡

Nginx反向代理的原理长处:
反向代理能够简单的理解为:代理server来接收internet上的server请求,然后将请求转发给内部的server上,然后将结果返回给internet上请求的client,所以代理服务...
  • RuanJava
  • 2013年02月28日 14:21
  • 601

使用nginx简单实现反向代理和负载均衡

nginx 这个轻量级、高性能的 web server 主要能够干两件事情:

  〉直接作为http server(取代apache,对PHP须要FastCGI处理器支持);
  〉另外一个功...

  • xingyunLOST
  • 2015年10月23日 11:47
  • 302

Maven项目热部署、nginx反向代理负载均衡

  • 2017年11月05日 09:28
  • 416KB
  • 下载

nginx的反向代理和负载均衡的安装手冊

  • 2017年09月07日 10:41
  • 313KB
  • 下载

反向代理:是指以代理server来接收Internet上的请求,然后将请求转发到内部网络的server上,并将结果返回给Internet上连接的client,此时的代理server对外就表现为反向代理server。的更多相关文章

  1. 远程首次连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析(转)

    PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...

  2. 远程连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析

    PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...

  3. 设计网页录入信息与自己定义server数据接收

    需求:设计一个注冊网页用于录入username和登录password.并将数据传入server并显示出来. 1.前言:网页提交的 get 和 post 两种方式. (1)对于get提交方式,以本文中样 ...

  4. MySQL安装教程及Navicat连接MySQL报错:1251-Client does not support authentication protocol requested by server

    MySQL安装可参考: MySql 8.0.18安装 此参考文章后面涉及到的密码修改,对本标题碰到的错误同样适用. 本文先讲如何安装,在讲碰到的1251问题.要直接看解决方案的朋友可以直接通过目录链接 ...

  5. 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理

    服务器文档下载zip格式   刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...

  6. ruby使用DBI连接MySQL数据库发生异常:in `error': Can't connect to MySQL server on 'localhost' (10061) (DBI::DatabaseError)

    Ruby使用DBI连接MySQL数据库一般为: require "dbi" dbh = DBI.connect("dbi:Mysql:test:localhost&quo ...

  7. Window Server IIS6.0部署webservice请求调用提示请求失败

    在一台window server 2003机器上部署了一个webservice,iis为6.0,奇怪的是.在服务器本机调用webservice成功了,可是在其它client调用却反馈失败.详细什么原因 ...

  8. mac下安装mysql 连接时候报错 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    http://segmentfault.com/q/1010000000094608 同样的问题,先在网上搜了下其他人解决这个问题的方法,是去修改mysql.cnf文件添加mysql.sock文件路径 ...

  9. 使用SSH代理上IPV6(使用SSH端口转发)

    这几个月在国外待着,一直担心我的六维账户怎么办,那可是个宝贝啊.我看网上说可以用六飞啊神马的在IPV6下上IPV6的网站,但是冒失现在六维封禁了非学校的IPV6地址,所以这些软件就不顶用了. 想到以前 ...

随机推荐

  1. CCNP路由实验之十五 NAT(网络地址转换)

     CCNP路由实验之十五 NAT(网络地址转换) 众所周知,要让自己的电脑连上Internet,必须要到运营商(ISP)申请一个上网账号,依据此账号申请自己的宽频业务(拨号上网.商业固定IP等等) ...

  2. Android 关于expandableListView childrenView 点击改变颜色

    1.点击后改变颜色并保持颜色改变状态: <?xml version="1.0" encoding="utf-8"?> <selector xm ...

  3. 前6名免费DNS服务 - 公共DNS服务

    前6名免费DNS服务 - 公共DNS服务 谷歌 8.8.8.8,8.8.4.4备份,用户将期望并获得高可用性,如DNSSEC等过滤和安全保护. OpenDNS 现在是Cisco帝国的一部分,主要是20 ...

  4. Zabbix监控,Mysql,Nginx,PHP-FTPM

    一 Zabbix监控Mysql 监控Mysql,Zabbix提供了一个监控模板,所有可以直接使用.或者使用Percona提供的监控模板. 1. 使用自带监控模板 1.1.1 编写监控模板 #!/bin ...

  5. jQuery返回值:jQuery对象

    $(function(){ //返回值 alert($); //jQuery //以下返回的全是jQuery对象 alert($()); alert($('#box')); alert($('#box ...

  6. POJ 1082 Calendar Game

    Adam and Eve enter this year's ACM International Collegiate Programming Contest. Last night, they pl ...

  7. HDU 4631 Sad Love Story 平面内最近点对

    http://acm.hdu.edu.cn/showproblem.php?pid=4631 题意: 在平面内依次加点,求每次加点后最近点对距离平方的和 因为是找平面最近点对...所以加点以后这个最短 ...

  8. 解决vmware 和hyper-v不能共存的问题

    只需在 Windows 中以管理员身份运行命令提示符 cmd 1.运行 bcdedit /copy {current} /d "Windows 8 (关闭 Hyper-V)"命令, ...

  9. 阅读笔记——Servlet

    什么是Servlet Servlet是用java编写的运行在web服务器中的程序,因此它可以调用服务器端的类,它也可以被调用,它本身就是一个类. Servlet的工作原理 servlet由web服务器 ...

  10. Keil 编译环境之在线仿真调试问题

    一.问题现象: 这几天刚开始上手STM32,使用Keil 环境进行编程,然后使用ULINK2进行在线仿真,在按键处理函数程序中设置断点,却发现按了按键程序没有停在设置的断点,程序正常运行,如下图所示, ...