Following new features are provided in NCache v5.3 SP6.
Following new features are provided in NCache v5.3 SP5.
Following new features are provided in NCache v5.3 SP4.
Following new features are provided in NCache v5.3 SP3.
Following new features are provided in NCache v5.3 SP2.
Following new features are provided in NCache v5.3 SP1.
Following new features are provided in NCache v5.3.
The NCache 5.3 SP6 release introduces the new Community Edition, updated licensing models, and additional deployment controls. Professional Edition has been discontinued in this release, and all Professional Edition customers are provided a free upgrade to Enterprise Edition. This version also adds support for monthly and hourly licensing, with hourly licensing limited to cloud deployments.
The new Community Edition offers a free, streamlined option with essential caching features, updated security support, and simplified licensing.
NCache now integrates with Azure/AWS Marketplaces, so you can purchase and pay for it from there. You deploy NCache servers yourself inside your Azure VNET or AWS VPC. This gives you more flexibility and control.
NCache now provides PowerShell Cmdlets for Azure and AWS to help automate NCache server deployments. These Cmdlets are provided in the PowerShell Gallery.
For Azure, they internally use Azure ARM templates and also a preconfigured NCache VM image for Windows Server 2022/2025 and Linux (Ubuntu). These Cmdlets provide the following capabilities:
AWS Cmdlets are going to be released very soon as part of NCache 5.3 SP6, and they will provide the same features and capabilities as Azure Cmdlets. They will also be available in the PowerShell Gallery.
NCache introduces tighter licensing and deployment controls to give enterprises more flexibility in managing server resources and subscription terms.
NCache has been upgraded to align with the latest .NET ecosystem, ensuring compatibility, performance, and long-term support.
In this release NCache introduces key enhancements in performance, security, and cloud integration. This release strengthens data caching efficiency, extends encryption and TLS 1.3 support, adds flexible licensing versioning, and ensures compatibility with Windows Server 2022 and 2025.
For developers building high-performance applications, NCache introduces powerful caching updates that enhance read speeds, boost continuous query responsiveness, and reduce overhead in CRUD operations.
The Full Data Client Cache goes a step further by caching entire datasets locally on the client machine. It offers the following benefits and options:
Significant enhancements have been made to the performance and stability of Continuous Query operations. These optimizations ensure faster real-time data updates and more reliable notifications, particularly in high-load environments. Users will notice improved response times for CQ-related events, ensuring more efficient data synchronization.
CRUD operations (Create, Read, Update, Delete) have been shifted from the protobuf serialization protocol to a much lighter binary protocol, which significantly reduces memory usage and CPU consumption during serialization and deserialization. This results in improved performance, especially under high transaction loads. The server remains backward-compatible with existing protobuf-based clients to ensure a smooth transition, while a full migration to the binary protocol will be completed in the upcoming v5.4 release; protobuf will continue to be supported for legacy clients.
A new versioning system for licensing plans has been introduced to provide greater flexibility in offering different licensing tiers. Previously, licensing was limited to fixed combinations of vCPUs and RAM. With evolving customer needs, particularly in cloud environments, new versions such as v2 for updated plans and v2_cloud for cloud-specific deployments are now available. This system gives more granular control over licensing rules while maintaining backward compatibility for existing customers on v1, ensuring a smooth transition and supporting future growth.
With extended TLS support, NCache strengthens secure communication by introducing TLS 1.3, flexible mutual TLS configurations, and encryption for management operations.
NCache now also supports TLS 1.3, the latest version of the Transport Layer Security protocol, ensuring secure and efficient communication.
NCache now supports the use of separate TLS certificates for clients and servers in mutual TLS (mTLS) configurations. This enhancement provides greater flexibility and security in enterprise environments where distinct certificate authorities or policies are required for client and server authentication. It ensures secure, compliant communication across distributed systems with fine-grained certificate management.
TLS support has been extended to management operations, ensuring that administrative communication is secure and compliant with modern security standards.
NCache introduces advanced key management and simplified administration to ensure stronger data protection and easier control of encryption settings.
NCache enhances data security by implementing robust encryption mechanisms at the cache level. These features ensure data confidentiality and compliance with security standards.
Two new PowerShell cmdlets, Enable-NCEncryption and Disable-NCEncryption, have been added to simplify the management of encryption settings on cache servers. These cmdlets allow administrators to enable or disable encryption without manually editing configuration files, making security management more efficient and less error-prone.
A new Cloud Service has been introduced to enable seamless integration with NCache Cloud, offering real-time telemetry and remote management capabilities. Here are the features of this service.
NCache 5.3 SP5 extends platform compatibility with official support for Windows Server 2022 and Windows Server 2025. This ensures seamless deployment and operation of NCache on modern infrastructure, helping organizations align with their IT upgrade and compliance strategies.
NCache now fully supports .NET 8 clients, with Linux support coming soon for cross-platform flexibility. Event notifications have also been optimized, delivering lower latency and higher throughput in high-transaction environments.
This release adds full support for .NET 8 clients. It enables developers to use the latest .NET 8 features and enhancements when building and managing distributed cache systems. Support for Linux-based .NET clients will be available soon, bringing cross-platform compatibility and greater flexibility in deployment.
Significant performance improvements have been made to the event notification system. These optimizations reduce latency and increase throughput for event notifications. As a result, NCache provides improved responsiveness and scalability in high-transaction environments.
This release has delivered major improvements across server-side execution, automation, and client connectivity. The highlights of the release include a unified Execution Service to smoothly run server-side code, automated provider deployment while adding nodes, and enhanced support for .NET and Java clients with TLS, Hibernate, and Spring integration. This release also offers an all-in-one Docker image for its Cache Server and Developer Editions for a smoother registration experience. NCache has also introduced Client Connection Routing via Load Balancer to facilitate its clients in scenarios where direct connectivity with servers is not feasible. Last but not least, usability upgrades in NCache Management Center add a layer of convenience for users.
This release streamlines server-side operations with a unified execution service, automated provider deployment, and updated .NET framework compatibility.
In NCache 5.3 SP3, a significant advancement has been made in server-side code execution with the introduction of the NCache Execution Service. This service represents a unified execution model that has been implemented in both the Java and .NET editions of NCache.
In the .NET edition, the service is specifically designated for the Cache Loader and Refresher code execution. For the Java edition, it is responsible for running all server-side user codes, including Cache Loader, Refresher, Readthrough, and Writethrough operations. This change ensures efficient and consistent operation across the Java platform.
To streamline the process of node addition to a cache cluster in NCache, this release offers automated deployment of server-side providers. Now the users no longer have to manually deploy these providers for features such as Readthrough, Writethrough, or Cache Startup Loader with each node addition to an existing cluster. NCache automatically deploys the necessary server-side providers for configured features when a new node is added to the cluster. This automation simplifies the process and ensures that new nodes are fully equipped to participate in the cache cluster.
This release discontinues support for .NET 4.6.1 and earlier versions, reflecting ongoing updates to technology standards. The minimum supported .NET client version is now .NET 4.6.2.
NCache 5.3 SP3 introduces a significant enhancement in the registration process, particularly for Docker instances. Previously, only a Server image was available on DockerHub for NCache, and users looking for a Developer installation had to create their own Docker images. With this update, a single published image on DockerHub can now be used flexibly for both Server and Developer installations. This enhancement not only brings convenience but also provides flexibility in configuring Docker instances according to specific requirements.
In NCache 5.3 SP3, a new feature has been introduced to facilitate NCache clients connecting to cache servers through a load balancer. This feature is particularly relevant in scenarios where direct connectivity with servers is not feasible, such as in environments using Kubernetes clusters or cloud subscriptions with restricted access (like Azure or AWS using Private Links).
Traditionally, clients had to connect to each server directly, but with a load balancer in place, servers now share cluster topology with the client after the first connection. The client then uses this information to establish connections to all servers through the load balancer, ensuring a complete and resilient cluster connection even without direct visibility of individual servers.
This release enhances the support for the Java client with architectural alignment to .NET, TLS support, and seamless integration with Hibernate and Spring frameworks.
The Java Client Cache architecture has been synchronized with the .NET client cache architecture. This synchronization includes the implementation of Readthrough and Writethrough mechanisms in the Java Client Cache, as well as enhanced synchronization between L1 and L2 caches. This alignment ensures consistency and efficiency across different platforms.
Enhanced security has been integrated into the Java client through TLS support.
Direct integration with the latest versions of Hibernate and Spring is now provided, streamlining the integration process. Previously, this integration was only available through the JCache interface.
The session management for Spring-based web applications has been introduced, enhancing the functionality of NCache in these environments.
This release improves usability with Management Center updates, enhanced configuration exports, and an updated free trial policy.
Notable improvements have been made in the NCache Management Center, including the ability to download log files. This new feature adds a layer of convenience for users managing cache servers. Additionally, the capability to start, stop, and restart NCache Service, NCache Execution Service, and NCache Bridge Service has been added, enhancing administrative control and flexibility.
The Export-CacheConfiguration command has undergone enhancements to improve the folder structure for exported cache configurations. It now includes an option to incorporate server-side feature deployments in exports, providing a more comprehensive configuration management capability. Moreover, the specification of a cache name for exports has been made mandatory, ensuring clearer and more precise configuration exports.
Upon creation of a cache using the exported configuration, NCache automatically deploys the required libraries along with the configuration.
This release provides improved Security and usability with Credential Caching, reducing costly LDAP/Active Directory calls. For better access control, NCache has introduced combined node and cache security, along with group-based authorization to streamline permissions, all supported by an intuitive interface for securing cache nodes. With stronger security, NCache has also extended its support for TLS encryption, through which you can now have server-to-server and bridge communications with the support for certificate placement in the personal store.
Moreover, to ensure stronger compliance, NCache provides an upgraded Active Directory provider. To better represent the role of NCache Manager, it has been renamed to NCache Management Center, along with improved authentication to ensure only authorized access. Finally, the new NCache Playground provides an interactive space to run samples, test features, and accelerate learning without needing a full development environment.
This release offers enhanced NCache security with credential caching, combined node and cache security, group-based authorization, and improved configuration tools.
NCache introduces a series of powerful user security enhancements designed to protect your caching environment, simplify authentication, and provide administrators with greater control over user access and authorization.
NCache has upgraded its LDAP provider for Windows-based servers. This upgrade takes advantage of the enhanced authentication and authorization capabilities available in Microsoft's latest LDAP implementation. Explore the capabilities of this upgraded LDAP provider through Microsoft's LDAP Connection documentation.
NCache now supports Credential Caching to enhance the performance and efficiency of authentication operations in the system. It provides a caching layer on top of the existing security provider, reducing the frequent authentication calls to the underlying authentication system (such as LDAP or Active Directory).
The following lines explain how you can use Credential Caching and disable it when required:
Upon successful authentication against the LDAP / Active Directory server, user credentials are cached in memory. This eliminates the need for reauthentication in subsequent requests for the same user. It improves NCache performance by reducing expensive trips to the LDAP/Active Directory servers and thereby reducing the load on your LDAP/Active Directory servers. This offers a great performance edge in high-transaction environments where NCache usually lives. However, the user experience is the same as before for specifying NCache security.
The Credential Caching feature is enabled by default and is easily configurable, so you can easily turn it off through a config file change. The NCacheServer.EnableCredentialCaching flag in the NCache service configuration file enables/disables this feature.
NCache Management Center, formerly known as NCache Manager, now includes authentication functionality. When a node is secured, it will prompt users to authenticate by asking for the login credentials. This ensures that only authorized users and configured node administrators can get access to the management center, providing an additional layer of security to your NCache environment.
For enhanced control and flexibility, NCache now offers combined node and cache security. It ensures that when security is enabled on a specific node, all caches on the respective node are automatically secured. Node administrators have full control over both cache and node management tasks, while cache users can be assigned to specific secured caches with access limited to cache operations via NCache APIs. This combination empowers administrators to tailor access permissions, ensuring that cache users have limited access to cache APIs, while node administrators have broader access encompassing both API interactions and management operations.
NCache has introduced a more intuitive user interface for securing cache nodes, ensuring an even smoother user experience. The process of configuring cache node security is now more intuitive and streamlined, allowing you to effortlessly secure your cache nodes with ease.
NCache introduces the ability to enhance your security configuration by allowing group-based authorization. Now, you can easily add LDAP groups as node administrators or cache users, simplifying the management of permissions across your NCache cluster. This feature streamlines the process of authorizing multiple users within an organization by granting group access to cache nodes and caches.
NCache has further enhanced its user-friendly interface for securing cache nodes. While we previously offered this feature, we have now made significant improvements to ensure an even smoother experience. The process of configuring cache node security is now more streamlined, allowing you to effortlessly secure your cache nodes with ease.
This release strengthens TLS support by securing communication between server nodes and across bridge connections, ensuring end-to-end encrypted data flow.
In this release, NCache enhances security protocol support by allowing certificates to be placed not only in the Trusted Root store but also in the Personal ("My") store. This flexibility ensures smoother operations in environments where group policy restrictions may limit Root store usage. To maintain secure communication, certificates should ideally be issued by a well-known public Certificate Authority (CA), which most systems already trust, eliminating the need to manually install the CA certificate in the Root store. If you are using a private CA, its certificate must be added to the Trusted Root store on all machines so the system can validate it and keep communication secure.
NCache now extends its TLS Encryption capabilities to secure communication not only between clients and servers but also between server nodes. This enhancement focuses on securing data exchange between server nodes within the cluster. This added layer of encryption ensures that all data transmitted between server nodes remains confidential and protected from potential threats, enhancing the overall security of your distributed caching environment.
NCache introduces TLS Encryption support for communication across bridge connections. With this feature, NCache ensures that data transmitted between cache clusters connected via bridges is encrypted and secured. This enhancement secures the data flowing through bridge connections, adding an extra layer of protection to your distributed caching infrastructure. It's worth noting that NCache had previously offered TLS Encryption for client-server communication, and this expansion now covers bridge connections as well.
NCache now offers a seamless way to configure Transport Layer Security (TLS) through the new Enable-NCacheTLS and Disable-NCacheTLS cmdlets. Previously, users had to manually configure TLS by editing registry settings, which could be complex and time-consuming. With these cmdlets, you can effortlessly enable or disable TLS on one or more servers and client nodes.
In this latest release of NCache, we've introduced a technical refinement by renaming the NCache Manager to the NCache Management Center. This refinement represents a strategic move towards enhancing the tool's functionality and providing users with a more advanced platform for cache cluster management. While the name has evolved, the underlying capabilities and features remain robust, letting you seamlessly configure, monitor, and administer your cache clusters with precision and efficiency.
In this release, we are excited to introduce NCache Playground. It's a powerful and interactive tool designed to enhance your experience with NCache. It serves as a dedicated environment for users to explore, experiment, and familiarize themselves with NCache features. With NCache Playground, you can effortlessly run NCache samples, make on-the-fly adjustments, and execute exercises without the need for a full-fledged development environment. This tool is ideal for users looking to quickly grasp NCache concepts, evaluate its capabilities, and accelerate their learning curve.
For NCache images available on Azure and AWS, the registration for free evaluation of NCache is supported in NCache Web Manager. When a machine is not registered either with evaluation or a license key, the NCache Web Manager's default screen takes users to a registration process to either start their evaluation or activate their boxes.
The feature 'NCache NoSQL' released in 5.3 has been renamed to 'NCache Persistence'. The working of the feature remains the same, however, the additional providers are removed. The NCache Persistence can now only be used with the built-in file system based store.
All NoSQL related PowerShell cmdlets have also been renamed.
A separate NuGet Package is released for NCache CLR Stored Procedures. This helps in easily creating CLR Stored Procedures that use NCache API.
Instead of using configurations specified in client.ncconf, users can force SignalR applications to use the connection options specified in web.config or appsettings.json files of the application. If specified, the application will use these settings.
The refresh interval value can now be set in seconds instead of minutes. The change has been made to accommodate scenarios where refresher should run at an interval of less than a minute.
NCache is providing a new feature called NoSQL Database where the entire database is In-Memory and distributed but it is also persisted to a permanent storage in real-time (unlike other products that take a periodic snapshot or persist only a transaction log). This real-time persistence ensures that your In-Memory data is always in sync and never lost even when you restart all the NCache servers.
NCache NoSQL Database is super-fast and scalable because it is 100% In-Memory and distributed. At the same time, NCache NoSQL Database persists data just like all other databases so you don't lose any data even if all NCache servers are brought down.
You can choose to persist you NoSQL Database in NCache Persistence that super-fast and very reliable. Or, if you prefer, you can persist the NoSQL Database in one of the leading third-party databases. NCache provides the following real-time persistence options For NoSQL Database:
You can use NCache NoSQL Database in the following ways:
NOTE: you can use this feature from .NET, Java, Node.js, and Python applications.
NCache provides Distributed Lucene for .NET applications using Lucene for Full Text Search. Distributed Lucene takes the standard Lucene.NET index and makes it distributed so you can scale the Lucene index to multiple NCache servers even at runtime. This not only allows you to increase your index size but also your application transaction capacity because your application now talks to multiple NCache servers for Lucene.
Here are some highlights of Distributed Lucene feature:
NCache now provides a powerful Python Client on both Windows and Linux. This Python client has all of client-side API features of NCache that traditionally .NET and Java clients enjoyed.
NCache provides Import and Export tools as PowerShell Cmdlets. With these tools, you can import or export JSON / CSV data into the NoSQL Database or out of it. This allows you to extract all or portions of your NoSQL database.
If you have selected NCache Persistence Provider for NoSQL Database, then all the data is kept in multiple files located in a shared network folder (based on UNC path).
You can use regular filesystem backup / restore tools on this data. However, please note that NCache provides you an admin tool (as PowerShell Cmdlet) to briefly suspend NCache writes to persistent storage while you're performing your filesystem backup. However, all writes are being made to the In-Memory distributed copy of the data and logged so when you're done with your backup, you can turn on the writes to persistence storage. And, then all those writes are applied to the persistence storage in the same manner as if they were real-time.
Despite providing you an online backup mechanism, it is recommended that you select a low-traffic time to do the backups. In future, NCache will provide a fully Online Backup feature for NCache Persistence Provider of NoSQL Database where you can even continue doing writes during backup.
However, if you've selected SQL Server or MongoDB as your storage option then you can use the backup / restore tools provided by those databases including online backup.
If you already have a .NET application using Lucene, the chances are that you might have a fairly large Lucene index built. NCache gives you the ability to import an existing Lucene index into NCache Distributed Lucene in a bulk manner.
This is much faster than recreating that index by reading documents from it and adding those documents to NCache Distributed Lucene index. The reason for this is that NCache Distributed Lucene copies data at bulk file level and not at document level.
You can do the following types of import of Lucene index.
Both of the above Import Lucene index options are possible through PowerShell Cmdlets.
NCache partitions and saves Lucene index into a distributed environment and on each NCache server. And, all index is stored as multiple files. Therefore, you can use regular filesystem backup / restore tools on them. However, in the current version of NCache, online backup is not provided so you will need a downtime to ensure correct backup. But, if your application is not updating Distributed Lucene index at runtime then you can also do online backups.
Restoring a Distributed Lucene index is the same as restoring file system files and therefore possible. You can have to restart your cache with the same distribution configuration information that you had when you did the backup.
NCache now fully supports .NET 6.0. All NCache Servers are compiled in .NET 6.0 (or .NET Framework 4.8 if you've downloaded that version). NCache clients are also .NET 6.0. However, NCache also provides support for earlier version of both .NET Core and .NET Framework for NCache clients.
NCache now allows you to use JSON Serialization for your ASP.NET / ASP.NET Core sessions. Previously, the only option you had was to use Binary Serialization provided by .NET. We still have Binary Serialization option but in .NET 6.0, Binary Serialization is disabled by default and is not recommended.
JSON Serialization also has the advantage where your .NET objects are not marked "Serializable". Previously, you had to either make code changes to mark all objects "Serializable" or use Compact Serialization feature of NCache. In both cases, it required a lot of extra work for you.
With JSON Serialization, you only have to make configuration setting change and not touch the code at all and you can now start to use objects that are not serializable in ASP.NET / ASP.NET Core sessions.
In order to include any object attribute in NCache SQL Queries, you must index it first. Previously, the only way to index was to define an index as part of NCache configuration. That is still possible and a good way to do this.
However, now you can define query indexes programmatically using custom annotations. With this, you now have full support of different ways of creating query index in NCache.
NCache now supports nullable properties for creating an index and then using them in SQL Queries. This feature is provided because .NET properties and fields are nullable. But, previously NCache did not provide support searching based on null values and now it does.
NCache now supports Geospatial indexes in Full Text Searching with Distributed Lucene. Just like regular Full Text Search Lucene index, the Geospatial indexes also use Lucene.NET internally to support Geospatial queries. The NuGet package for Geospatial indexes is separate from the Full Text Search index NuGet package.
NCache now supports Faceted Search with Distributed Lucene. Faceted Search is a technique that involves augmenting traditional search techniques with a faceted navigation system. This allows the user to narrow down search results by applying multiple filters based on a faceted classification of the items.
NCache provides a NuGet Package for Faceted Search that has all the APIs required to perform Faceted searches.
Since .NET CLR uses Managed Memory, Garbage Collection and Fragmentation cause major performance issues in any high transaction server application. NCache solved this problem earlier by implementing very smart object pooling and also breaking up larger objects into less than 80K objects so LOH is not frequently used.
This earlier memory optimization had already improved NCache performance quite a bit for most commonly used "atomic operations" like Get, Insert, Update, Delete of individual items. However, a number of other areas like bulk operations, query indexes, SQL searching, etc. were not fully optimized in this manner and therefore resulted in frequent use of LOH and Gen2 collections and hence not the best performance.
Now, this version of NCache has optimized memory management in all these areas that has resulted in an even faster performance of NCache all around.
Following optimizations have been made:
NCache traditionally ran in an on-premises environment and therefore there wasn't any need for using https to access NCache Web Manager. But, now with Azure, AWS, and other clouds becoming very prevalent, more and more situations are arising where a user may need to access NCache Web Manager thru https.
NCache now provides support for https for accessing NCache Web Manager. By default, it is http but you can configure it to use https if you have a certificate.
NCache has traditionally required that you specify NCache servers based on their ip-address and not machine names. The reason behind this was that in many situations, NCache servers have multiple Network Interface Cards (NICs) and you didn't know which NIC did the machine name map to. Therefore, using ip-address for NCache servers and clients is still the preferred way.
But, now NCache provides you the ability to specify machine names instead of ip-address if you wish. You are be able to specify machine name for adding a cache server or a cache client to the cache configuration. Similarly, all views on NCache Web Manager continue to use ip-addresses by default.
© Copyright Alachisoft 2002 - . All rights reserved. NCache is a registered trademark of Diyatech Corp.