We are currecntly running Episerver on Amazon. I want to get rid of the SQS and SNS queues, ie the way Episerver invalidates the in memory cache on each of the servers. I see that https://azure.microsoft.com/en-gb/solutions/architecture/digital-marketing-episerver/ suggests using redis for caching. Can anyone point me in the direction of a nuget package that does this or give me some insight as to how I can get rid of the SQS queus.
That is a great question! I am a big fan of Redis, which is why me and my team succesfully has used StackExchange.Redis for similar purposes in larger scale Episerver CMS and Episerver Commerce projects. Would recommend you to have a look at Episervers Event Broker and the WcfEventProvider implementation in EPiServer.Events.Providers. Since it's considered an Episerver Internal, you'll have to step carefully. Have in mind that Episerver's EventProviders aren't interchangeable per se, so you'll have to work look in to replacing the EPiServer.Events.Providers.Internal.EventProviderServiceFactory (ResolveDefaultProvider) to get your implementation considered runtime.
Would love to hear more about how it goes! Let me know if you have additioonal questions.
/Casper Aagaard Rasmussen
Thansk for replying. Looking at https://azure.microsoft.com/en-gb/solutions/architecture/digital-marketing-episerver/ it suggests that the code is already written and part of Episerver.
That is, to my recollection, not correctly documented. Episerver DXC Service uses the Azure ServiceBus (hence not Redis) for distribution of events in their true cloud setup. You can have a look at Episerver.Azure, which includes an AzureEventProvider relying on Microsoft's own Microsoft.ServiceBus code APIs. Probably not an option for you, since you're using Amazon, which was why I did not mention this package in the first place.
Hope that clarified your question.
@Adam, there are a number of out-of-the-box usecases for Redis with Episerver e.g. out-of-process session storage. We don't however ship with a Redis content cache at the moment, but rely on service bus for invalidation messages as Casper mentions.