A little about ISP Session
In the year, 2001, I was in a project, that required (a third party) enterprise -Session state- solution, written using C++, for a commercial bank. Since this
code was lacking, and not easy in usage, so I decided to write such a component myself, using VB 6 and this used ADODB to a SQL database. Funny was, that one of the first customers, more than 10 years later, asked for an upgrade .
The component allowed virtually the same syntax for Session state, as the classic ASP built in Session offered.
In 2005, this component was rewritten as a COM+ C++ component (called 'managed components', in those days), which utilized OLE DB templates.
As of Windows 2008 SP2, around 2011, the C++ component was converted back to a 'plain COM-object', which offered more compatibility and stability.
In 2014, a 'native' ASP.NET state provider, was build, which used the same persistance logic, as in C++.
However, since noSQL solutions offer incredible scalability improvements over SQL for this type of data, this provider, was adapted in 2015 to use Redis.
In November 2016, the state provider, was converted to a ASP.NET HttpModule, and AspNetCore Middleware was added, and published on Nuget.
And finally, the COM version, for Classic ASP, was adapted to use Redis as well. The C++ code has been greatly reviewed and revised, to use C++ STL, a library that one cannot beat so easily with custom code.