V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
skypyb
V2EX  ›  程序员

关于用 Nginx 来动静分离的疑问

  •  
  •   skypyb · 2020-11-08 17:34:19 +08:00 · 1876 次点击
    这是一个创建于 1476 天前的主题,其中的信息可能已经有所发展或是发生改变。

    假设有两台服务器 A/B 均部署了一个服务, 其中 A 上有一个 Nginx 用来负载均衡&动静分离。

    提问:
    1.是不是所有的静态资源上传的逻辑必须强制走 A 服务器? 如果这样子当发布时 A 可能会下线, 岂非上传相关的接口都不能用?
    2.A/B 的接口流量&静态资源的流量都从 A 这里流出, 是不是表示 A 的带宽配置必须要够顶?

    7 条回复    2020-11-08 21:11:36 +08:00
    37Y37
        1
    37Y37  
       2020-11-08 18:06:55 +08:00
    对于文件上传和静态资源一般都用对象存储
    skypyb
        2
    skypyb  
    OP
       2020-11-08 18:58:43 +08:00
    @37Y37 不考虑对象储存呢。。
    37Y37
        3
    37Y37  
       2020-11-08 19:04:43 +08:00
    @skypyb 共享存储了解下
    loading
        4
    loading  
       2020-11-08 19:52:49 +08:00 via Android
    rewrite 不行吗?
    skypyb
        5
    skypyb  
    OP
       2020-11-08 20:57:18 +08:00
    @loading rewrite 是指什么?
    lscho
        6
    lscho  
       2020-11-08 21:05:40 +08:00
    1.是不是所有的静态资源上传的逻辑必须强制走 A 服务器? 是。
    如果这样子当发布时 A 可能会下线, 岂非上传相关的接口都不能用?是。但问题不在负载均衡和动静分离上。服务下线肯定会导致接口不能用,所以下线前需要将流量转至备用服务器。

    2.A/B 的接口流量&静态资源的流量都从 A 这里流出, 是不是表示 A 的带宽配置必须要够顶?是。

    那么问题来了,你动静分离了接口服务和静态资源还放到一个服务器上,还有什么意义吗?
    skypyb
        7
    skypyb  
    OP
       2020-11-08 21:11:36 +08:00
    @lscho 因为上传文件有的是要做控制比如鉴权之类的。。。 nginx 就直接和服务放一起了。

    关于你说的 [流量转至备用服务器] 是指将上传接口的流量转到某服务器然后用 ssh 之类的机制的传到 A 服务器么?
    不这样的话上传的资源就不在指定的静态资源目录了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1012 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:39 · PVG 03:39 · LAX 11:39 · JFK 14:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.