Source

CherryPy / test / benchmark.py

The branch 'cherrypy' does not exist.
Author Commit Message Labels Comments Date
Robert Brewer
Replaced request.remote_addr, remote_port, and remote_host with a single "remote" attribute, an instance of lib.http.Host, which has "ip", "port" and "name" attributes. Added a similar request.local attribute. Changed request() signature to (local, remote, scheme). This allows requests run behind multiple HTTP servers to know the address info for their particular connection.
Branches
cherrypy
Robert Brewer
WSGI-related changes: 1. Changed Request.run from request_line arg to deconstructed args: method, path, query_string, and protocol. 2. Moved HTTP protocol checking from _cprequest to _cpwsgiserver. What was cherrypy.response.version is now cherrypy.request.protocol (tuple form of SERVER_PROTOCOL). request.version and response.version attributes removed. _cpwsgiserver now writes out server.protocol, not SERVER_PROTOCO…
Branches
cherrypy
Robert Brewer
Changed server.start to server.quickstart, and server.start_all to server.start.
Branches
cherrypy
Robert Brewer
benchmark still needed socket-error suppression.
Branches
cherrypy
Robert Brewer
Updated benchmark to work with new _cpmodpy module.
Branches
cherrypy
Robert Brewer
Renamed httptools to "http" to reduce confusion with new cherrypy.tools. Moved non-Tool-related code from cptools to {{{lib/__init__}}}. Added docstrings.
Branches
cherrypy
Robert Brewer
Dispatch and config lookup now happens as early as possible, once per request (unless InternalRedirect is raised). Also moved the logging code out of {{{_cputil}}} and into {{{__init__}}}. xmlrpc still needs fixed so it doesn't re-write path_info.
Branches
cherrypy
Robert Brewer
Fix to benchmark.py for globalconf.
Branches
cherrypy
Robert Brewer
Root and config are now isolated per app: 1. object_path is now called path_info, and there's a new request.script_name attribute. This should equal the mount point of the current application. 2. cherrypy.root is gone, use cherrypy.request.app.root for now instead. Perhaps cherrypy.root will reappear and point to that. 3. cherrypy.tree.mount_points has been replaced with cherrypy.tree.apps, a dict of the form {script_name: Application(…
Branches
cherrypy
Robert Brewer
Moved the following config keys out of the "server." namespace (so that "server." may mean "httpserver"): * default_content_type * log_access_file * log_config_options * log_file * log_file_not_found * log_request_headers * log_to_screen * show_tracebacks * throw_errors
Branches
cherrypy
Robert Brewer
Separated cherrypy.server (HTTP) from cherrypy.engine (app): 1. Most CP apps must now make both a call to cherrypy.server.start(server=None) and a call to cherrypy.engine.start(blocking=True). 2. The on_start_server_list and on_stop_server_list are now on_start_engine_list and on_stop_engine_list. 3. "start_with_callback" is now an attribute of Engine. So is "request". 4. Server.start now takes a single "server" arg, which can be a server instance, a st…
Branches
cherrypy
Robert Brewer
Lots of changes to error and log handling: 1. Removed RequestHandled and InternalError. 2. Error response is now overridable by replacing request.error_response. Tools should do this in setup(). 3. New request.log_access attribute. 4. Moved response.handleError to request.handle_error. 5. Logging of tracebacks and request headers are now tools. 6. New ErrorRedirect tool class. 7. Tools may now be anonymous (not necessary to be place…
Branches
cherrypy
Robert Brewer
Removed a bunch of instances of the word "filter".
Branches
cherrypy
Robert Brewer
CP 3 initial checkin. Global filters have been replaced by request.hooks. Lots of renaming and reorg of modules.
Branches
cherrypy
Robert Brewer
Even more improvements to benchmark.py. New getopt options --ab=path and --apache=path. The modpython conf is now generated automatically.
Branches
cherrypy
Robert Brewer
server.thread_pool now defaults to 10.
Branches
cherrypy
Robert Brewer
Benchmark: changed 'chart' to 'report' throughout.
Branches
cherrypy
Robert Brewer
Benchmark: simpler, more inclusive detection of ab/apache not on system path.
Branches
cherrypy
Robert Brewer
Benchmark: fix for no ab in bash.
Branches
cherrypy
Robert Brewer
Speed tweak: you can now set max_header_size and max_request_size to 0 to explicitly skip using SizeWrappers.
Branches
cherrypy
Robert Brewer
New Engine.response_class attribute (which allows a new -null switch for benchmark.py, to show how much of the request is spent in the HTTP server as opposed to the Request object).
Branches
cherrypy
Robert Brewer
Improvements to benchmark.py. New "-modpython" switch which popens apache, runs the tests, then stops apache.
Branches
cherrypy
Robert Brewer
Set cherrypy.lowercase_api = True for benchmarks.
Branches
cherrypy
Robert Brewer
New test/benchmark module. Ugly, but gets the job done. Requires ab on your system path. Set log_to_screen to True if you encounter problems.
Branches
cherrypy