Download here
Mirror 1 - 32 bit .NET 2.0 [MSI]
Mirror 2 - 64 bit [MSI]
An application used for caching clustered objects in .NET
NCache is a clustered object cache for .NET that will also include a Clustered ASP.NET Session State.
This Clustered Session State is much faster than the standard ASP.NET Session State and handles server-farm configuration much better. It has a better performance than ASP.NET Session State, is more scalable, and more reliable.
NCache runs faster because unlike ASP.NET Session State that either keeps its data in SQL Server or on one computer, NCache Clustered Session State keeps it replicated on all servers in the farm. And, this also makes it more scalable because the load is not put on a single computer. And, finally, it is more reliable because there is no single-point-of-failure due to replicated clustering.
NCache as an object cache boosts .NET application performance. It not only lets you cache read-only data but also complex transactional data with relationships. NCache provides a graphical tool for configuring and monitoring clustered caches from a single computer.
NCache also includes a Clustered Session State for ASP.NET that lets you use sessions in server-farms without fearing single-point of failure and slow performance of Microsoft's ASP.NET Persistent Session State.
Here are some key features of "NCache":
· Light-weight .NET Client
· NCache now has a light-weight client that is more scalable and faster than 3.0. This light-weight client uses our own socket level protocol to talk to NCache server (either locally or remotely).
· Light-weight Java Client
· NCache does not rely on any Java-to-.NET interoperability bridge and instead uses its own socket level protocol to talk to the NCache server (just like the .NET light-weight client). Now you can have your Java applications use NCache as a clustered object cache. This protects your investment in NCache and allows you to keep one cache deployed and used by multiple applications. Java client works the same way as .NET client. The Java client can run on any Java compatible platform.
· Failover in Remote Light-weight Clients
· Both Java and .NET light-weight clients have failover capability. This means that if the primary server they're connected to goes down, they'll automatically connect to another server in the cluster. And, you can specify the priority of these servers for each client differently. Additionally, when new servers are added or removed at runtime, this information is passed on to the remote clients so they can use them for failover as well.
· Security
· NCache now provides security with authentication and
· authorization built into the product. Authentication is done through LDAP. NCache allows you to specify administrators and users. Administrators can manage the cluster while the users can only make runtime API calls to a specific cache.
· Application connects to multiple caches
· NCache client applications can now connect to multiple caches simultaneously. This allows you to keep multiple caches for different purposes and share them across applications more effectively.
· Multi-key event notifications
· Applications can register interest into multiple items in the cache to be notified when they're updated or removed. Then, whenever these items are updated or removed, the client application is notified anywhere in the cluster.
· Synchronize items in multiple caches
· A new cache dependency called CacheSyncDependency is added that allows items in one cache to be dependent on items in another cache. This way, for example, you can have a Local Cache that keeps items frequently used by your application and a Clustered Cache that keeps a larger number of items being shared with other applications. And, your local items are kept synchronized with the clustered cache so you never have any data integrity problems while improving your app performance even further.
· Cluster Management Events
· NCache fires events whenever a node joins or leaves the cluster or when a client finds that its server has gone down and it now needs to connect with another server. You can write hooks for these events and take appropriate actions when these events occur.
· Cache Management API
· You can now manage the cache through and API (in addition to NCache Manager and command line tools). You can start or stop a cache from an API now.
· Multiple Cache instances on same server (TCP port range)
· You can now run multiple cache instances (as InProc) on the same server without any port conflict. Now, you can specify a range of TCP ports to be used for cache clustering instead of only one port previously. This way, multiple instances of the cache can run with each instance using one port.
· Callbacks for Asynch operations
· You can now specify a callback for AddAsync, InsertAsync, and RemoveAsync operations. This callback is called when the operation completes either successfully or with a failure.
· Performace improvement to Partitioned Cache with Replicas
· NCache has now optimized communication in the cluster for this topology.
· Partitioned-Backup Cache
· Now you can backup your data on partitioned cluster, to provide a fail-safe environment. Data on master node will automatically be replicated and in case of failure, data can be accessed from backup nodes until the master node is up and running. It can also be called Replicated Partitioned Cache.
· Compact Serialization
· Provides an efficient way to serialize objects, that has performance and storage advantage over .NET serialization.
· Bulk Operations
· Allows an application to add, update, remove, and get a collection of key-value pair in a single method call. A call effective way for primitive cache operations.
· Manual Data Distribution using Data Grouping and Data affinity
· Normally data is distributed evenly over a partitioned cluster. Manual Data Distribution allows the user to change the distribution policy. Logical groups are defined for the data distribution. Concept of Data Affinity of a node with specific group is also introduced that ensures that a data targeted for the group must reside within the node showing affinity of the group data.
· Custom Notifications
· Allows an application to call a single method that invokes handlers of all subscribers. In a clustered environment custom notifications are a convenient means of communication among the participants of the cluster. Even in local environments a producer consumer style communication between applications is easily achieved using this facility.
· Custom Session State Store Provider
· Provides a custom SessionStateStoreProviderBase implementation, that allows you to transparently save and retrieve ASP.NET session-state object within a web-farm.
· InProc Cache Monitoring
· Allows you to monitor caches that are running in your application process, both clustered and local.
· Integration for MS Enterprise Library 2005 & 2006 Caching
· Application Block
· Now you can have NCache as a CAB Backing store.
· Object Queries
· Allows an application to query for the objects in the cache using a SQL like syntax.
Requirements:
· Internet Information Server (IIS).
· NET Framework 1.1(preferably w/ SP1)
· PC with a Pentium III-class processor, 600MHz
· 512 MB
· 32 MB on installation drive. More is required if disk based storage options are used.
· 800 x 600, 256 colors
· Microsoft Mouse or compatible pointing device
Limitations:
· 60 days trial
What's New in This Release:
· Supports Transactions,
· Optimistic locking,
· Object querying,
· Compact serialization,
· Backup nodes for Partitioned Cache,
· ASP.NET Sessions Custom Store