Download Install Tutorial Docs FAQ Tools WikiLicense Team IRC Planet Involvement Shop Book

Changeset 990

Show
Ignore:
Timestamp:
03/02/06 03:07:36
Author:
fumanchu
Message:

Speed tweak: you can now set max_header_size and max_request_size to 0 to explicitly skip using SizeWrappers?.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/cherrypy/_cpwsgi.py

    r965 r990  
    129129        mhs = int(cherrypy.config.get('server.max_request_header_size', 
    130130                                      500 * 1024)) 
    131         self.rfile = httptools.SizeCheckWrapper(self.rfile, mhs) 
     131        if mhs > 0: 
     132            self.rfile = httptools.SizeCheckWrapper(self.rfile, mhs) 
    132133     
    133134    def parse_request(self): 
     
    148149                # Request header is parsed 
    149150                # We prepare the SizeCheckWrapper for the request body 
    150                 self.rfile.bytes_read = 0 
    151151                script_name = self.environ.get('SCRIPT_NAME', '') 
    152152                path_info = self.environ.get('PATH_INFO', '') 
     
    156156                mbs = int(cherrypy.config.get('server.max_request_body_size', 
    157157                                              100 * 1024 * 1024, path=path)) 
    158                 self.rfile.maxlen = mbs 
     158                if mbs > 0: 
     159                    if isinstance(self.rfile, httptools.SizeCheckWrapper): 
     160                        self.rfile.bytes_read = 0 
     161                        self.rfile.maxlen = mbs 
     162                    else: 
     163                        self.rfile = httptools.SizeCheckWrapper(self.rfile, mbs) 
    159164 
    160165 
  • trunk/cherrypy/test/benchmark.py

    r989 r990  
    2424class Root: 
    2525    def index(self): 
    26         return r"Hello, world\r\n" 
     26        return "Hello, world\r\n" 
    2727    index.exposed = True 
    2828     
     
    4242        'server.socket_host': 'localhost', 
    4343        'server.socket_port': 8080, 
     44        'server.max_request_header_size': 0, 
     45        'server.max_request_body_size': 0, 
    4446        }, 
    4547    '/static': { 
     
    261263        # Return without stopping the server, so that the pages 
    262264        # can be tested from a standard web browser. 
    263         run = lambda x: x 
     265        run = lambda: None 
    264266    else: 
    265267        def run(): 

Hosted by WebFaction

Log in as guest/cpguest to create tickets