码迷,mamicode.com
首页 >  
搜索关键字:gevent libev gfirefl    ( 592个结果
[gevent源码分析] c-ares异步DNS请求
c-ares是异步DNS请求库,libcurl,libevent,wireshark都使用了c-ares,gevent1.0版本前使用的是libevent, 所以它的DNS请求也是使用c-ares,1.0版本后使用cython封装了c-ares。c-ares官方文档,http://c-ares.haxx.se/docs.html。...
分类:其他好文   时间:2014-09-17 01:11:11    阅读次数:864
使用gevent提高IO繁忙型wsgi服务的并发量(转)
add by zhj:个人认为gevent还是更牛逼一些,当然,这只是我简单的分析,没有试验过。对比分析如下:使用Tornado,启动一个进程,N个线程使用Gevent,启动一个进程,N个协程CPU除了执行用户代码外,就是调用调用程序进行线程/协程切换。而协程切换要比线程切换的开销小,速度快,所以G...
分类:其他好文   时间:2014-09-14 02:32:06    阅读次数:513
[gevent源码分析] libev cython绑定core.pyx
gevent core就是封装了libev,使用了cython的语法,感兴趣童鞋可以好好研究研究。其实libev是有python的封装pyev(https://pythonhosted.org/pyev/),不过pyev是使用C来写扩展的,代码巨复杂。在看core.pyx代码之前先学习一下core.pyx用到的cython知识。一: cython基础知识1.cdef, def, cpdef的区别 ...
分类:其他好文   时间:2014-09-13 20:09:35    阅读次数:354
基于gevent全国手机号段spider蜘蛛爬虫
首先介绍下python异步执行,python有两种方法编写异步代码:1、corutines协程(也称为greenlets)2、回调gevent是greenlets的一种实现方式,可以通过pip方便的安装gevent模块。gevent执行方式实际上是代码块的交替执行,具体的可以看下这篇blog,我就不...
分类:移动开发   时间:2014-09-10 17:22:50    阅读次数:499
libevent安装
libevent : 名气最大,应用最广泛,历史悠久的跨平台事件库;libev : 较libevent而言,设计更简练,性能更好,但对Windows支持不够好;libuv : 开发node的过程中需要一个跨平台的事件库,他们首选了libev,但又要支持Windows,故重新封装了一套,*nix下用l...
分类:其他好文   时间:2014-09-10 15:32:10    阅读次数:584
Gevent源码之loop的实现
gevent之所以性能好,最主要就得益于对libev的封装,这里就来看看这部分具体的实现。。。 稍微看一下libev的用法就知道,libev将各种事件都定义为了watcher,这里包括了定时,io等等。。 在gevent主要就是对libev的loop以及watcher进行了封装。。这部分采用的是cython来写的。。...
分类:其他好文   时间:2014-09-09 16:06:48    阅读次数:349
mac 10.9 安装 gevent
安装步骤:Gevent依赖libevent和greenlet,需要分别安装。1,安装 macport (如已安装,可以跳过)2,通过终端 键入:sudo port install libevent3,安装 pip : sudo easy_install pip4,安装 greenlet :sudo ...
分类:其他好文   时间:2014-09-09 15:06:38    阅读次数:227
[gevent源码分析] gevent两架马车-libev和greenlet
本篇将讨论gevent的两架马车-libev和greenlet如何协同工作的。gevent事件驱动底层使用了libev,我们先看看如何单独使用gevent中的事件循环。#coding=utf8 import socket import gevent from gevent.core import loop def f(): s, address = sock.accept() p...
分类:其他好文   时间:2014-09-08 01:04:46    阅读次数:396
Socket网络编程--Libev库学习(3)
这一小节继续讲解各个观察器(Watcher). 上一小节已经讲解了ev_io(IO可读可写观察器),ev_stat(文件属性变化观察器),ev_signal(信号处理观察器),ev_timer(定时器),ev_periodic(周期任务处理),ev_child(子进程状态变化观察器)。这一小节...
分类:其他好文   时间:2014-09-07 02:11:24    阅读次数:415
使用 libevent 和 libev 提高网络应用性能——I/O模型演进变化史
构建现代的服务器应用程序需要以某种方法同时接收数百、数千甚至数万个事件,无论它们是内部请求还是网络连接,都要有效地处理它们的操作。 有许多解决方案,但事件驱动也被广泛应用到网络编程中。并大规模部署在高连接数高吞吐量的服务器程序中,如 http 服务器程序、ftp 服务器程序等。相比于传统的网络编程方式,事件驱动能够极大的降低资源占用,增大服务接待能力,并提高网络传输效率。 这些事件驱动模型中, libevent 库和 libev库能够大大提高性能和事件处理能力。在本文中,我们要讨论在...
分类:其他好文   时间:2014-09-05 04:29:41    阅读次数:394
592条   上一页 1 ... 55 56 57 58 59 60 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!