• Nginx自动加载配置文件方案


      

    nginx自动加载配置文件方案
    一、nginx+consul+consul-template
    实现过程:consul作为服务发现软件,consul-template作为nginx配置文件的模板,consul-template通过监测consul里数据的变化,动态的修改nginx配置文件的模板,然后执行nginx -s reload 命令进行路由更新,达到动态负载均衡的目的。
    优点:动态加载配置文件,实时修改配置文件
    缺点:使用reload来加载配置文件,如果是websocket长连接服务,流量大的应用,会对用户使用产生影响,也会损失一定的qps。对consul产生依赖,consul服务挂掉或者超时会对nginx产生影响,需采用consul集群模式保障consul服务的稳定

    二、nginx+ nginx-upsync-module+consul
    实现过程:nginx-upsync-module它的功能是拉取 consul 的后端 server 的列表,并更新 Nginx 的路由信息,不需要reload,对consul单点也有很好的可用性


    单独模块功能:
    ngx_http_dyups_module:修改upstream信息之后不需要reload 而是直接修改upstream的内存
    nginx-upsync-module:基于Nginx实现动态配置的三方模块,可以拉取consul中的服务信息,并动态更新nginx的路由信息
    nginx_upstream_check_module:是专门提供负载均衡器内节点的健康检查的第三方模块,通过它可以用来检测后端 realserver 的健康状态。如果后端 realserver 不可用,则后面的请求就不会转发到该节点上,并持续检查节点的状态,缺点是持续一定时间之后请求才不会转发到该节点,consul自带的健康检查可以解决该问题

  • 相关阅读:
    js计算两个时间相差天数
    享元模式
    外观模式
    组合模式
    装饰者模式
    桥接模式
    适配器模式
    元素量词 ? + *
    linux安装使用7zip
    linux shell使用别名,切换当前目录
  • 原文地址:https://www.cnblogs.com/lidong94/p/11543921.html
Copyright © 2020-2023  润新知