常用结构:1.Event类,事件主要用于Greenlet之间的异步通信e=gevent.event.Event()->Event说明:创建一个信号对象e.set()->None说明:设置标志位e.clear()->None说明:清除标志位e.wait()->None说明:阻塞直至标志位被设置#!/usr/bin/envpython
#-*-coding:utf-8-*-
"""
..
分类:
编程语言 时间:
2016-10-17 07:27:07
阅读次数:
282
本节内容 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 Python连接Mysql数据库操作 RabbitMQ队列 Redis\Memcached缓存 Paramiko SSH Twsited网络框架 协程 协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是 ...
分类:
编程语言 时间:
2016-10-14 17:05:49
阅读次数:
302
gevent是一个基于协程的python网络库. 特性: 1.基于libev的事件循环 2.基于greenlet 轻量级的执行单元 (what is greenlet ?) 3.来自python标准库的重用API (don't know what's this mean) 4.能够使用 阻塞sock ...
分类:
其他好文 时间:
2016-10-13 01:32:06
阅读次数:
271
大家的回答都有点片面,更多的关注web框架成,其实tornado远远不止这些,且听我慢慢到来1.高性能的网络库,这可以和gevent,twisted,libevent等做对。提供了异步io支持,超时事件处理,在此基础上提供了tcpserver,httpclient,尤其是curlhttpclient ...
分类:
其他好文 时间:
2016-09-23 12:48:29
阅读次数:
257
浏览网页时,浏览器会传HTTP 请求到服务器,服务器会根据请求将网页的内容传给浏览器,但是在很多的情况下,使用者会需要看到最新的即时性资讯,例如观看股票市场行情,而在以前只能靠着重新载入网页才能获得最新信息,但是这样不但很浪费时间,也会佔用很多不必要的网络资源,并不是一个好的方式,长轮询就是解决这个 ...
分类:
其他好文 时间:
2016-08-29 17:43:27
阅读次数:
143
目录:一、线程1.线程基本操作1.创建线程的方式2.线程锁3.信号量以及事件4.条件以及定时器2.队列的使用1.队列的使用2.生产者消费者模型3.自定义线程池二、进程1.进程基本操作1.创建进程2.进程锁2.进程池三、协程1.greenlet2.gevent四、缓存1.python操作memcache2.python操作red..
分类:
编程语言 时间:
2016-08-29 00:24:16
阅读次数:
312
原文链接:http://blog.miguelgrinberg.com/post/easy-websockets-with-flask-and-gevent 介绍部分就先不翻了 This weekend I decided to take a short vacation from my book ...
分类:
Web程序 时间:
2016-08-16 22:02:20
阅读次数:
439
gevent学习系列第三章,前面两章分析了大量常用几个函数的源码以及实现原理。这一章重点偏向实战了,按照官方给出的gevent学习指南,我将依次分析官方给出的7个数据结构。以及给出几个相应使用他们的例子。 1.事件: 事件是一个可以让我们在Greenlet之间异步通信的形式贴上一个gevent指南上 ...
分类:
编程语言 时间:
2016-07-29 22:39:21
阅读次数:
208
在进行gevent源码学习一分析之后,我还对两个比较核心的问题抱有疑问: 1. gevent.Greenlet.join()以及他的list版本joinall()的原理和使用。 2. 关于在使用monkey_patchall()之后隐式切换的问题。 下面我将继续通过分析源码及其行为来加以理解和掌握。 ...
分类:
编程语言 时间:
2016-07-29 18:28:03
阅读次数:
285
一. 进程: 基本使用 进程锁 进程池 进程数据共享 二. 线程: 基本使用 线程锁 线程池 队列(生产者消费者模型) 三. 协程: gevent greenlet 四. 缓存: memcache redis (一)线程: 所有的线程都运行于一个进程中,一个进程中可以执行多个线程。多个线程共享进程内 ...
分类:
编程语言 时间:
2016-07-22 21:14:31
阅读次数:
160