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


    每天学习一点点 编程PDF电子书、视频教程免费下载:
    http://www.shitanlife.com/code

    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: ginx-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服务器”的可能性会大一些。

    每天学习一点点 编程PDF电子书、视频教程免费下载:
    http://www.shitanlife.com/code

  • 相关阅读:
    flask -服务端项目搭建
    蓝图 Blueprint
    flask-session
    flask-数据库操作 / ORM/Flask-SQLAlchemy/数据表操作/数据操作/数据库迁移
    在 Flask 项目中解决 CSRF 攻击
    Flask-Script 扩展/自定义终端命令/Jinja2模板引擎
    Flask项目创建/http的会话控制/Cookie/Session/请求钩子/异常捕获/context
    redtiger sql injection 练习
    流畅的python--序列构成的数组
    流畅的python--python的数据模型
  • 原文地址:https://www.cnblogs.com/scode2/p/8809125.html
Copyright © 2020-2023  润新知