关闭

Linux学习总结(16)——CentOS 下 Nginx + Tomcat 配置负载均衡

1585人阅读 评论(0) 收藏 举报
分类:

最近在读埃隆·马斯克传记,他说「我认为现在有非常多的聪明人都在致力于互联网」。

仔细一想,好像真的是这样的。

我问了自己一个问题:如果你不敲代码了,你能做什么?

答案令人极其恐怖。吓得我赶紧又去写了一句 system.out.print("Hello World");

为什么要做负载均衡?

当你网站是一个企业站、个人博客的时候,或者访问量比较小的时候,一台服务器完全应付的了,那就完全没必要做负载均衡。但是,如果你的网站是平台级别,用户至少百万级别了,一台服务器明显撑不住了,那就要考虑多台服务器,这个时候每个服务器分配多少用户,负载均衡是最好的解决方式。举个大的不是很恰当的栗子:淘宝网。

对于互联网服务,负载平衡器通常是一个软体程序,这个程序侦听一个外部端口,互联网用户可以通过这个端口来访问服务,而作为负载平衡器的软体会将用户的请求转发给后台内网服务器,内网服务器将请求的响应返回给负载平衡器,负载平衡器再将响应发送到用户,这样就向互联网用户隐藏了内网结构,阻止了用户直接访问后台(内网)服务器,使得服务器更加安全,可以阻止对核心网络栈和运行在其它端口服务的攻击。

当所有后台服务器出现故障时,有些负载平衡器会提供一些特殊的功能来处理这种情况。例如转发请求到一个备用的负载平衡器、显示一条关于服务中断的消息等。负载平衡器使得IT团队可以显著提高容错能力。它可以自动提供大量的容量以处理任何应用程序流量的增加或减少。(摘自维基百科)

怎么做?

这里我们用 Nginx 做负载均衡,nginx 是一款面向性能设计的 HTTP ,稳定性高的反向代理服务器,可以做负载均衡和 HTTP缓存。

基于上篇的安装路径,配置 nginx.conf :

vi /usr/local/nginx/conf/nginx.conf
从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡

配置代码:

upstream mysite { server 192.168.198.128:8080; server 192.168.198.128:8090; } server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; proxy_pass http://mysite; }

上边的192.168.198.128:8080192.168.198.128:8090对应的两个不同的网站页面,这里我只是在两个不同的 Tomcat 下放了两个静态页面,在浏览器输入192.168.198.128刷新,你会看到在这两个 Tomcat 之间一替一次切换请求。

从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡

刷新:

从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡

不同服务器分配不同的数量的用户

这样 nginx 也是支持的,只需要配置upstream节点不同服务器的权重就好了。我这里按 1:3 进行的演示配置。

从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡

配置完成。

注意:目前这种简单负载均衡配置,并不能共享 Session。

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

CentOS服务器,Nginx+Tomcat 上部署javaEE项目,负载均衡

CentOS服务器,Nginx+Tomcat 上部署javaEE项目,负载均衡 一:CentOS上Nginx的安装参考我的上一篇博客:http://blog.csdn.net/u013082989/a...
  • u013082989
  • u013082989
  • 2016-01-11 17:55
  • 2475

Linux下配置Nginx + 双Tomcat负载均衡

引言 Nginx简 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器 。 Nginx 是由 ...
  • s77108887
  • s77108887
  • 2016-06-05 08:43
  • 2668

CentOS+NginxTomcat搭建高性能负载均衡集群

1、环境 CentOS6.5 JDK1.7 Nginx1.7.4 2、环境准备 先安装必须的工具 yum -y install gcc gcc-c++ autoconf automake ...
  • llgyzb
  • llgyzb
  • 2017-02-24 09:29
  • 1459

开发人员学Linux(5):CentOS7编译安装Nginx并搭建Tomcat负载均衡环境

在上一篇讲述了JMeter的使用,在本篇就可以应用得上了。本篇将讲述如何编译安装Nginx并利用前面的介绍搭建一个负载均衡测试环境。Nginx是高负载Web网站中常用的软件之一,它不仅体积小,而且开源...
  • zhoufoxcn
  • zhoufoxcn
  • 2017-06-05 23:32
  • 1167

Nginx+Tomcat负载均衡配置

Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1、JAVA ...
  • wave_1102
  • wave_1102
  • 2015-03-20 00:29
  • 41096

CentOS 6.5 安装nginx及负载均衡配置

1、下载PCRE, 是一个用C语言编写的正则表达式函数库 [root@localhost pcre-8.36]# cd /tmp/download/ [root@localhost downloa...
  • hanzheng260561728
  • hanzheng260561728
  • 2016-07-11 21:23
  • 4466

【Linux运维-集群技术进阶】Nginx+Tomcat实现Web服务器的负载均衡

拓扑环境 服务器名称 系统版本 预装软件 IP地址 Nginx服务器 CentOS 7 最小安装 Nginx 192.168.22.227 Web服务器A Ce...
  • u010028869
  • u010028869
  • 2016-01-08 21:00
  • 6014

Windows下Nginx+tomcat配置集群负载均衡

Nginx 介绍      Nginx (发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发...
  • qwlovedzm
  • qwlovedzm
  • 2016-10-09 23:55
  • 3940

linux(ubuntu)下搭建nginx,tomcat负载均衡环境搭建

随着用户访问量增加以及单台服务器处理能力瓶颈,集群可以很好的解决这个问题,集群也可以保证在单台服务器宕机系统也可以正常运行。负载均衡就是让一个集群(多台机器处理相同的业务)的机器的使用率尽可能平均。比...
  • u013592964
  • u013592964
  • 2017-06-25 23:10
  • 765

linux nginx1.9.2+tomcat8 配置 多tomcat负载均衡,并使静态文静不通过tomcat解析

本项目完成的任务,nginx1.9.2+tomcat8 配置 多tomcat负载均衡,并使静态文静不通过tomcat解析,而是直接通过nginx直接返回静态文件数据,提高响应时间,提高并发量。注意,在...
  • u013378306
  • u013378306
  • 2016-02-27 14:35
  • 1095
    个人资料
    • 访问:1602713次
    • 积分:22215
    • 等级:
    • 排名:第381名
    • 原创:644篇
    • 转载:203篇
    • 译文:4篇
    • 评论:187条
    博客专栏
    文章分类
    最新评论