nginx如何实现负载均衡以及实现方式

什么是ngnix?

Nginx是一个http服务器。是一个使用c语言开发的高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。nginx能够支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

NGINX可以用来做什么?

1、反向代理:反向代理(ReverseProxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,简单来说就是真实的服务器不能直接被外部网络访问,想要访问必须通过代理。

2、动静分离:运用Nginx的反向代理功能分发请求:所有动态资源的请求交给应用服务器,而静态资源的请求(例如图片、视频、CSS、JavaScript文件等)则直接由Nginx返回到浏览器,这样能大大减轻应用服务器的压力

3、负载均衡:负载均衡也是 Nginx常用的一个功能,当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就会崩溃。为了避免服务器崩溃,让用户有更好的体验,我们通过负载均衡的方式来分担服务器压力。我们可以建立很多很多服务器,组成一个服务器集群,当用户访问网站时,先访问一个中间服务器,在让这个中间服务器在服务器集群中选择一个压力较小的服务器,然后将该访问请求引入该服务器。如此以来,用户的每次访问,都会保证服务器集群中的每个服务器压力趋于平衡,分担了服务器压力,避免了服务器崩溃的情况。负载均衡配置一般都需要同时配置反向代理,通过反向代理跳转到负载均衡。

常见问题

1.nginx负载均衡是如何实现的

2.nginx的upstream常见的几种方式的分发策略

解决方案

回答一:nginx负载均衡要两台或以上的应用服务器 , 并且在nginx.conf中写入相关配置,主要是对proxy_pass,upstream的使用

回答二:常见的几种负载均衡方式

1.轮询(默认)——每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

2.weight ——指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

3. ip_hash ——每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器。

4.backup——其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。

5.down——表示单前的server暂时不参与负载

6.fair(第三方)按后端服务器的响应时间来分配请求,响应时间短的优先分配。与weight分配策略类似。

编码实战

nginx和tomcat的区别是什么?

  虽然Tomcat也可以认为是HTTP服务器,内部集成了http服务器的相关功能,但通常它仍然会和Nginx配合在一起使用。nginx常用做静态内容服务和反向代理服务器,以及页面前端高并发服务器。严格的来说,Nginx 应该叫做「HTTP Server」;而 Tomcat 则是一个「Application Server」,或者更准确的来说,是一个「Servlet/JSP」应用的容器(Ruby/Python 等其他语言开发的应用也无法直接运行在 Tomcat 上),这种特性导致了它们在使用中有明确的分工职责。tomcat更多用来做做一个应用容器,让java web app跑在里面的东西。大部分适用于静态资源文件的访问(图片,文件)

原文地址:https://www.cnblogs.com/starluke/p/11723074.html

时间: 2024-11-13 06:35:22

nginx如何实现负载均衡以及实现方式的相关文章

【转】nginx 负载均衡 5种方式

nginx 负载均衡 5种方式 原文链接 http://my.oschina.net/u/217063/blog/68842 1.轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除. 2.weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况.  例如:  upstream bakend {  server 192.168.0.14 weight=10;  server 192.168.0.15 weight=10; 

转】Nginx系列(五)--nginx+tomcat实现负载均衡

原博文出于:  http://blog.csdn.net/liutengteng130/article/details/47129909   感谢! Nginx占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页伺服器中表现较好.目前中国大陆使用Nginx网站用户有:新浪,网易,腾讯,淘宝等. 以淘宝为例,进入淘宝主页,按F12.选择"NetWork" 本文主要是基于Nginx搭建tomcat集群. 环境: Win8.1,JDK 1.6 , Nginx1.9.3 Tom

如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器

Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动发现.它可以让我们更加专注于应用的开发,而不是基础架构.Weave 提供了一个如此棒的环境,仿佛它的所有容器都属于同个网络,不需要端口/映射/连接等的配置.容器中的应用提供的服务在 weave 网络中可以轻易地被外部世界访问,不论你的容器运行在哪里.在这个教程里我们将会使用 weave 快速并且简单

Nginx的TCP负载均衡介绍

Nginx Plus的商业授权版开始具有TCP负载均衡的功能.从Nginx 1.7.7版本开始加入的,现在变成了一个商业收费版本,想要试用,需要在官网申请.也就是说,Nginx除了以前常用的HTTP负载均衡外,Nginx增加基于TCP协议实现的负载均衡方法.HTTP负载均衡,也就是我们通常所有"七层负载均衡",工作在第七层"应用层".而TCP负载均衡,就是我们通常所说的"四层负载均衡",工作在"网络层"和"传输层&q

windows使用nginx+memcached实现负载均衡和session或者缓存共享

windows使用nginx+memcached实现负载均衡和session或者缓存共享 两台服务器 服务器1:115.29.186.215 windows2008 64位操作系统 服务器2:114.215.193.64 windows2008 32位操作系统 其中服务器1同时做nginx负载均衡服务器 使用概要:由于两台服务器:所以数据库连接可以使用一台服务器: 由于本人使用的ibatis框架:所以在数据库层使用ibatis Cache 这样就可以使用一台sql服务器:两台服务器访问都是缓存数

Nginx+Tomcat服务器负载均衡实践方案

1.    为何选择Nginx+Tomcat做负载均衡? 1.1. Nginx是什么? Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户

Nginx+Tomcat7+Memcached负载均衡集群+session共享

Nginx+Tomcat7+Memcached负载均衡集群服务搭建 操作系统:CentOS6.5     本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat7+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat7负责实际服务,Memcached负责同步Tomcat7的Session,达到Session共享的目的.1.安装NginxNginx官网:http://nginx.org/下载最新稳定版本.在安装Nginx之前,需要先安装gcc. openssl

总结)Nginx/LVS/HAProxy负载均衡软件的优缺点详解

总结)Nginx/LVS/HAProxy负载均衡软件的优缺点详解 PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术.具体的应用需求还得具体分析,如果是中小型的Web应用,比如日PV小于1000万,用Nginx就完全可以了:如果机器不少,可以用DNS轮询,LVS所耗费的机器还是比较多的:大型网站或重要的服务,且服务器比较多时

Nginx+Tomcat7+Mencached负载均衡集群部署笔记

Nginx+Tomcat+Memcached负载均衡集群服务搭建 操作系统:CentOS6.5 本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat负责实际服务,Memcached负责同步Tomcat的Session,达到Session共享的目的. 本文文档下载地址:http://download.csdn.net/detail/zht666/7744157 1.安装Nginx Nginx官网:http