nginx负载均衡(一)

背景:

最近公司分配一个项目,做一个直播APP的后台,像这种随时都有用户在线的情况,后台一定不能down掉,而且只做一台服务器的话压力肯定很大,所以考虑用nginx做负载均衡

环境:

三台linux服务器,一台反向代理服务器,两台负载均衡服务器

反向代理服务器   10.10.10.30    80

负载均衡服务器   10.10.10.40    80

10.10.10.50    80

首先编译安装nginx,安装编译环境:

yum install gcc-c++

yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel

yum -y install openssl openssl—devel

安装编译环境可能遇到的问题:

要是这样编译的时候还是找不到openssl库,就需要下载openssl源文件,解压后,将路径指定到解压的路径

./configure --prefix=/usr/local/nginx --with-http_ssl_module--with-openssl=/usr/local/src/openssl-xxxx --with-pcre--with-http_stub_status_module

接下来编译安装nginx

tar zxvf nginx-1.8.0.tar.gz

cd nginx-1.8.0

./configure

make

make install

配置完成后测试是否正常

/usr/local/nginx/sbin/nginx -t

接着启动nginx

/usr/local/nginx/sbin/nginx

若修改后配置文件或者将配置文件覆盖修改的 ,需要执行:

/usr/local/nginx/sbin/nginx -s reload

nginx主目录:/usr/local/nginx

nginx主页目录:/usr/local/nginx/html

nginx主配置文件目录:/usr/local/nginx/conf

启动成功之后,浏览器输入http://10.10.10.30/   可进入测试页面

负载均衡服务器配置:

 1 upstream mynginx {
 2
 3          server 10.10.10.40:80 weight=10;
 4          server 10.10.10.50:80 weight=10;
 5
 6     }
 7
 8     server {
 9         listen       80;
10         server_name  www.asen0713.com;
11
12         #charset koi8-r;
13
14         #access_log  logs/host.access.log  main;
15
16         location / {
17             root   html;
18             proxy_pass http://mynginx;
19         }
20
21         #error_page  404              /404.html;
22
23         # redirect server error pages to the static page /50x.html
24         #
25         error_page   500 502 503 504  /50x.html;
26         location = /50x.html {
27             root   html;
28         }
29
30         # proxy the PHP scripts to Apache listening on 127.0.0.1:80
31         #
32         #location ~ \.php$ {
33         #    proxy_pass   http://127.0.0.1;
34         #}
35
36         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
37         #
38         #location ~ \.php$ {
39         #    root           html;
40         #    fastcgi_pass   127.0.0.1:9000;
41         #    fastcgi_index  index.php;
42         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
43         #    include        fastcgi_params;
44         #}
45
46         # deny access to .htaccess files, if Apache‘s document root
47         # concurs with nginx‘s one
48         #
49         #location ~ /\.ht {
50         #    deny  all;
51         #}
52     }

配置好了之后重新加载配置文件:/usr/local/nginx/sbin/nginx -s reload,或者重启nginx负载均衡服务器,输入www.asen0713.com可看到负载均衡效果

注意事项:

1、修改C:\Windows\System32\drivers\etc下的hosts文件加入       10.10.10.30    www.asen0713.com    一行

2、火狐和IE需要按ctrl+F5强制刷新才能看到效果,而谷歌浏览器刚好相反

这样负载均衡就已经配置完了,如果10.10.10.40    80        10.10.10.50    80其中一台down掉,负载均衡服务器会自动分配到另外一台,服务正常访问

遗留问题:

1、如果负载均衡服务器down掉,将无法访问

2、配置负载均衡服务器,session也会随之分配到对应服务器,这样session将不能共享,获取资源出现问题

3、文件上传下载也会被分配到不同服务器

时间: 2024-10-11 22:44:27

nginx负载均衡(一)的相关文章

nginx负载均衡+keepalive心跳检测

环境标准: 一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一 内核:2.6.32-642.el6.x86_64 系统:CentOS release 6.8 (Final) ip: web01:10.0.0.8 nginx 解析手机端 均做了nginx的负载均衡但是只均衡一台机器可以后续往里填 web02:10.0.0.200 nginx 解析电脑端 均做了nginx的负载均衡但是只均衡一台机器可以后续往里填 lb01

12.17 Nginx负载均衡;12.18 ssl原理;12.19 生产ssl密钥对;12.20 Nginx配置ssl

