美文网首页
单进程服务器epoll 2019-07-08

单进程服务器epoll 2019-07-08

作者: 圣召唤 | 来源:发表于2019-07-08 11:01 被阅读0次

epoll是当今linux服务器采用的一种方式 ,它是一种单进程、单线程的高并发服务器

在操作系统中启动服务器,服务器就会有一个监听客户端连接的套接字,每有一个客户端连接服务器,就会向套接字列表中添加一个客户端套接字,此时加上服务器本身的监听套接字,目前列表中有两个套接字,当有别的客户端再连接时,继续往列表中加套接字。应用程序有一份自己的内存空间,操作系统也有一份自己的内存空间,彼此之间相互隔离。linux操作系统的核心是kernel,当系统去遍历套接字列表时,就是把列表中套接字的Fd(文件描述符)复制一份给kernel,当列表比较大时,就会耗费过多的时间,(这个从第一个遍历到最后一个循环往复的过程叫轮询)这样导致效率不太高。

epoll的优势就在于1.它内部有一个特殊的内存空间,这个特殊的内存空间不属于程序也不属于内核,是它们两个共有的,这样就减少了一个复制的过程。2.为了进一步提升效率,epoll不采用轮询而采用一种效率更高的方式:事件通知,只要遍历那些被内核IO事件异步唤醒而加入Ready队列的描述符集合就行了,

Nginx(性能优异)、 Apche(稳定优异)是当今世界很出名的两大服务器

相关文章

  • 2019-07-10 epoll, 单进程---单线程的非阻塞

    单进程服务器-----epoll IO多路复用 基本原理就是select,poll,epoll这个function...

  • epoll

    单进程服务器-----epoll IO多路复用 基本原理就是select,poll,epoll这个function...

  • 单进程服务器epoll 2019-07-08

    epoll是当今linux服务器采用的一种方式 ,它是一种单进程、单线程的高并发服务器 在操作系统中启动服务器,服...

  • 单进程服务器epoll实现http

  • Redis启动后杂项基础知识

    Redis启动后杂项基础知识 1. 单进程 单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数...

  • redis 第二讲 基础知识

    单进程 单进程模型来处理客户端的请求,对读写事件的响应 是通过对 epoll 函数的封装来做到的。能显著提高程序在...

  • 6 Redis基础知识

    1) 单进程 epoll 2) 多库 select index:命令切换数据库 dbsize:查看当前数据库的ke...

  • 多进程服务器

    一、多进程服务器 read()阻塞的话就是【单客户端】响应的服务器 多进程服务器是【多客户端响应的服务器】 之所以...

  • 03-web服务器v3.1--03

    多进程、多线程实现Http服务器 使用gevent实现Http服务器开启多任务 单进程、线程、非堵塞实现并发 长链...

  • Worker抢占机制与epoll模型

    master进程fork多个worker进程。 worker抢占accept_mutex互斥锁。 使用epoll模...

网友评论

      本文标题:单进程服务器epoll 2019-07-08

      本文链接:https://www.haomeiwen.com/subject/nuznhctx.html