作者回复: 会讲的,第2部分就会讲到event loop机制
作者回复: 缓存只用于反向代理。必须上游响应符合缓存条件才会存储到该目录。第四部分有3节课会深入这块
作者回复: 性能问题先要确定瓶颈在哪,通常我习惯用二分法,逐渐缩小问题范围。增加多台服务性能反而变慢,我建议你先确定这四台django本身运行时会不会变慢,并看一下nginx的error.log中有没有错误日志,同时把error.log里的日志级别降低一点,例如info。
作者回复: 两个方案,1、使用proxy_protocol协议,nginx作为客户端或者服务器时都支持该协议。第113课有详细介绍。
2、使用IP透传DSR方案,需要修改上游服务的路由表,这节课在第4部分最后一节课,大概春节前会上线,你可以关注下。
作者回复: 我猜测你的环境是nginx->nginx,前者是负载均衡的作用,后者是静态资源的作用?如果是这样,建议后者。
作者回复: openresty里含有nginx,你安装好openresty后,如果你没有改prefix,那么nginx.conf就会在/usr/local/openresty/nginx/conf目录下。
作者回复: Openresty启动后进程名还是Nginx,它只是把Lua代码以Nginx模块的方式嵌入到Nginx进程中了
作者回复: /tmp/nginxcache下的缓存文件是否生成?
作者回复: 如果不需要使用openresty提供的独有功能,那么尽量使用更稳定更轻量的nginx
作者回复: 很好的问题,考虑在第四部分内容加一节课讲正向代理!
作者回复: 你想知道的是应该是如何配置location,分为两类,我猜你遇到的问题是/会匹配所有的url。
建议你先从头看一遍54课。你的场景不需要正则表达式,那么只是前缀匹配。你要注意,前缀匹配需要关注出现在nginx.conf中的顺序。
作者回复: 1、localhost只是名称,如果你在/etc/hosts里添加了127.0.0.1 local,那么也能访问local。
2、当不指定端口号时,http client会默认使用80端口。
作者回复: openresty就是nginx哦,强烈建议你先看下144课
作者回复: 没有找到sbin目录?sbin目录下有nginx文件,直接执行./nginx就可以启动了
作者回复: Openresty也是Nginx,只不过它增加了几个Nginx模块,特别是http模块。所以,包括配置文件、端口都是一样的,你可以先跳到144课总体上看下区别
作者回复: 两个建议:
1、确认404请求使用的是哪一个location,你这里涉及到了正则和最长字符串匹配,可以通过54课的学习找到规则,也可以通过error.log的debug日志找到。
2、你这里除了/用的是本地,其他四个全是反向代理,而前3个中你在proxy_pass最后加了/,最后一个没加。加与不加,结果完全不同,因为URL会被改掉。请学习89课。
作者回复: 1、上游访问不了只是其中一个原因,负载均衡提供的可伸缩性也是一个重要原因。因此,上游服务当然可以被直接访问,这不是一个必要条件。
2、本机进程无法访问虚拟机端口,需要参考你的虚拟机网络配置,与Nginx无关。