Difference between revisions of "What's new in 4.5"

From AOLserver Wiki
Jump to navigation Jump to search
m
m
Line 19: Line 19:
 
* Added gzip output compression.
 
* Added gzip output compression.
 
* Added streaming output in chunked-encoding format instead of the previous "response with no length" HTTP/1.0 method.
 
* Added streaming output in chunked-encoding format instead of the previous "response with no length" HTTP/1.0 method.
 +
* Enhanced ADP error handling and reporting.
  
 
=== Other Improvements: ===
 
=== Other Improvements: ===
Line 24: Line 25:
 
* New '''Ns_TclRegisterTrace''' API to enable callbacks at key state transition points in a much more natural way.  The [[ns_ictl]] command has been updated to support script-level traces.
 
* New '''Ns_TclRegisterTrace''' API to enable callbacks at key state transition points in a much more natural way.  The [[ns_ictl]] command has been updated to support script-level traces.
 
* New '''Ns_Task''' API designed to replace the old Ns_SockCallback API which didn't do a very good job at managing timeouts along with I/O events.
 
* New '''Ns_Task''' API designed to replace the old Ns_SockCallback API which didn't do a very good job at managing timeouts along with I/O events.
 +
* New '''ns_returnmoved''' command to return 301 http status code and redirect to a new URL.
 +
* New '''ns_cache''' command based on ideas from the ns_cache module.  This is not backward compatible with the ns_cache module.
 +
* Added new '''ns_register_fastpath'''' command to re-enable fastpath after a previous call to '''ns_register_proc'''.
 +
* Added ability to access more AOLserver functionality from a tclsh (nsv_*, ns_thread, etc).
 
* Stack checking has returned.  In a multi-threaded application like AOLserver, stack checking is important for detecting buffer overruns and deep call trees blowing your thread stack, etc.
 
* Stack checking has returned.  In a multi-threaded application like AOLserver, stack checking is important for detecting buffer overruns and deep call trees blowing your thread stack, etc.
 
* More detailed information when logging uncaught Tcl errors.  Especially for connection threads, details of the HTTP request are logged to make diagnosing the root cause of errors easier.
 
* More detailed information when logging uncaught Tcl errors.  Especially for connection threads, details of the HTTP request are logged to make diagnosing the root cause of errors easier.

Revision as of 02:53, 22 February 2006

This is a partial list of new features and major changes in AOLserver 4.5 (compared to 4.0). If you know of anything that is missing, please add it.

Connection Management:

  • New ns_pools command to map method/URL's to specific thread pools.
  • New ns_limits command control the number of threads executing and/or waiting for execution by method/URL.

I/O Features:

  • New Ns_QueueWait API to enable event-driven callbacks in the driver thread before dispatching to pools for processing.
  • Added ability to manage larger file uploads by spooling to a temporary file.

ADP Improvements:

  • Added a new execution caching technique at the ns_adp_include level which allows you to save the results of execution of an included ADP and includes below that for reuse on subsequent connections up to a specified time.
  • Added singlescript config option which turns ADP pages into a single script enabling syntax such as "<% foreach e $list { %> element <%= $e %> here <% } %>".
  • Added output buffer improvements via new Ns_ConnFlush.
  • Added automatic UTF-8 to output charset encoding.
  • Added gzip output compression.
  • Added streaming output in chunked-encoding format instead of the previous "response with no length" HTTP/1.0 method.
  • Enhanced ADP error handling and reporting.

Other Improvements:

  • New Ns_TclRegisterTrace API to enable callbacks at key state transition points in a much more natural way. The ns_ictl command has been updated to support script-level traces.
  • New Ns_Task API designed to replace the old Ns_SockCallback API which didn't do a very good job at managing timeouts along with I/O events.
  • New ns_returnmoved command to return 301 http status code and redirect to a new URL.
  • New ns_cache command based on ideas from the ns_cache module. This is not backward compatible with the ns_cache module.
  • Added new ns_register_fastpath' command to re-enable fastpath after a previous call to ns_register_proc.
  • Added ability to access more AOLserver functionality from a tclsh (nsv_*, ns_thread, etc).
  • Stack checking has returned. In a multi-threaded application like AOLserver, stack checking is important for detecting buffer overruns and deep call trees blowing your thread stack, etc.
  • More detailed information when logging uncaught Tcl errors. Especially for connection threads, details of the HTTP request are logged to make diagnosing the root cause of errors easier.