西南IT社区
    • 注册
    • 登录
    • 搜索
    • 主页
    • 问答
    • 话题
    • 热门
    • 圈子
    • 工作机会
    • 活动
    • 项目

    Nginx的衍生生态有哪些

    技术答疑
    nginx
    1
    1
    19
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 为
      为情心迷茫 最后由 编辑

        很多人可能或多或少了解过nginx,即使没有使用过nginx,但是可能用Apache搭建过简单的web服务器,用tomcat写过一些简单的动态页面,其实这些功能nginx都可以实现。

        nginx最重要的三个使用场景个人认为是静态资源服务、反向代理服务和api服务。
      web请求走进服务以后会先经过nginx再到应用服务,然后再去访问redis或者mysql提供基本的数据功能。

        这就有个问题,应用服务因为要求开发效率高,所以他的运行效率是很低的,他的qbs,tps并发都是受限的,所以就需要把很多的应用服务组成集群,向用户提供高可用性。

        很多服务构成集群的时候,需要nginx具有反向代理的功能,可以把动态请求传导给对应的应用服务。服务集群一定会带来两个需求,动态的扩容和容灾。

        反向代理必须具备负载均衡的功能,其次在链路中,nginx是处在企业内网的边缘节点,随着网络链路的增长,用户体验到的时延会增加。把一些所有用户看起来不变的,或者在一段时间内看起来不变的动态内容缓存在nginx部分,由nginx直接向用户提供访问,用户的时延就会减少很多。

        反向代理衍生出另外的功能叫缓存,他能够加速访问,而很多时候在访问像css或js文件又或者一些小图片是没有必要由应用服务来访问的,他只需要直接由nginx提供访问就可以了这就是nginx的静态资源功能。

        应用服务它本身的性能有很大的问题,数据库服务要比应用服务好的多,原因是数据库他的业务场景比较简单,并发性能和tps都要远高于应用服务。由nginx直接去访问数据库或者redis也是不错的选择。

        还可以利用nginx强大的并发性能,实现如web防火墙的一些业务功能,这就要求nginx服务有非常强大的业务处理功能,openResty和nginx集成了一些工具库来实现此功能。
      ![ea4f824a-f92d-440e-9c27-1543df443c2f-image.png]

      1 条回复 最后回复 回复 引用 0
      • First post
        Last post
      使用HTML构建办公软件 使用HTML构建办公软件 使用HTML构建办公软件
      为
      F
      漫
      成
      Y
      洋
      书
      Y
      D
      U
      Y
      娇
      玩
      1
      光
      A
      庆
      小
      U
      Y
      L
      I
      Z
      I
      Y

      西南地区IT社群(QQ)
      云南
      【昆明网页设计交流吧】243627302
      【昆明nodejs交流吧】 243626749
      【VUE】838405306
      【云南程序员总群】343606807
      【昆明UI设计】104031254
      【云南软件外包】15547313
      贵州
      【PHP/java源码/站长交流群】55692114
      四川
      【成都Java/JavaWeb交流】86669225
      【vaScript+PHP+MySql】116270060
      【UI设计/设计交流学习群】135794928
      重庆
      【诺基亚 JAVA游戏博物馆】 559479780
      【PHP,Java,Python,C++接单】 442103442
      西藏
      社群
      昆明网页设计交流吧
      友情链接
      • Funtask
      • Funtask 社区
      • SUWIS
      ©2019-2021 滇ICP备20006698号