回答
收藏
分享
举报
nginx 变量实现
提问于2021-03-02 13:55

浏览 3.7k

nginx变量实现时,使用了两个数组,一个用来存放变量的定义,一个用来存放变量的数值。然后两者通过index关联起来。 

感觉这样实现增大了实现的复杂度。为什么要这么做?只用一个数组不可以实现吗?

已修改于2023-03-17 02:14



写下您的回答
发表回答
全部回答(1)

按点赞数排序

按时间排序

假设有1万个并发连接,那么只需要1个数组存放变量的定义,另需要1万个数组存放变量的值。

否则,10001个数组就要翻一倍变成2万个数组了!

赞同

0

回复举报

回答于2021-03-02 14:45



回复陶辉
回复
Rockets回复了

经典!茅塞顿开。多谢陶老师。

0

回复举报

回答于2021-03-02 07:15



回复Rockets
回复
提问者
Rockets
这家伙很懒还未留下介绍~
0
文章
10
问答
1
粉丝
相关问答

你是想把上游返回 的Location值修改掉吗?可以使用proxy_redirect指令,用法在这http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_redirect。

另外,通常上游是应当知道对外的域名的,否则很多跨域的安全问题就无法解决,此时上游的Location是能够拼出正确的域名的。

点赞 0
浏览 4k

no-cache在请求头部时,是告诉代理服务器,不能直接使用已有缓存作为响应返回,除非带着缓存条件到上游服务端得到 304 验证返回码才可使用现有缓存。cache-control在请求头部中的意义有点反直觉,你可以看下我的这一节视频课:https://time.geekbang.org/course/detail/175-99534

点赞 0
浏览 4.8k

这要看你在proxy_next_upstream指令中,是否添加了http_504选项

点赞 0
浏览 4.1k