首先,说一下为什么要用twisted。
我要写一个网络应用。我曾有两个选择,一,用C++的ACE去写;二,python的twisted写。想了想,python我更熟悉,开发效率更高,而且,去年我做新浪微博接入的时候,发现微薄广场的python调用接口,就是用的twisted。那么好,今年我也用twisted吧。
Twisted是基于事件的、异步网络通信框架。异步网络通信框架允许编写的程序在处理事件时保持响应,却不需要使用线程。(而同步的网络框架就要引入线程或者进程来处理了。比如fork,select。)
“当在一个线程中处理多个连接时,调度是应用程序的责任,而不是操作系统的,当每个连接准备读或写时,它通常通过调用一个已登记的函数来实现——通常被称之为异步,事件驱动,或基于回调机制的编程方式。”
“同步编程方式是:函数请求数据,等待数据,处理数据。异步编程则是:请求数据,当数据有效时,调用回调函数。”
安装twisted
windows的安装,很简单,就不多说了。
主要说一下linux下的安装。
首先要确保机器上有python。
然后安装setuptools
安装twisted
注意:
如果是在windows下安装,需要下载安装zope interface,在pypi上有,可以找相应的版本下载
否则会报错:
ImportError: Twisted requires zope.interface 3.6.0 or later: no module named zope.interface.