Mainstream Support for AppFabric 1.1. for windows server was came to an end on 4/11/2017. Are you still using the services with an extended support or looking for an alternative with Mainstream support?
Let’s dive into the topic and see what fits your application to replace AppFabric Caching Service.
Yes, I know, AppFabric is used not just for caching but also as a Hosting or Management/Monitoring of services and work flows. But, I would like to more focus on the Cache side as we have already got IIS to support Hosting with some manual effort when compared with AppFabric and we can have some custom solutions which can best monitor the applications or services.
If your application is in cloud, then you have a better option of Microsoft Azure Redis Cache which is based on a popular Open Source Redis Cache. Which is offered as platform-as-a-service (PaaS) by Azure and fully supported by Microsoft. Microsoft highly recommends moving from AppFabric Cache to Azure Redis Cache.
If you’re looking for an On-Premise solution, then you have Redis on Windows available from Open Source Community MSOpenTech for caching services.
But, both options don’t suit my application as it is an on-premise solution and would require an official main stream support. Then what else we got for my scenario? Let’s see.
Have you thought about removing caching altogether from your application? If yes, don’t do that unless you have a very simple application design without any distributed components integrating with several other systems for data. Yes, we need a caching solution to scale out your application seamlessly and allow customers to grow their transaction load without worrying much about load on other integrated systems.
The only alternative I found interesting and got recommendations from many people is NCache from Alachisoft. Which is extremely fast and scalable solution for caching. It comes with an official mainstream support from Alachisoft along with 24×7 support option for mission critical solution at an additional price.
So, I have chosen NCache Distributed Cache as an alternative to AppFabric Cache in my application. What next?
Here’s another interesting part if you start migrating your application NCache. We have two approaches to do so.
NCache provides a wrapper method to migrate application to use NCache instead of AppFabric with minimal changes. It works as a wrapper to use AppFabric method calls to call NCache API. It can be done with just 3 simple steps which are detailed here.
Another approach is to use Direct NCache API Calls to use the services. Unlike Wrapper method, we will have full control over the Caching framework of the application with this approach. We need to change all the AppFabric API calls with equivalent NCache calls by importing latest NuGet package for NCache.
I have also done a PoC to migrate to NCache and found it best suitable for my application. I would be very happy to hear from you guys if we have any better alternatives to AppFabric cache.
Here are some of the reference documents if you’re migrating to NCache.
- NuGet package for Direct API Calls
- NCache Wrapper Library
- Download NCache
- NCache Architecture & Topologies
- NCache Product Documentation
- AppFabric to NCache Migration Guide
- NCache Programmer’s Guide