开发工具

软件开发以及项目开发和网站开发工具,包括版本控制软件,测试工具,修复漏洞工具等等

6. Load-balancers

Load-balancer用来决定哪一个后端将会收到请求;具体的实现是round-robin方式或者把请求进行hash。本节将介绍load- balancer模块的装载及其调用。我们将用upstream_hash_module(full source)作例子。upstream_hash将对nginx.conf里配置的变量进行 hash,来选择后端服务器。

5.3. Filter的装载

Filter在在回调函数post-configuration中被装载。header filter和body filter都是在这里被装载的。

我们以chunked filter模块为例来具体看看:

static ngx_http_module_t ngx_http_chunked_filter_module_ctx = {

5.2. 剖析Body Filter

因为body filter一次只能操作一个buffer(链表),这使得编写body filter需要一定的技巧。模块需要知道什么时候可以覆盖输入buffer,用新申请的buffer_替换已有的,或者在现有的某个buffer前或后插入一个新buffer。有时候模块会收到许多buffer使得它不得不操作一个_不完整的链表,这使得事情变得更加复杂了。

5.1. 剖析Header Filter

头部Filter由三个步骤组成:

1. 决定何时操作响应
2. 操作响应
3. 调用下一个filter

5. Filters

Filter操作handler生成的响应。头部filter操作HTTP头,body filter操作响应的内容。

页面

Subscribe to RSS - 开发工具