Nginx url_hashurl_hash与ip_hash类似,但是其按照访问URL的hash结果来分配请求,使得每个URL定向到同一个后端服务器,主要应用于后端服务器为缓存时的场景中,如代码清单4-11所示。代码清单4-11 Nginx url_hashupstream zachary.sh.cn { server 192.168.1.10:8081; server 192.168.1.11:8081; hash $request_uri; hash_method crc32; }6. Nginx least_connleast_conn把请求转发给连接数较少的后端服务器,如代码清单4-12所示。代码清单4-12 Nginx least_connupstream zachary.sh.cn { least_conn; #把请求转发给连接数较少的后端服务器 server 192.168.1.10:8081; server 192.168.1.11:8081; }Nginx least_conn的代理示意如图4-11所示。图片: 图4-11 Nginx/upstream ip_hash代理图4.5 Nginx缓存
使用Nginx代理缓存可以减少后端服务端压力,提升网站性能,减小并发延时。Nginx设置缓存的代码如代码清单4-13所示。代码清单4-13 Nginx设置缓存upstream zachary.sh.cn{ server 192.168.10.1:8081; server 192.168.10.2:8082; } proxy_cache_path /cache levels=1:2 keys_zone=cache:10m max_size=10g inactive=60m use_temp_path=off; server { listen 80; server_name zachary.sh.cn; index index.html; location / { proxy_pass http:// zachary.sh.cn; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_cache cache; proxy_cache_valid 200 304 6h; proxy_cache_valid any 6m; proxy_cache_key $uri$request_body; proxy_cache_methods GET POST; add_header Nginx-Cache "$upstream_cache_status"; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; } }在代码清单4-13中,proxy_cache_path /cache用于设置Nginx缓存资源的存放地址。各参数说明如下。1)levels:按照两层目录分层。2)key_zone:在共享内存中设置一块存储区域来存放缓存的key和metadata(类似使用次数),Nginx可以快速判断一个请求是否命中缓存,1MB可以存储8000个key,10MB可以存储80000个key。3)max_size:最大缓存空间,如果不指定,会使用所有硬盘空间,当达到配额后,会删除最少使用的缓存文件。4)inactive:未被访问文件在缓存中的保留时间。如果文件60分钟未被访问,则不论状态是否为expired,缓存控制程序都会删掉文件。inactive默认是10分钟。需要注意的是,inactive和expired配置项的含义是不同的,expired只是使缓存过期,但不会删除缓存文件,inactive是删除指定时间内未被访问的缓存文件。5)use_temp_path:如果为off,则Nginx会将缓存文件直接写入指定的缓存文件中,而不是使用temp_path存储。official建议为off,因为这可以避免文件在不同文件系统中被不必要拷贝。
BookDescriptionThemodernWebisawashwithdataandservicesjustwaitingtobeused,buthowd...
《这里是杭州·美食》内容简介:作为一座有着深厚底蕴的历史文化名城,杭州拥有独特的人文和自然环境。“这里是杭州”系列以文化寻
TillAdam在年轻时学习了哲学、比较文学、美国研究和音乐学,职业是音乐人。由于没有发财和出名,他转而攻读科学硕士,学习了数学
《唐宋八大家文钞》内容简介:本书以“醇正”二字为标准。共十九卷,收“唐宋八大家”韩愈、柳宗元、欧阳修、苏洵、苏轼、苏辙、曾
《华为逻辑》内容简介:本书从任正非的创业故事和商业理念入手,全面展示了华为在三十多年见经历的的管理变革与创新,同时对其管理
《在人间:肿瘤科女医生亲历记录》内容简介:本书是一本医学人文图书,集合了奋斗在中国肿瘤临床一线的17位女医生在行医生涯中的见
《配色宝典》是一本集配色理论和配色实例为一体的便携式工具书。配色理论部分以日本视觉设计研究所研发的色立体为基础,将色彩分
《大明帝国》内容简介:本书是一部以《明史》为基础的历史小说,分为上、下两册。全面展现了大明帝国开国后波云诡谲、血雨腥风的历
Computersciencestudieshowtodescribe,predictpropertiesof,andefficientlyimplementi...
《Web性能实践日志》包含了众多领域专家的关于Web性能的文章。其中包括了许多性能相关的主题,如开源工具、缓存、移动网络和应用
《36讲资治通鉴通识课:1362年历史时空》内容简介:《资治通鉴》是北宋司马光主编的中国首部编年体通史,是传统的史学巅峰著作,但
Generativedesignisarevolutionarynewmethodofcreatingartwork,models,andanimationsf...
本书为美国业余无线电转播联盟(ARRL)出版、里奇·阿兰德(K7SZ)编写的LowPowerCommunication第3版中的中文译本。QRP在Q简语里意为
《世界前沿技术发展报告2007》详细介绍了2007年世界前沿技术的重大进展和发展动向,详细阐述了若干国家科技发展的重要战略和总署
五所权威德国设计学院:柏林艺术大学(UdkBerlin)杜塞尔多夫高等专业学院(FHD)莱比锡书籍设计及平面设计学院(HGBLeipzig)奥
《书法美育的经典图释》内容简介:本书为陈振濂书法美育思想的“图像篇”,是针对书法美育的一次力行实践,对书法美育的推广与普及
HowRubyWorksUndertheHoodRubyisapowerfulprogramminglanguagewithafocusonsimplicity...
《东北文学通史(全二册)》内容简介:本书是吉林省社会科学基金重点委托项目研究成果。此书上溯先秦时期的上古神话与英雄史诗,下
《C语言从入门到项目实践(超值版)》内容简介:本书采取“基础知识→核心应用→核心技术→高级应用→行业应用→项目实践”结构和“
《蔬果岁时记》内容简介:青葱、竹笋、苦瓜、南瓜、青梅、文旦、甘蔗、橙子……这些绿色蔬果,天然代表了健康和环保,体现了中华美