New StateManager Release

I implemented a few changes to the StructureTooBig StateManager -- the first being the main namespace is now StateManager (formerly StateHandler -- first mentioned in this post).  This was done mainly to avoid an implied confusion with the name "handler." 

The State class now contains a SessionExpireMinutes property that can be set programmatically; the default is set via the config file.  The big change in this release is the cookie spanning ability.  The module can span the serialized data across multiple cookies (up to the MaxCookies value specified in the config file).  As a general best practice, this should be kept to as few as possible -- generally 1 or 2.  However, the RFC does allow up to 20 unique cookies per domain, so it is possible to use more.

While stress testing, I noticed that IIS returns a 400 Bad Request error when sending a LOT of data through cookies.  I explained this a bit in my last blog post; in a nutshell, IIS rejects any request that has a header length of more than 16K.  I'm a bit surprised by this behavior (since it's well below what the RFC mandates), but it generally won't cause any issue (regardless of whether or not the StateManager is being used).  Nevertheless, it's a good limitation to be aware of -- if you're using the StateManager and, for whatever reason, need a cookie limit of 5 or more, IIS will likely generate 400 Bad Request responses.  For more info on how to change this setting, see this Microsoft INF: Http.sys Registry Settings.
Comments are closed

My Apps

Dark Skies Astrophotography Journal Vol 1 Explore The Moon
Mars Explorer Moons of Jupiter Messier Object Explorer
Brew Finder Earthquake Explorer Venus Explorer  

My Worldmap

Month List