扩展: 针对请求的uri来代理 http://ask.apelearn.com/question/1049 根据访问的目录来区分后端web http://ask.apelearn.com/question/920 12.17 Nginx负载均衡 1. 安装dig命令: [[email protected] ~]# yum install -y bind-utils 2. 用dig获取qq.com的ip地址: [[email protected] ~]# dig qq.com 3. 创建ld.co

Linux CentOS搭建JDK+Mysql+Tomcat+Nginx负载均衡环境      

本文使用了Tomcat+Nginx环境,主要起到负载均衡的作用,使用Tomcat处理jsp后台程序,使用Nginx处理静态页面. 准备工作(下载软件版本,请自行百度下载) 安装包放至:/usr/local/src 安装地址:/usr/local/软件名 1.apache-tomcat-6.0.48 2.mysql-5.5.54 3.nginx-1.6.3 4.cmake-2.8.8 5.pcre-8.40 6.jdk-8u11-linux-x64 7.openssl-1.1.0d(https使用

nginx负载均衡

nginx负载均衡 Nginx负载均衡的理解 Nginx是一个轻量级的.高性能的WebServer,他主要可以干下面两件事: 作为http服务器(和apache的效果一样) 作为反向代理服务器实现负载均衡 现在Nginx到处都可以见到,经常会看到宕机后的网页会显示nginx的字样,这也说明Nginx由于高性能.使用配置简.开源单这些特点被越来越多的用户所接受,所使用. 其中第一种作为http服务器,结合php-fpm进程,对发来的请求进行处理,nginx本身并不会解析php,他只是作为一个服务器

lvs、haproxy、nginx 负载均衡的比较分析

lvs.haproxy.nginx 负载均衡的比较分析 对软件实现负载均衡的几个软件,小D详细看了一下,从性能和稳定上还是LVS最牛,基本达到了F5硬件设备的60%性能,其他几个10%都有点困难. 不过就因为LVS忒牛了,配置也最麻烦了,而且健康检测需要另外配置Ldirector,其他HAPROXY和NGINX自己就用,而且配置超级简单. 所以小D建议,如果网站访问量不是门户级别的用HAPROXY或者NGINX就OK了,到了门户级别在用LVS+Idirector吧 哈哈 lvs和nginx都可以

Nginx 负载均衡

原文地址:http://nginx.com/resources/admin-guide/load-balancer/ Nginx Load Balancing nginx 负载均衡 This section describes how to use NGINX and NGINX Plus as a load balancer. 本章将讨论如何使用Nginx和Nginx加做负载均衡器. In This Section 本章包括 Load balancing overview 负载均衡概览 Pro

day10 nfs服务,nginx负载均衡,定时任务

=====================nginx 负载均衡======================= 实现nginx负载均衡的效果,并运用nfs服务共享目录,使所有nginx服务拥有共同的http目录 nginx安装:http://www.cnblogs.com/alwaysInMe/p/6924859.html nfs安装:NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定. ===>  环境配置及软件安装 注:本次安装用的是cent

nginx 负载均衡策略

nginx 负载均衡策略 1. 轮询 轮询方式是nginx负载均衡的默认策略,根据每个server的权重值来轮流发送请求,例如: upstream backend {server backend1.example.com;server backend2.example.com;} 这种情况是每个server都使用相同的权重,默认值为1 可以手动设定权重,例如 upstream backend {server backend1.example.com weight=5;server backend

搭建Nginx负载均衡服务文档一

搭建负载均衡服务的实际需求: 1.把单台服务器无法承受的大规模并发访问或数据流量分担到多台节点设备上,分别进行处理,减少用户等待响应的时间,提升用户体验. 2.单个重负载的运算分担到多台节点设备上做并行处理,每个节点处理结束后,将结果汇总,返回给用户. 3.7*24小时的服务保证,任意一个或多个有限后面节点设备宕机,不能影响业务. 实现Nginx负载均衡需要两个组件: l  Ngx_http_proxy_module,用于把请求后抛给服务器节点或upstream服务器池: l  Ngx_http

nginx负载均衡和tomcat热部署简单了解

简单说下几个名词 nginx 它是一个反向代理,实际上就是一台负责转发的代理服务器,貌似充当了真正服务器的功能,但实际上并不是,代理服务器只是充当了转发的作用,并且从真正的服务器那里取得返回的数据,这个就是nginx的工作内容 tomcat 开源的web服务器 oracle 数据库 redis 缓存系统 nginx负载均衡简介 如图1展示,客户端发起请求,通过nginx代理后,根据权重将请求平均转发到服务器 热部署简介 一般我们只有1个tomcat的时候,如果需要代码包,就需要把tomcat关闭