找到约 94 条结果
  • ev使用系列
    使用事件驱动模型实现网络服务程序libev学习笔记(持续更新)库-libev:详解libev源码分析--常用的watcher
    2016-10-24
    2
  • php 的 libevent / event / ev / uv 扩展
    2、ext-ev 是 libev wrapper,libev 要优于 libevent,最新的 reactPHP 在用哦,其实 reactPHP 有 EventLoop,可以根据你安装的扩展选用相应的事件驱动库,可 参考。由于libev 对 windows 支持不够好。因此,Node.js 封装了一层libuv。libuv 是基于 windows 的 IOCP 和 *nix 的 libev 进行封装(转载至)。
    2020-06-03
  • Node.js架构简介
    Node.js 用异步式 I/O 和事件驱动代替多线程,带来了可观的性能提升。Node.js 除了使用V8作为JavaScript引擎以外,还使用了高效的libev和libeio库支持事件驱动和异步式 I/O。
    2015-03-10
  • 修改SS配置文件使其同时支持IPV4和IPV6网络
    将shadowsocls-libev文件夹下config.json文件(这个文件在哪自己找。。。)中的: {代码...} 修改为: {代码...} 即可。
    2018-09-19
  • 使用 libev 构建 TCP 响应服务器(echo server)的简单流程
    请注意这是 libev 而不是 libevent 的文章!这篇文章主要是使用具体的例子,说明如何使用 libev。网上不少文章都是照抄示例,一点用都没有……本文将示例的代码精简一下,补上说明;大家都懂的部分就不赘述了。需要完整源码请查看参考资料。
    2016-08-23
    8
  • Libev 官方文档学习笔记 - 01:概述和 ev_loop
    自从接触到 libev 之后,就深深赞同作者精简的设计理念,于是就爱上了 libev 这样简单的I/O库。此外,libev 的大小也比 libevent 小得多并且自由得多。虽然我在公司的项目用的异步 I/O 库还是以 libevent 和 libubox 为主,但是个人业余的工程中,往往用的是 libev 而不是 libevent。
    2016-08-04
    11
  • libev使用方法
    libev是个高性能跨平台的事件驱动框架,支持io事件,超时事件,子进程状态改变通知,信号通知,文件状态改变通知,还能用来实现wait/notify机制。libev对每种监听事件都用一个ev_type类型的数据结构表示,如ev_io, ev_timer, ev_child, ev_async分别用来表示文件监听器, timeout监听器, 子进程状态监听器, 同步事件监听器.
    2020-12-16
  • libuv之一:libuv介绍
    这系列的文章是关于如何使用libuv作为一个高性能I/O库的很小的一部分,它在Windows和Unix上提供相同的API接口。它将涵盖libuv的主要领域,但不是去讨论每一个功能函数和数据结构的综合参考。这本书一直在补充,所以它的有些部分可能不完整,但我希望你随着它的成长的同时喜欢上它。
    2021-05-12
  • PHP的Ev教程一(初识Ev和EvTimer简单入口)
    此扩展提供了Libev库——一个用C语言编写的高性能全功能事件循环。Libev是一个事件循环:一个寄存器对某些事件(例如文件描述符是可读的或超时发生)进行注册,它将管理这些事件源并为程序提供事件。 为此,必须通过执行事件循环处理程序来或多或少地完成对进程(或线程)的控制,然后通过回调机制来传递事件。 你通过注册...
    2018-06-20
  • Libev 官方文档学习笔记 - 02:watcher 基础
    请注意这是 libev 而不是 libevent 的文章! 这篇文章是第二篇,主要讲 libev 里的 watcher 的一些基础操作。 本文地址:[链接] Watcher 解析 以下是一段示意性的代码,使用的是ev_io: {代码...} 每一个 watcher 类型有一个附属的 watcher 结构体。(一般是struct ev_XXX或ev_XXX)  每一个 watcher 结构都需要用ev_i...
    2016-08-08
  • linux安装XtraBackup8
    xtrabackup是percona团队研发的备份工具,比MySQL官方的ibbackup的功能还要多。支持myisam温全备、innodb热全备和温增备,还可以实现innodb的定时点恢复,而且备份和恢复的速度都较快。在目前MySQL的备份实现上,考虑价格、速度、安全、一致性等角度,xtrabackup是非常合适的工具。MariaDB也可以使用percona xtrabackup...
    2021-10-10
  • Libev 官方文档学习笔记 - 03:常用 watcher 接口
    这个 watcher 负责检测文件描述符(以下简称fd)是否可写入数据或者是读出数据。最好是将fd设置为非阻塞的。  注意有时候在调用read时是没有数据的(返回0),此时一个一个非阻塞的read会得到EAGAIN错误。
    2016-08-22
  • mbedTLS(PolarSSL)简单思路和函数笔记(Client端)
    OpenSSL一直以来各种被诟病,具体挑了哪些刺,本文就不深究。作为OpenSSL有很多替代,我了解到的有cyaSSL(WolfSSL)和PolorSSL。其中PolarSSL已经被ARM收购了,改名为mbedTLS。本文列举了作为一个SSL client端,应该如何使用mbedTLS。本文可以搭配我上一篇文章OpenSSL一起看;单独看也没问题
    2016-07-18
    17
  • tornado异步编程与node.js异步编程
    tornado是由FaceBook开源的一个异步python框架,node.js是由Joyent资助的开源项目,致力于提供一套编写高性能并发Web应用的JavaScript框架。这篇博客就简单谈一谈两种异步框架在Linux下的异同,如果有错误或者表达不恰当的地方欢迎各路大神指正。
    2015-05-28
    1
  • php动态库libicui18n报错
    安装完成ffmpeg出现动态库libicui18n报错,不存在 {代码...} 通过网上查找资料了解到php新版本的动态库7.2.16不能使用63版本,通过升级php可以解决问题。 使用brew升级php {代码...} 一切结束之后执行php查看版本: {代码...}
    2019-07-22
  • Percona Xtrabackup 安装
    Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具。特点:(1)备份过程快速、可靠;(2)备份过程不会打断正在执行的事务;(3)能够基于压缩等功能节约磁盘空间和流量;(4)自动实现备份检验;(5)还原速度快;
    2016-06-07
  • 关于gevent的一点总结
    libev是一个高性能的事件循环(event loop)实现。事件循环(也称作IO多路复用),是解决阻塞问题,实现并发的一种方法。简单点说,就是event loop会捕获、处理io事件的变化:遇到阻塞,就跳出;阻塞结束,就继续。这依赖于系统底层的select函数及其升级版:poll和epoll。《深入理解计算机系统》一书中,对此有深入探讨。
    2018-08-14
  • node - 非阻塞的异步 IO
    每当我们提起 node.js 时总会脱口而出 事件驱动、非阻塞I/O 和 单线程,所以我总结了以下几点对这三项概念的阐述,不一定正确仅仅代表个人观点。
    2016-07-10
  • 一起读 Gevent 源码
    我们知道 Gevent 是基于 Greenlet 实现的,greenlet 有的时候也被叫做微线程或者协程。其实 Greenlet 本身非常简单,其自身实现的功能也非常直接。区别于常规的编程思路——顺序执行、调用进栈、返回出栈—— Greenlet 提供了一种在不同的调用栈之间自由跳跃的功能。从一个简单的例子来看一下吧(摘自官方文档):
    2014-07-22
    8
  • curl 支持 HTTP2
    curl 命令支持 HTTP2 执行以下命令: {代码...} 首先使用 curl 请求 https://nghttp2.org(使用了 http2)。但是结果却是返回了 HTTP1.1 响应: {代码...} 如果使用 http2,会给我们返回一个协议不支持的错误。 {代码...} 安装 nghttp2 安装 nghttp2 ad 工具(http2 的 C 库支持): {代码...} 更新到最新的 curl 版本:...
    2016-03-07
    1