Changeset 107:7d875cf20263

Show
Ignore:
Timestamp:
02/12/10 06:25:11 (6 months ago)
Author:
olt@bogosoft.com
branch:
default
Message:

add minSpare, maxSpare, maxChildren and maxRequests options to paste server factories

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • flup/server/paste_factory.py

    r94 r107  
    4848def run_ajp_fork(wsgi_app, global_conf, 
    4949                 scriptName='', host='localhost', port='8009', 
    50                  allowedServers='127.0.0.1', debug=NoDefault): 
     50                 allowedServers='127.0.0.1', debug=NoDefault, 
     51                 minSpare=None, maxSpare=None, 
     52                 maxChildren=None, maxRequests=None): 
    5153    import flup.server.ajp_fork 
    5254    addr = (host, int(port)) 
     
    5456        debug = global_conf.get('debug', False) 
    5557    debug = asbool(debug) 
     58    prefork_args = {} 
     59    if minSpare is not None: 
     60        prefork_args['minSpare'] = int(minSpare) 
     61    if maxSpare is not None: 
     62        prefork_args['maxSpare'] = int(maxSpare) 
     63    if maxChildren is not None: 
     64        prefork_args['maxChildren'] = int(maxChildren) 
     65    if maxRequests is not None: 
     66        prefork_args['maxRequests'] = int(maxRequests) 
    5667    s = flup.server.ajp_fork.WSGIServer( 
    5768        wsgi_app, 
     
    5970        bindAddress=addr, 
    6071        allowedServers=aslist(allowedServers), 
    61         debug=debug, 
     72        debug=debug, **prefork_args 
    6273        ) 
    6374    s.run() 
     
    92103                  socket=None, umask=None, 
    93104                  multiplexed=False, 
    94                   debug=NoDefault): 
     105                  debug=NoDefault, 
     106                  minSpare=None, maxSpare=None, 
     107                  maxChildren=None, maxRequests=None): 
    95108    import flup.server.fcgi_fork 
    96109    if socket: 
     
    107120        debug = global_conf.get('debug', False) 
    108121    debug = asbool(debug) 
     122    prefork_args = {} 
     123    if minSpare is not None: 
     124        prefork_args['minSpare'] = int(minSpare) 
     125    if maxSpare is not None: 
     126        prefork_args['maxSpare'] = int(maxSpare) 
     127    if maxChildren is not None: 
     128        prefork_args['maxChildren'] = int(maxChildren) 
     129    if maxRequests is not None: 
     130        prefork_args['maxRequests'] = int(maxRequests) 
    109131    s = flup.server.fcgi_fork.WSGIServer( 
    110132        wsgi_app, 
    111133        bindAddress=sock, umask=umask, 
    112134        multiplexed=asbool(multiplexed), 
    113         debug=debug) 
     135        debug=debug, **prefork_args 
     136        ) 
    114137    s.run() 
    115138 
     
    135158                  scriptName=NoDefault, host='localhost', port='4000', 
    136159                  allowedServers='127.0.0.1', 
    137                   debug=NoDefault): 
     160                  debug=NoDefault, 
     161                  minSpare=None, maxSpare=None, 
     162                  maxChildren=None, maxRequests=None): 
    138163    import flup.server.scgi_fork 
    139164    addr = (host, int(port)) 
     
    141166        debug = global_conf.get('debug', False) 
    142167    debug = asbool(debug) 
     168    prefork_args = {} 
     169    if minSpare is not None: 
     170        prefork_args['minSpare'] = int(minSpare) 
     171    if maxSpare is not None: 
     172        prefork_args['maxSpare'] = int(maxSpare) 
     173    if maxChildren is not None: 
     174        prefork_args['maxChildren'] = int(maxChildren) 
     175    if maxRequests is not None: 
     176        prefork_args['maxRequests'] = int(maxRequests) 
    143177    s = flup.server.scgi_fork.WSGIServer( 
    144178        wsgi_app, 
     
    146180        bindAddress=addr, 
    147181        allowedServers=aslist(allowedServers), 
    148         debug=debug, 
     182        debug=debug, **prefork_args 
    149183        ) 
    150184    s.run()