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

From AOLserver Wiki
Jump to navigation Jump to search
m
m
Line 1: Line 1:
 
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.
 
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.
  
* 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.
+
=== Connection Management: ===
* 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.
 
 
 
=== Connection Management ===
 
  
 
* New '''ns_pools''' command to map method/URL's to specific thread pools.
 
* 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.
 
* New '''ns_limits''' command  control the number of threads executing and/or waiting for execution by method/URL.
  
=== I/O Features ===
+
=== I/O Features: ===
  
 
* New '''Ns_QueueWait''' API to enable event-driven callbacks in the driver thread before dispatching to pools for processing.
 
* 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.
 
* Added ability to manage larger file uploads by spooling to a temporary file.
* 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.
 
  
 
=== ADP Improvements: ===
 
=== 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 '''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 output buffer improvements via new Ns_ConnFlush.
Line 23: Line 20:
 
* 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.
  
=== Tcl Improvements: ===
+
=== 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_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.
 +
* 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.

Revision as of 02:37, 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.

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.
  • 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.