WEB开发网
开发学院软件开发Python 使用Twisted建立你的服务器 阅读

使用Twisted建立你的服务器

 2010-09-22 11:15:34 来源:WEB开发网   
核心提示: 请求和实例化的顺序是reactor、factory、protocol,但是真实的开发顺序返回是倒过来的,使用Twisted建立你的服务器(2),因为你可能最初始得到的需求是要用什么协议,在设计协义时才能了解需要哪些持久数据和在所有的用户请求是需要共享的内容,它所做的事就是将客户机发过来的数

请求和实例化的顺序是reactor、factory、protocol。但是真实的开发顺序返回是倒过来的,因为你可能最初始得到的需求是要用什么协议,在设计协义时才能了解需要哪些持久数据和在所有的用户请求是需要共享的内容,以及初始化时所需要完成的事务,最终你才能依据你要应用的平台来考虑优化的方法。我们先来看看如何完成一个自己的协议开发以适用于twisted框架。   

理解protocol的工作   

twisted的protocol是通过异步处理方式来处理数据的。这就意味着protocol会通过事件来进行网络数据的处理,并且在处理中不会进行任何等待。这是一个最简单的Echo协议的代码:  

 Toggle  line  numbers   
    1  from  twisted.internet.protocol  import  Protocol  
    2   
    3  class  Echo(Protocol):  
    4   
    5      def  dataReceived(self,  data):  
    6          self.transport.write(data) 

echo是一个非常简单的协议,它所做的事就是将客户机发过来的数据完整的反回给客户端。这里它没有响应所有的方法,但是也是一个可以使用并且运行的协议。下面的代码响应了另一个事件:  

 Toggle  line  numbers   
    1  from  twisted.internet.protocol  import  Protocol  
    2   
    3  class  HelloHD(Protocol):  
    4   
    5      def  connectionMade(self):  
    6          self.transport.write("Hello  This  is  HD's  Test  protocolrn")  
    7          self.transport.loseConnection()
 

Tags:使用 Twisted 建立

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接