Version 1.460 for D3 is available only to registered customers / pre-release.
There is a problem with Help|Registration; it does nothing. However your prior hub unlock code will still be in effect if you are upgrading. If you need to install on a new machine, contact email@example.com for a .reg file which you can use to bypass the problem. (fixed in 1.47)
You may distribute VAR files into subdirectories, in order to improve performance and/or isolate sessions by AppID. (latter still pending) There is a new WebInfo Default for this configuration, called Session Mask.
Sessionmask defaults to *.var which results in session file names like 123456.var when digits=6. (i.e. no change from prior versions of WebHub)
The purpose of masks is to let you lower the number of files per directory by mapping the file-name onto a pattern which contains directory markers.
mask = *.var 1 directory for all sessions #\*.var 9 directories, 1..9. ##\*.var 90 directories, 10..99. #\##\*.var 810 directories, 1..9 * 10..99.The above patterns are recognized by WebHub and directories for these pattern will be created in advance, as soon as the mask is set. Existing Sessions will be moved into and out of these path when you switch between any of the above masks
You may also use other types of masks, such as '###\###\*.var and use Sysutils.CreateDir(const Dir:String); to precreate these for you. --- just delete existing session files ahead of time.
Customizing the session file mask is done to make inspecting sessions quick by keeping the likely number of sessions in any one directory to under the point where explorer or file-manager start to slow down. 1000 seems to be a good goal. .... so, if you have the hub deleting sessions after 24hrs of inactivity you can run with one directory and the '*.var' pattern.
If you get from 1000 to 10000 new sessions per day, consider running with '#\*.var' for about 110..1100 sessions per dir.
##\*.var will make browsing through 100,000 sessions easy as each dir will have only about 1100 files.
Want to store sessions permanently? with #\##\*.var you can address 1 million files swiftly.
When using masks, the original file-name is spliced up into pieces that make up the path and the balance is used for the name.
123456.var with a mask of '#\#\#\#\#\*.var' becomes 1\2\3\4\5\6.var
Shortening the name in this manner assists (at least) NTFS (Windows NT File System) to retrieve the files faster.
function EncodeHTML(const sSrc: string; mode: THighCharEncoding): string;