NCache 4.6 - Online Documentation

Cache Isolation Levels

 
If your application is running on a server node (the node that is participating in the cluster), you can access the cache either as InProc or OutProc. For InProc,  cache lives inside your application process and performs all the clustering operations from there. For OutProc, you have to start the cache independently and then connect to it. Both access modes have their own pros and cons.
 
InProc mode in a replicated cache can give you really fast GET operations since you are accessing all the data from within your own memory space. However, since your application and the cache are sharing the same memory, you may face memory size limitation (in terms of how much you can cache).
 
Similarly, OutProc has benefit that multiple applications on the same machine can share a common cache. Additionally, since the cache lives in its own memory, you have more memory available to you. But, there is an overhead of transferring data between your application process and the NCache process.
 
 
OutProc requires that your .NET Assemblies (the ones that contain the objects you are going to add into NCache) are either registered in GAC or are located at $INSTALL/NCache/bin/service folder. Otherwise, NCache will not find your object definitions which it requires for .NET Serialization. And, this will result in NCache throwing an exception when you do Add, Insert, Get, or Remove operations.
 
To configure Cache Isolation Levels, please review Configuring Cache Isolation Levels.
 
 
See Also