Latest release of The Server Framework: 6.3

Version 6.3 of The Server Framework was released today.

This release includes the following, see the release notes, here, for full details of all changes.

  • Performance improvements on Vista and later operating systems. See here for more details.
  • Performance improvements for some designs of datagram server by reusing sockets and buffers more aggressively and thus avoiding the allocators in some situations
  • A redesigned the timer queue to improve timer dispatch performance. See here for more details.
  • A new implementation of the timer queue interface, implemented as a timer wheel, which is optimised for timers where the maximum timeout is known and is relatively small (ideal for most situations where timeouts can be guaranteed to be less than 30 mins). See here for more details.
  • Monitoring interfaces for timer queues and the new timer wheel.
  • Buffer allocation contention monitoring. See here for more details.
  • Added a “low contention” buffer allocator which relies on multiple buffer pools to avoid contention on any one pool.
  • Added a “reusable id” manager which will manage a pool of ids which can be reused thus avoiding id duplication due to id wrap.
  • Added a simple ring buffer class.
  • Added a recursion limiter which will prevent some kinds of servers from experiencing potentially unbounded recursion during read and write completions when certain 6.2 performance optimisations are enabled. See here for more details.
  • Lots of changes to the Service Tools library, see here for more details.
  • Enabled hosting of the .Net 4.0 CLR and ‘side by side’ multiple CLR version hosting via the .Net 4.0 hosting API.