Hi,
The Redis Cache can indeed have some value when using only a single App Service instance.
The cache will retain information about task- and report pop-ups as well as new rows and row editing and the information about process flows that await user interaction.
This means this information is not lost when the App Service is restarted.
Take a look at Azure App Service deployment slots as well. In conjunction with a Redis cache, this will allow you to achieve zero-downtime Indicium upgrades.
While these scenarios are not really horizontal scaling, where multiple instances run side-by-side, the behavior is kind of similar. You are allowing seamless transition of an end user to different instances of Indicium. In this case, an Indicium runtime shutting down and a new Indicium runtime being booted up.
Note: using a Redis cache in and by itself will not increase performance. If anything, it will degrade performance a bit due to the overhead of having to store and load information externally instead of having all this data in-memory.
We are already using deployment slots in conjunction with deployment of Universal and Indicium from Azure Devops.
But thank you for confirming my expectation regarding the use of Redis, this gives me reason enough to start implementing it :)