The SocketServer Module

Provides a high-level class-based interface to sockets

  • Encapsulates each protocol in a class (TCPServer, UDPServer, etc.)
  • Provides a series of handler classes that specify additional server behavior.
  • To create a network service, need to inherit from both a protocol and handler class.

Example

     # Simple time server
     import SocketServer
     import time
     # This class actually implements the server functionality
     class TimeHandler(SocketServer.BaseRequestHandler):
         def handle(self):
             self.request.send(time.ctime(time.time()))
     
     # Create the server
     server = SocketServer.TCPServer(("",8888),TimeHandler)
     server.serve_forever() 

Comments

  • The module provides a number of specialized server and handler types.
  • Ex: ForkingTCPServer, ThreadingTCPServer, StreamRequestHandler, etc.
<<< O'Reilly OSCON 2000, Advanced Python Programming, Slide 91
July 17, 2000, beazley@cs.uchicago.edu
>>>