试验了用128MB的小机Nginx反代+缓存跑了个3万ip的站,负载一直在0.01-0.02,没感觉 目前,Nginx的缓存控制机制是软肋,特别是清理过期缓存方面,有2种方法来清理过期的缓存,当然,nginx自身也会清理的,但清理的机制不好。所以,只能do it yourself. 1. Cro...
nginx在1.3.1添加了一个新模块 least_conn,也就是我们常说的最少连接负载均衡算法,简单来说就是每次选择的都是当前最少连接的一个server(这个最少连接不是全局的,是每个进程都有自己的一个统计列表)。 在看最少连接模块之前需要对round robin模块有一定的...
这次主要来看upstream的几个相关的hook函数。 首先要知道,对于upstream,同时有两个连接,一个时client和nginx,一个是nginx和upstream,这个时候就会有两个回调,然后上篇blog中,我们能看到在upstream中,会改变read_event_handler和write_event_handler,...
这次主要来分析当upstream发送过来数据之后,nginx是如何来处理。不过这里我忽略了cache部分,以后我会专门来分析nginx的cache部分。 在前面blog我们能得知upstream端的读回调函数是ngx_http_upstream_process_header,因此这次我们就从ngx_http_upstream_pr...
这此主要是分析发送数据到客户端的部分以及buffering状态下,nginx接收upstream数据的部分,这也是upstream的最复杂的部分,这里我还是忽略了cache部分,以后我会专门写blog来分析nginx的cache部分。 这部分的函数入口是ngx_http_upstream_send_response,这...
这次主要来分析upstream中的发送数据给client, 以及当buf不足,将一部分写到temp file的部分,他们对应的函数分别是ngx_event_pipe_write_to_downstream和ngx_event_pipe_write_chain_to_temp_file. 先来看ngx_event_pipe_write_to_downstream,这个函数顾名...
这里主要的头的处理是放在filter中做的,我们首先来看config(默认情况)后,nginx的obj目录下的ngx_modules.c这个文件中的关于filter的部分: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ngx_module_t *ngx_modules[] = { ....................................
然后是charset filter,这个主要是处理nginx内部的charset命令,转换为设置的编码。这个filter就不介绍了,主要是一个解码的过程。 再接下来是chunk filter,它主要是生成chunk数据,这里要注意nginx只支持服务端生成chunk,而不支持客户端发送的chunk数据。c...
这篇我们会主要来分析配置文件相关的一些初始化,而在下一篇我们会详细分析http协议相关,以及socket的初始化信息。 nginx启动最重要的部分是在ngx_init_cycle中,我们接下来就会详细的分析这个函数,以及相关的函数. 下面就是ngx_init_cycle的流程图 首先先...
接上篇,这篇主要来看nginx的网络部分的初始化 首先是ngx_http_optimize_servers函数,这个函数是在ngx_http_block中被调用的,它的主要功能就是创建listening结构,然后初始化。这里ngx_listening_t表示一个正在监听的句柄以及它的上下文。 1 2 3 4 5 6 7 8...
1 Docker 是什么? -1.1 容器是什么? -2 安装 Docker -2.1 启动 docker 守护进程 -3 ...
使用场景 最近,报告查询系统负载均衡集群相关配置已经完成,两种实现方式分别是基于E...
当你执行 nginx -t 得时候,nginx会去测试你得配置文件得语法,并告诉你配置文件是否...
本文将介绍一些SSL安全性的配置,以此提升网站的安全等级。先给出本博客的SSL配置: s...
Step 1:安装配置JDK 1.下载JDK rpm包 下载地址:http://www.oracle.com/technetwork/...
问题现象: 我们有时候会遇到ssh连接服务器的时候非常慢,经常是要等30秒以上,甚至更...