找到约 2024 条结果
  • Swoole的主进程是一个多线程的程序。其中有一组很重要的线程,称之为Reactor线程。它就是真正处理TCP连接,收发数据的线程。Swoole的主线程在Accept新的连接后,会将这个连接分配给一个固定的Reactor线程,并由这个线程负责监听此socket。在socket可读时读取数据,并进行协议解析,将请求投递到Worker进程。在socket可写...
    2019-06-10
  • 3个点:Not faster than NIO (epoll) on unix systems (which is true)There is no daragram suppportUnnecessary threading model (too much abstraction without usage)
    2017-08-21
  • Linux IO模式及 select、poll、epoll详解(含部分实例源码)
    现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方)。操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为了保证用户进程不能直接操作内核(kernel),保证内核的安全,操心系统将虚拟空间划分为两部分,...
    2020-11-28
  • epoll的本质
    从事服务端开发,少不了要接触网络编程。epoll作为linux下高性能网络服务器的必备技术至关重要,nginx、redis、skynet和大部分游戏服务器都使用到这一多路复用技术。
    2020-12-25
  • 知道libevent支持 select/poll/epoll时间模型。 今天突然想到 封装了libevent底层操作的 event_* 系列函数是使用了那种事件模型呢
    2017-04-27
    1
    ✓ 已解决
  • 楼主亲自测试验证是个好习惯,但是一般都是采用Linux作为nginx的服务器。使用window的话nginx性能可能还不及apache,应该nginx和apache在windows上都是采用同样的运行机制select,类似排队循环处理。windows下nginx表现慢可能是:nginx 还需要调用php-cgi ,而 apache内置集成了php的sapi。
    2015-08-21
  • 一文说透IO多路复用select/poll/epoll
    如果我们要开发一个高并发的TCP程序。常规的做法是:多进程或者多线程。即:使用其中一个线程或者进程去监听有没有客户端连接上来,一旦有新客户端连接,就新开一个线程(进程),将其扔到线程(或进程)中去处理具体的读写操作等业务逻辑,主线程(进程)继续等待,监听其他的客户端。这样操作往往存在很大的弊端。首先是...
    2023-04-14
  • 用windows的IOCP吧,实现的功能跟linux的epoll类似,C#可以调用,详情请Google。
    2013-07-03
  • Redis杂谈
    单进程:单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行速率。Epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,他能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CP...
    2019-09-26
  • 你用的epoll的什么模式?两者还是有点区别的[链接]
    2015-03-20
  • 深入理解 tornado 之底层 ioloop 实现
    最近打算学习 tornado 的源码,所以就建立一个系列主题 “深入理解 tornado”。 在此记录学习经历及个人见解与大家分享。文中一定会出现理解不到位或理解错误的地方,还请大家多多指教
    2016-06-06
    6
  • 而 goroutine 是用来处理线程创建和调度过于耗资源的,尤其是线程出现阻塞,io等待的时候,会出现上下文切换,非常耗时。而 goroutine 相对比较轻量级。
    2019-01-17
  • gitbook上有本书叫libevent深入浅出,里面谈到了epoll,觉得讲的还挺好的
    2017-03-07
  • 【Redis学习笔记】2018-05-30 Redis源码学习之Ziplist、Server
    作者:施洪宝 顺风车运营研发团队一. 压缩列表压缩列表是Redis的关键数据结构之一。目前已经有大量的相关资料,下面几个链接都已经对Ziplist进行了详细的介绍。
    2018-06-14
  • 一种解释是如果使用阻塞,调用epoll-wait之后,read可能一致阻塞,但是如果水平触发使用阻塞io也可能read一致阻塞啊。
    2020-12-04
    2
  • Tornado进阶-从源码开始(转载)
    一、tornado概述 二、epoll预备 三、源码结构 四、tornado的http层 五、tornado的tcp层 六、tornado的ioloop分析 七、tornado请求1 八、tornado请求2 ps: 在此感谢jason_wang同学,附其博客地址
    2019-05-31
  • Redis 中的事件
    每个 CS 模式程序,尤其是高并发的网络服务端程序都有自己的网络异步事件处理库,Redis不例外。Redis 基于 Reactor 模型 封装了自己的事件驱动模型库。你可能会跟我有一样的疑问,为什么作者不使用已有的成熟的相关库,比如 Libevent 或 Libev?作者是这样跟别人讨论的,感兴趣的可以了解下。下面从源码入手介绍下 Redis...
    2018-08-19