集群环境为了解决单点无法支撑高并发的情况,集群采用多台服务器提供服务,一般在集群中使用nginx 将来自客户端的请求转发给服务器端
nginx负载均衡可用提高网站的吞吐量,缓解单台服务器的压力。
一. nginx是什么
nginx是一个开源且高性能、可靠的http中间件、代理服务
1. io多路复用epoll(io复用)
如何理解呢?举个例子吧!
有a、b、c三个老师,他们都遇到一个难题,要帮助一个班级的学生解决课堂作业。
老师a采用从第一排开始一个学生一个学生轮流解答的方式去回答问题,老师a浪费了很多时间,并且有的学生作业还没有完成呢,老师就来了,反反复复效率极慢。
老师b是一个忍者,他发现老师a的方法行不通,于是他使用了影分身术,分身出好几个自己同一时间去帮好几个同学回答问题,最后还没回答完,老师b消耗光了能量累倒了。老师c比较精明,他告诉学生,谁完成了作业举手,有举手的同学他才去指导问题,他让学生主动发声,分开了“并发”。
这个老师c就是nginx。
2. 轻量级
- 功能模块少 – nginx仅保留了http需要的模块,其他都用插件的方式,后天添加
- 代码模块化 – 更适合二次开发,如阿里巴巴tengine
3. cpu亲和
把cpu核心和nginx工作进程绑定,把每个worker进程固定在一个cpu上执
发表评论