用户登录
用户注册

分享至

nginx和memcached

  • 作者: 优衣库库长丶
  • 来源: 51数据库
  • 2020-12-17
Nginx ("engine x") 是一个高性能的HTTP和反向代服务器,也是一个 IMAP/POP3/SMTP 服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。

nginx 相对 apache 的优点:

  • 轻量级,同样起web 服务,比apache 占用更少的内存及资源
  • 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
  • 高度模块化的设计,编写模块相对简单
  • 社区活跃,各种高性能模块出品迅速啊


    apache 相对nginx 的优点:

  • rewrite ,比nginx 的rewrite 强大
  • 模块超多,基本想到的都可以找到
  • 少bug ,nginx 的bug 相对较多




  •   为什么nginx的性能要比apache高得多?这得益于nginx使用了最新的epoll(linux 2.6内核)和kqueue(freebsd)网络i/o模型,而apache则使用的是传统的select模型。目前linux下能够承受高并发访问的squid、memcached都采用的是epoll网络i/o模型。

      处理大量的连接的读写,apache所采用的select网络i/o模型非常低效。下面用一个比喻来解析apache采用的select模型和nginx采用的epoll模型进行之间的区别:

      假设你在大学读书,住的宿舍楼有很多间房间,你的朋友要来找你。select版宿管大妈就会带着你的朋友挨个房间去找,直到找到你为止。而epoll版宿管大妈会先记下每位同学的房间号,你的朋友来时,只需告诉你的朋友你住在哪个房间即可,不用亲自带着你的朋友满大楼找人。如果来了10000个人,都要找自己住这栋楼的同学时,select版和epoll版宿管大妈,谁的效率更高,不言自明。同理,在高并发服务器中,轮询i/o是最耗时间的操作之一,select和epoll的性能谁的性能更高,同样十分明了。
    软件
    前端设计
    程序设计
    Java相关