Nginx+Tomcat高性能负载均衡集群搭建教程

 更新时间:2018年04月14日 11:33:30   作者:Joanna.Yan  
这篇文章主要为大家详细介绍了Nginx+Tomcat高性能负载均衡集群搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

Nginx是一个高性能的HTTP服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其占有内存少,并发能力强,在同类型的网页服务器中表现较好。Nginx可以在大多数Unix Linux OS上编译运行,并有Windows移植版。一般情况下,对于新建站点,建议使用最新稳定版作为生产版本。

单个Tomcat最大支持在线访问是500左右,要通知支持更多的访问量一个Tomcat就没法做到了。在这里我们采用集群部署方式,使用多个Tomcat,反向代理使用Nginx。

架构如下:

准备工作

apache-tomcat-7.0.61

nginx-1.12.2

Redis-x64-3.2.100

为简化示例,这里只讲Nginx+Tomcat的部署与集成。

Nginx安装

(1)去官网下载Windows的最新稳定版Nigx(我用的1.12.2版本)。官网

(2)解压到磁盘任意目录。这里我解压在 F:\nginx-1.12.2

(3) 启动服务: start nginx.exe

  停止服务:nginx -s stop

  重新加载配置:nginx -s reload

修改nginx.conf

1.进程数与每个进程的最大连接数

  • nginx进程数,建议设置为等于CPU总核心数
  • 单个进程最大连接数。那么该服务器的最大连接数=连接数*进程数

2.Nginx的基本配置

  • 监听端口一般都为http端口:80
  • 域名可以有多个,用空格隔开。例如server_name www.sohu.com baidu,com

3.负载均衡列表基本配置

  • location / {} :对什么样的后缀进行负载均衡请求,假如我们要对所有的aspx后缀的文件进行负载均衡时,可以这样写:location ~.*\.aspx${}
  • proxy_pass:请求转向自定义的服务器列表,这里我们将请求都转向标识为http://joannayan.com的负载均衡服务器列表。
  • weight权重,权值越高被分配的几率越大。可以根据机器配置定义权重(如果某台服务器的硬件配置很好,可以处理更多的请求,那么可以为其设置一个较高的weight;而有一台的服务器的硬件配置比较差,那么可以将前一台的weight配置为weight=2,后一台差的配置为weight=1)。

测试

分别向两台机器的Tomcat服务器中部署TestNginx.war这个Web项目(为了区分访问的是不同的Web服务器,两机器中部署的TestNginx这个项目在页面显示上略有不同)。

启动启动两机器上的Tomcat,并启动nginx.

访问nginx:http://localhost/TestNginx

刷新,再访问:

由于权重的不同,在不断刷新页面的过程中,显示“5.20服务器”的可能性会大一些。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Nginx整合Kafka的方法示例

    Nginx整合Kafka的方法示例

    这篇文章主要介绍了Nginx整合Kafka的方法示例,nginx整合kafak后,可以将nginx中的数据,直接保存到kafka中,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • nginx上传文件大小报错500的解决办法

    nginx上传文件大小报错500的解决办法

    这篇文章主要介绍了nginx上传文件大小报错解决办法的相关资料,小文件可以提交,大文件会报500内部错误,这里提供解决办法,需要的朋友可以参考下
    2017-08-08
  • 在nginx中实现单位时间内限制访问频率的教程

    在nginx中实现单位时间内限制访问频率的教程

    这篇文章主要介绍了在nginx中实现单位时间内限制访问频率的教程,并非针对IP而是全局的访问量限制,需要的朋友可以参考下
    2015-04-04
  • Nginx访问日志及错误日志参数说明

    Nginx访问日志及错误日志参数说明

    这篇文章主要介绍了Nginx访问日志及错误日志参数说明,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Nginx反向代理proxy_cache_path directive is not allowed错误解决方法

    Nginx反向代理proxy_cache_path directive is not allowed错误解决方法

    这篇文章主要介绍了Nginx反向代理proxy_cache_path directive is not allowed错误解决方法,需要的朋友可以参考下
    2015-04-04
  • Nginx应对Permission denied和File not found的配置

    Nginx应对Permission denied和File not found的配置

    这篇文章主要介绍了Nginx应对Permission denied和File not found的错误配置,文中介绍了两个PHP程序使用时出现相关问题后的解决案例,需要的朋友可以参考下
    2015-12-12
  • 使用Nginx实现301跳转至https的根域名示例代码

    使用Nginx实现301跳转至https的根域名示例代码

    这篇文章主要介绍了使用Nginx实现301跳转至https的根域名,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 如何使用nginx充当mysql的负载均衡器

    如何使用nginx充当mysql的负载均衡器

    这篇文章主要介绍了使用nginx充当mysql的负载均衡器过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-06-06
  • Linux下Nginx安装教程

    Linux下Nginx安装教程

    这篇文章主要为大家详细介绍了Linux中Nginx的安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • nginx修改默认运行80端口的方法

    nginx修改默认运行80端口的方法

    这篇文章主要给大家介绍了关于nginx是如何修改默认运行80端口的方法,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-04-04

最新评论