0

I am trying to implement caching in my application. We are using Oracle database, asp.net web api to serve data to ui. Api calls take more time, so we are thinking of implementing caching. Our code is deployed on 2 servers with load balancers. How caching should be implemented. What i am planning to implement is, There should be a service API on any server, this api will store all data in memory. Ui will call our existing API, hit can go to any node, this api then will get data from new api(cache) and serve it to ui. Is this architecture correct for distruted caching. Can any one share their experience or guidance to implementation?

user3176053
  • 11
  • 1
  • 5

1 Answers1

0

You might want to check NCache. Being a distributed caching solution, it provides first class support for sharing cache data between multiple clients due to the ache process running autonomously outside the address of any one application address space.

For your case, every web server in your load-balanced web farm will have be the client of NCache and have direct access to the cache servers. All the web servers,being clients to a central caching solution, will see the same cache data through simple-to-use NCache APIs. Any modification through insert, update or delete cache operations will be immediately observable to all the web servers.

The intelligence driving NCache allows for a seamless behind-the-scenes handling of all the tasks of storing and distributing the cache data among multiple cache server nodes on which the cache instance is distributed.

Furthermore, all the caching operations are completely independent of the framework used for database content retrieval and can be applied equally well with NHibernate, EF, EF Core and, of course, ADO.NET.

You can find more information about how to integrate NCache into your web farm environment and much more by using the following link:

http://www.alachisoft.com/resources/docs/ncache/admin-guide/ncache-architecture.html

Shoeb Lodhi
  • 156
  • 1
  • 2