2

I am working in a project where I was suggested that data caching might be useful.

I came across Apache Ignite but I am unable to understand if it is in fact just and in memory store or is it a layer above the database. If there is any clear explanation of how to integrate this into a .Net web application, it will be very helpful.

Nikhil Girraj
  • 1,135
  • 1
  • 15
  • 33

2 Answers2

3

You can use Ignite as a read-through / write-through cache.

Have a look at these pages:

https://ignite.apache.org/use-cases/caching/database-caching.html https://apacheignite-net.readme.io/docs/persistent-store

kemiz
  • 66
  • 3
2

Apache Ignite is a distributed in-memory platform. It provides a transactional key-value storage as well as compute capabilities and other features. Generally it resides between applications and data sources (having the external data source is optional though).

To integrate with a .NET application simply run an embedded node using Ignition.Start() method. You can then add as many standalone nodes as you like to scale out.

Refer to this documentation for more info: https://apacheignite-net.readme.io/docs/getting-started-1

Valentin Kulichenko
  • 8,365
  • 1
  • 16
  • 12
  • That's what I read but I couldn't figure out how does the data the database (the data source) stay in sync with the cache? Is there any database interaction that I am missing out reading on? – Nikhil Girraj Feb 12 '16 at 02:34
  • @NikhilGirraj Cache talks to database through `ICacheStore` interface. See this page for details: https://apacheignite-net.readme.io/docs/persistent-store – Valentin Kulichenko Feb 13 '16 at 06:46