Performance Increase and Decreased Transaction Sizes

In NetPhantom 3.60 an algorithm for string caching has been implemented. When a panel is created on the client side or when an existing panel is updated, a transaction is sent from the NetPhantom Server. This transaction defines the panel components and attributes. A panel contains a lot of text strings in menu items, static text, listbox cells, etc. Many of these strings exist in several panels so caching of these strings makes the transactions smaller. Very often an end-user works with a limited set of panels/functions in the application. The strings for the panels are then be cached even better, thus reducing the transaction sizes even more.

The reduction of the transaction size using string caching is in average about 30 %. If the NetPhantom Client is connected to the Server using SSL and a slow communication line, the performance increases about 50 %!

Memory Requirement

The string caching algorithm is configured using three parameters: number of cached strings (stringCount), minimum length of a string (minLen) and the maximum length of a string (maxLen). The length of the strings is one byte per character (for codepage ISO 8859-1) and twice the character count for Unicode (e.g. Greek).

The stringCount parameter range is 50 to 8192, minLen range is 4 to 2047 and maxLen range is minLen + 1 to 2048.

The string caching requires more memory on the client and server side. The client cache memory requirement is about:

    2 * stringCount * averageStringLength

where averageStringLength normally is (minLen * 5 + maxLen) / 6.

Note: As the cache is client-related, the memory requirement in the server has to be multiplied with the number of concurrent users.