NCache 发布说明

查找您的发行说明 NCache 下面的版本。

NCache 5.3发行说明 (2022年2024月至XNUMX年XNUMX月)
NCache 5.2发行说明 (2021 年 2021 月至 XNUMX 年 XNUMX 月)
NCache 5.1发行说明 (Nov 2020)
NCache 5.0发行说明 (2019年2024月至XNUMX年XNUMX月)
NCache 4.9发行说明 (2018 年 2018 月至 XNUMX 年 XNUMX 月)
NCache 4.8发行说明 (Nov 2017)
NCache 4.6发行说明 (2015 年 2017 月至 XNUMX 年 XNUMX 月)
NCache 4.4发行说明 (2015 年 2015 月至 XNUMX 年 XNUMX 月)
NCache 4.3发行说明 (2014 年 2014 月至 XNUMX 年 XNUMX 月)
NCache 4.1发行说明 (2011 年 2013 月至 XNUMX 年 XNUMX 月)
NCache 3.8发行说明 (2010 年 2011 月至 XNUMX 年 XNUMX 月)
NCache 3.6.2发行说明 (2009 年 2010 月至 XNUMX 年 XNUMX 月)
NCache 3.6.1发行说明 (Mar 2009)
 

发布说明 NCache 5.3 SP3

01 年 2024 月 XNUMX 日,星期二

介绍

NCache 5.3 SP3 包含一些非常重要的增强功能和错误修复。

新功能

  1. OutProc 服务器端代码执行模型

    In NCache 5.3 SP3,服务器端代码执行方面取得了重大进步,引入了 NCache 执行服务。该服务代表了一个统一的执行模型,已在 Java 和 .NET 版本中实现 NCache.

    对于Java版本,这个单独的执行过程, NCache Execution Service,负责运行服务器端用户代码,包括Cache Loader、Refresher、Readthrough、Writethrough操作。此更改简化了服务器端代码的执行,确保跨 Java 平台的高效且一致的操作。

    在 .NET 版本中, NCache 执行服务也进行了类似的调整,但专门用于缓存加载器和刷新器代码执行。 .NET 版本中的这一增强功能与执行模型的总体目标相一致,即优化和标准化服务器端代码执行流程。

  2. Java 客户端缓存架构与 .NET 同步

    Java 客户端缓存架构已与.NET 客户端缓存架构同步。这种同步包括在 Java 客户端缓存中实现 Readthrough 和 Writethrough 机制,以及增强 L1 和 L2 缓存之间的同步。这种一致性确保了不同平台之间的一致性和效率。

  3. 改进 NCache 管理中心

    NCache 管理中心有显着的改进,包括下载日志文件的能力。这一新功能为用户管理缓存服务器增加了一层便利。此外,还能够启动、停止和重新启动服务 NCache 服务, NCache 执行服务和 NCache 添加了桥接服务,增强了管理控制和灵活性。

  4. Export-CacheConfiguration 命令的增强功能

    Export-CacheConfiguration 命令已得到增强,以改进导出的缓存配置的文件夹结构。它现在包含一个选项,可将服务器端功能部署合并到导出中,从而提供更全面的配置管理功能。此外,导出的缓存名称规范已被强制指定,以确保更清晰、更精确的配置导出。

    使用导出的配置创建缓存后, NCache 自动部署所需的库以及配置。

  5. 添加节点时自动部署服务器端提供程序

    引入了一项增强功能,以简化将节点添加到缓存集群的过程 NCache。用户不再需要在添加到现有集群的每个新节点上手动部署服务器端提供程序来实现 Readthrough、Writethrough 或 Cache Startup Loader 等功能。

    借助自动部署功能, NCache 当新节点添加到集群时,会自动为配置的功能部署必要的服务器端提供程序。这种自动化简化了流程,并确保新节点完全具备参与缓存集群的能力,无需用户手动干预。

  6. 多合一 Docker 镜像 NCache 服务器版和开发者版

    NCache 5.3 SP3 在注册过程中引入了重大增强,特别是对于 Docker 实例。以前,DockerHub 上仅提供服务器映像 NCache,寻求开发者安装的用户必须创建自己的 Docker 映像。通过新的更新,DockerHub 上发布的单个映像现在可以灵活地用于服务器或开发人员安装。这一改进极大地简化了用户使用 Docker 的过程。

    在注册Docker实例时,用户必须使用-RegisterAs参数指定安装类型。此参数允许用户选择“CacheServer”、“RemoteClient”和“Developer”模式,“CacheServer”为默认模式。如果未指定 -RegisterAs 参数,系统默认采用服务器安装。这一增强不仅带来了便利,还提供了根据特定需求配置 Docker 实例的灵活性。

  7. NCache 通过负载均衡器的客户端连接路由

    In NCache 5.3 SP3,引入了一个新功能,方便 NCache 客户端通过负载均衡器连接到缓存服务器。此功能在客户端无法直接了解缓存服务器的情况下特别相关,例如在使用 Kubernetes 集群或访问受限的云订阅的环境中(例如使用专用链接的 Azure 或 AWS)。

    传统上, NCache 架构要求每个客户端与每个缓存服务器建立连接。然而,当负载均衡器被引入到该架构中时,它会掩盖客户端对各个缓存服务器的直接可见性。为了解决这个问题, NCache 5.3 SP3 实现了一种机制,在客户端通过负载平衡器首次连接到第一个缓存服务器时,服务器共享有关配置中其他缓存服务器的信息。

    客户端收到此信息后,开始尝试通过负载均衡器连接到其他服务器。此过程将持续进行,直到与所有服务器建立连接或耗尽配置的尝试次数。这种方法确保客户端可以保持与缓存集群的完整连接,即使在无法直接看到每个服务器的情况下也是如此。

  8. .NET Framework 兼容性变更

    此版本停止支持 .NET 4.6.1 及更早版本,反映了技术标准的持续更新。现在支持的最低 .NET 客户端版本是 .NET 4.6.2。

  9. Java 客户端的 TLS 支持

    增强的安全性已通过 TLS 支持集成到 Java 客户端中。

  10. 与 Hibernate 和 Spring 集成

    现在提供与最新版本的 Hibernate 和 Spring 的直接集成,从而简化了集成过程。以前,这种集成只能通过 JCache 接口实现。

  11. 春季会议支持

    引入了基于 Spring 的 Web 应用程序的高效会话管理,增强了 NCache 在这些环境中。

  12. 免费试用期限的变更

    此前, NCache 提供 60 天免费试用期。但是,在最新更新 (30 SP5.3) 中,此持续时间已缩短至 3 天。尽管发生了这一变化,客户仍然可以选择通过联系销售团队来延长评估期。根据要求,销售团队可以提供扩展密钥,允许客户扩展他们的 NCache 评估期最长120天。

已修复的错误列表:

  • 744223 修复:由于客户端数量较多,在缓存服务器上创建过多线程。
  • 744224 修复:某些 LDAP 配置的用户身份验证失败。
  • 744225 修复:客户端永远不会重新连接缓存初始化时无法访问的缓存服务器。
 

发布说明 NCache 5.3 SP2

2023 年 10 月 03 日

介绍

NCache 5.3 SP2 包含一些非常重要的错误修复和增强功能。

新功能

  1. 凭证缓存

    我们在此版本中引入了凭据缓存,以提高系统中身份验证操作的性能和效率。 它在现有安全提供程序之上提供了一个缓存层,从而减少了对底层身份验证系统(例如 LDAP 或 Active Directory)进行重复身份验证调用的需要。

    以下是此版本中的一些增强功能:

    1. 缓存用户凭证

      根据 LDAP/Active Directory 服务器成功进行身份验证后,用户凭据(用户名和加密密码)将缓存在内存中。 这消除了多个客户端对同一用户的后续请求中重新进行身份验证的需要。

      凭证缓存得到改善 NCache 通过减少昂贵的 LDAP/Active Directory 服务器访问来提高性能。 它还可以减少高事务环境中 LDAP/Active Directory 服务器的负载,其中 NCache 平时生活。

      用户体验与之前指定的相同 NCache 安全。

    2. 通过配置文件启用/禁用缓存

      默认情况下,凭据缓存功能处于启用状态,但您可以通过更改配置文件轻松将其关闭。 这 'NCache服务器.EnableCredentialCaching' 在标记 NCache 服务配置文件启用/禁用此功能。

  2. 服务器节点之间的 TLS

    NCache 现在扩展了其 TLS 加密功能,不仅可以保护客户端和服务器之间的通信,还可以保护服务器节点之间的通信。 尽管 NCache 以前为客户端-服务器通信提供 TLS 加密,此增强功能侧重于保护集群内服务器节点之间的数据交换。 这一附加的加密层可确保服务器节点之间传输的所有数据保持机密并免受潜在威胁,从而增强分布式缓存环境的整体安全性。

  3. TLS 跨桥通信

    NCache 引入了对跨桥连接通信的 TLS 加密支持。 有了这个功能, NCache 确保通过网桥连接的缓存集群之间传输的数据是加密且安全的。 此增强功能可保护流经桥接连接的数据,为您的分布式缓存基础设施添加额外的保护层。 值得注意的是 NCache 之前为客户端-服务器通信提供 TLS 加密,此扩展现在也涵盖了桥接连接。

  4. 支持个人存储中的证书

    在此版本中,我们通过引入放置功能来增强我们的安全协议支持 NCache 证书不仅存在于受信任的根存储中,而且还存在于个人(“我的”)存储中。 此增强功能将允许在组策略权限限制可能影响根存储中证书存储的环境中实现更顺畅的操作。

    为了顺利运行,证书必须由知名的公共证书颁发机构 (CA) 颁发,大多数系统本质上都信任该证书颁发机构。 这允许客户端计算机验证服务器的证书,而无需将 CA 证书安装在其受信任的根存储中。

    但是,对于私有 CA,CA 的证书必须安装在所有参与计算机上的受信任根存储中,以允许成功验证和安全通信。

  5. 组合节点和缓存安全

    NCache 引入了无缝结合节点和缓存安全性的能力,以增强控制和灵活性。 通过此功能,当启用节点安全性时,相应节点上的所有缓存都会自动受到保护。 节点管理员可以全面控制缓存数据和节点管理任务。 另一方面,缓存用户可以与各个安全缓存专门关联,通过以下方式授予他们仅访问缓存相关操作的权限: NCache 蜜蜂。 这种组合使管理员能够定制访问权限,确保缓存用户对缓存 API 的访问权限有限,而节点管理员则拥有更广泛的访问权限,包括 API 交互和管理操作。

  6. 基于组的授权

    NCache 引入了通过允许基于组的授权来增强安全配置的功能。 现在,您可以轻松添加 LDAP 组作为节点管理员或缓存用户,从而简化整个系统的权限管理 NCache 簇。 此功能通过授予对缓存节点和缓存的组访问权限来简化组织内多个用户的授权过程。

  7. 升级的 Active Directory 提供程序

    NCache 已升级其用于基于 Windows 的服务器的 LDAP 提供程序,以利用 Microsoft 提供的最新 LDAP 实现提供的增强的身份验证和授权功能。 通过以下方式探索此升级后的 LDAP 提供商的功能 Microsoft 的 LDAPConnection 文档.

  8. 重命名 NCache 经理到 NCache 管理中心

    在这个最新版本中 NCache,我们通过重命名引入了技术改进 NCache 经理至 NCache 管理中心。 这一改变代表了增强该工具功能并为用户提供更先进的缓存集群管理平台的战略举措。 尽管名称不断演变,但底层功能和特性依然强大,让您能够精确高效地无缝配置、监控和管理缓存集群。

  9. 增强的用户友好界面,用于保护缓存节点

    NCache 进一步增强了其用户友好的界面,以保护缓存节点。 虽然我们之前提供了此功能,但现在我们进行了重大改进,以确保更流畅的体验。 配置缓存节点安全性的过程现在更加直观和简化,使您可以轻松地保护缓存节点。

  10. 身份验证 NCache 管理中心(NCache 经理)

    NCache 管理中心,原名 NCache 管理器现在包含身份验证功能。 当节点受到保护时, NCache 管理中心将通过显示登录页面提示用户进行身份验证。 这可确保只有授权用户才能访问管理中心,从而为您的设备提供额外的安全层 NCache 环境。 只有配置的节点管理员才能登录安全节点。

  11. 通过 PowerShell 配置 TLS

    NCache 现在提供了一种通过新的 Enable- 配置传输层安全性 (TLS) 的无缝方法NCacheTLS 和禁用 -NCacheTLS cmdlet。 以前,用户必须通过编辑注册表设置来手动配置 TLS,这可能既复杂又耗时。 使用这些 cmdlet,您可以轻松地在一台或多台服务器和客户端节点上启用或禁用 TLS。

  12. 增强 NCache 使用 PowerShell 进行安全管理

    NCache 引入了一种通过 PowerShell 管理安全设置的增强方法,提供对安全配置更精细的控制。 改进后的启用-NCache安全和禁用-NCache安全 cmdlet 简化了启用或禁用安全性的过程,同时提供了更大的灵活性。

    随着附加的引入NCache用户或组并删除-NCacheUserOrGroup cmdlet,管理员可以有效地管理具有特定访问权限的用户和组。 这种基于 PowerShell 的扩展安全管理增强了安全控制和自定义选项 NCache 环境。

  13. NCache 游乐场

    在最新的 NCache 发布,我们很高兴地介绍 NCache 操场。 它是一个强大的交互式工具,旨在增强您的体验 NCache. NCache Playground 是供用户探索、实验和熟悉的专用环境 NCache 功能、示例和现实场景。 和 NCache 游乐场,可以轻松奔跑 NCache 示例、即时调整并执行练习,而无需成熟的开发环境。 该工具非常适合希望快速掌握的用户 NCache 概念,评估其能力,并加速他们的学习曲线。

已修复的错误列表:

  • 744213 修复:连接丢失 NCache 集群由于安全认证错误:修复了现有的问题 NCache 进程失败,并出现 COMException 和消息“尝试对已标记为删除的注册表项进行非法操作” NCache 服务重启。 当 LDAP/Active Directory 使用安全端口进行连接时会发生这种情况,导致缓存无法验证新客户端连接的凭据。 该修复确保 NCache 进程之间通过 NCache 用于与 LDAP/Active Directory 服务器正确通信并验证凭据的服务。
  • 744214 修复:参数值中存在特殊字符时,内联 SQL 查询无法执行。
  • 744215 修复:在加入或离开集群的节点的几个实例上,客户端应用程序和客户端缓存超时。
  • 744216 修复:基于 EF 的应用程序抛出“索引超出数组范围”。
  • 744217 修复:无法在以下位置打开 MultiReader NCache 卢森。
  • 744218 修复:电子邮件警报配置不适用于来自 NCache 经理。
  • 744219 修复:客户端缓存的自动启动配置未反映在 config.ncconf 中。
  • 744220 修复:客户端缓存的电子邮件警报不起作用。
  • 744221 修复:从节点中删除客户端缓存时,不会从所有节点中删除客户端缓存 NCache 经理。
  • 744222 修复: NCache Manager 无法在安全端口上与 LDAP 服务器建立连接。
 

发布说明 NCache 5.3 SP1

九月二十四日

介绍

NCache 5.3 SP1 包含一些非常重要的增强和错误修复。 该版本还包含主要的用户体验改进。 NCache 5.3 SP1 是对所有人的推荐升级 NCache 用户。

增强功能/新功能

以下是此版本中的一些增强功能:

  1. 评估注册通过 NCache 网络管理员

    针对 NCache 在 Azure 和 AWS 上可用的图像,注册免费评估 NCache 支持 NCache 网络管理器。 当机器未注册评估或许可证密钥时, NCache Web Manager 的默认屏幕将用户带到一个注册过程,以开始他们的评估或激活他们的盒子。

  2. 重命名 NCache NoSQL 至 NCache 坚持

    特点'NCache NoSQL' 5.3 中发布的已重命名为 'NCache 坚持”。 该功能的工作方式保持不变,但是删除了其他提供程序。 这 NCache 持久性现在只能与基于内置文件系统的存储一起使用。

    所有类型 NoSQL 相关的 PowerShell cmdlet 也已重命名。

  3. 单独的 NuGet 包 NCache CLR 存储过程

    发布了一个单独的 NuGet 包 NCache CLR 存储过程。 这有助于轻松创建使用 NCache API。

  4. 支持中的连接选项 NCache SignalR Backplane

    用户可以强制 SignalR 应用程序使用应用程序的 web.config 或 appsettings.json 文件中指定的连接选项,而不是使用 client.ncconf 中指定的配置。 如果指定,应用程序将使用这些设置。

  5. 刷新间隔值从分钟更改为秒

    刷新间隔值现在可以设置为秒而不是分钟。 已进行更改以适应刷新应以小于一分钟的间隔运行的情况。

  6. MapReduce、聚合器和 Memcached 集成标记为已弃用

    MapReduce、聚合器和 Memcached 集成被标记为已弃用,并将在下一个版本中删除。

已修复的错误列表:

  • 744210 修复:当刷新间隔很小时,缓存刷新器在缓存加载器之前运行。
  • 744211 修复:打开已处置的 lucene 目录时的对象引用异常。
  • 744208 修复: NCache 如果使用 CacheConnectionOptions API 进行配置,则不会创建客户端日志。
 

发布说明 NCache 5.3

2022 年 4 月 12 日

介绍

NCache 5.3 包含一些非常重要的新特性以及各种性能和内存优化。 该版本还包含主要的用户体验改进。 NCache 5.3 是对所有人的推荐升级 NCache 用户。

增强功能/新功能

以下是此版本中的一些增强功能:

  1. NoSQL Database (具有持久性的内存中)

    NCache 现在提供一个 NoSQL Database 整个数据库在内存中并且是分布式的,但它也实时持久化到永久存储中。 这种实时持久性可确保您的 In-Memory 数据始终保持同步,即使您重新启动所有 NCache 服务器。

    NCache 提供以下实时持久性选项 NoSQL Database:

    1. NCache 持久性提供者: 默认选项。 NCache 在共享网络位置(UNC 路径)中使用基于 LiteDB 的文件持久性。 您可以根据自己的喜好选择 SSD / HDD、NAS / SAN 或云存储。
    2. SQL Server 提供程序
    3. MongoDB 提供程序
    4. 其他数据库(快来了)

    您可以使用 NCache NoSQL Database 在以下方面:

    1. 创建新 NoSQL Database: 这将使用您的存储选项创建数据库,并创建它的内存中分布式副本。
    2. 打开现有 NoSQL Database: 这使用了一个已经创建的 NoSQL Database 并创建它的内存中分布式副本。
  2. .NET 的分布式 Lucene(全文搜索)

    NCache 为使用 Lucene 进行全文搜索的 .NET 应用程序提供分布式 Lucene。 分布式 Lucene 采用标准 Lucene.NET 索引并使其分布式,因此您可以将 Lucene 索引扩展到多个 NCache 服务器甚至在运行时。 这不仅可以让您增加索引大小,还可以增加您的应用程序事务容量,因为您的应用程序现在可以与多个 NCache Lucene 的服务器。

    以下是分布式 Lucene 功能的一些亮点:

    1. 无需更改代码即可使用: 您无需更改现有 Lucene 应用程序中的任何代码即可使用分布式 Lucene。 支持标准的 Lucene.NET API。
    2. Lucene 索引分布到多个 NCache 服务器: NCache 分发 Lucene 索引并将其持久化到多个 NCache 服务器。 每个服务器都保留整个索引的一部分。 NCache 已修改其分区缓存和分区副本缓存拓扑以处理分布式持久性。
    3. 添加/删除 NCache 运行时的服务器: 您可以添加或删除 NCache 运行时的服务器。 每次添加服务器时,现有的 Lucene 索引都会进一步分区,并将一部分复制到这个新添加的服务器。 当你删除一个服务器时,它的索引被复制并合并到其他剩余的 NCache 服务器。
    4. 定向分区(非自动): 由于大多数 Lucene 索引都非常大,如果 NCache 服务器在运行时关闭,分区不会像在非 Lucene 情况下那样自动重做 NCache. 但是,如果您显式添加或删除 NCache 服务器与 NCache 管理工具然后创建或删除分区,Lucene索引被进一步分区并复制到新的 NCache 服务器或 Lucene 索引来自 NCache 被删除的服务器被复制并合并到集群中的其他分区。
    5. 仅分区缓存/分区副本缓存: 分布式 Lucene 功能仅在这两种缓存拓扑上可用。 原因是其他两种缓存拓扑(镜像缓存/复制缓存)并没有为这个特性增加很多价值。
  3. Python 客户端

    NCache 现在在 Windows 和 Linux 上都提供了 Python 客户端。 此 Python 客户端具有以下所有客户端 API 功能 NCache 传统上 .NET 和 Java 客户端所享受的。

  4. 斯卡拉客户端

    NCache 现在在 Windows 和 Linux 上都提供了一个 Scala 客户端。 此 Scala 客户端具有以下所有客户端 API 功能 NCache 传统上 .NET 和 Java 客户端所享受的。

  5. 导入/导出 NoSQL Database

    NCache 以 PowerShell Cmdlet 形式提供导入和导出工具。 使用这些工具,您可以将 JSON / CSV 数据导入或导出到 NoSQL Database 或脱离它。 这允许您提取全部或部分 NoSQL database.

  6. 备份/恢复 NoSQL Database

    NCache 持久性提供者 NoSQL Database 将数据保存在位于共享网络文件夹中的多个文件中(基于 UNC 路径)。 因此,您可以使用常规文件系统工具来执行备份。

    提供在线备份功能, NCache 还提供了一个管理工具(作为 PowerShell Cmdlet)来短暂挂起 NCache 写入持久存储,并且仅在您执行文件系统备份时将它们保存在内存中。 但是,当您完成备份后,您可以启用写入,并且所有待处理的写入都会立即应用于持久存储。

    如果您使用 SQL Server 或 MongoDB 作为存储选项,那么这些数据库提供了您应该使用的在线备份工具。

  7. 导入 Lucene 索引

    NCache 使您能够将现有的 Lucene 索引导入 NCache 以批量文件复制方式分发 Lucene,比从现有 Lucene 索引中读取文档并单独将它们写入要快得多 NCache 通过其 API 分布式 Lucene。

    您可以执行以下类型的 Lucene 索引导入:

    1. 将现有的 Lucene 索引导入 NCache: 如果您已经构建了 Lucene 索引,则可以使用 NCache 导入工具将其快速导入 NCache 分发 Lucene。 而且,您的索引是在文件级别而不是文档级别复制的,这要快得多。
    2. 导入现有的分布式 Lucene 索引: 如果你已经有一个 NCache 分布式 Lucene 索引,并且您想将其导入到另一个位置/环境中,您可以轻松地做到这一点。 索引是在批量文件级别而不是文档级别复制的,因此速度非常快。
  8. 备份/恢复分布式 Lucene 索引

    NCache 将 Lucene 索引分区并保存到分布式环境中 NCache 服务器。 而且,所有索引都存储为多个文件。 因此,您可以在它们上使用常规的文件系统备份/恢复工具。

    目前,除非您的应用程序没有对 Lucene 索引进行任何更新,否则您无法执行在线备份。 您必须选择一个低流量时间来停止服务器并进行备份。

    恢复分布式 Lucene 索引与恢复文件系统文件相同,因此是可能的。 您可能必须重新启动 NCache 服务器具有与您进行备份时相同的分发配置信息。

  9. .NET 6.0 支持

    NCache 现在完全支持 .NET 6.0。 全部 NCache 服务器在 .NET 6.0 中编译(或 .NET Framework 4.8,如果你已经下载了那个版本)。 NCache 客户端也是 .NET 6.0。 然而, NCache 还提供对早期版本的支持 .NET Core 和 .NET Framework NCache 客户端。

  10. JSON 序列化会话 (ASP.NET / ASP.NET Core)

    NCache 现在允许您为您的 ASP.NET / ASP 使用 JSON 序列化.NET Core 会议。 以前,您唯一的选择是使用 .NET 提供的二进制序列化。 我们仍然有二进制序列化选项,但在 .NET 6.0 中,二进制序列化默认是禁用的,不推荐使用。

    JSON 序列化还允许您使用未标记为“可序列化”的对象,并且也无需对其使用紧凑序列化。 使用 JSON 序列化,您只需更改配置设置。

  11. 使用注解的 SQL 查询索引

    为了包含任何对象属性 NCache SQL 查询,你必须先索引它。 以前,索引的唯一方法是将索引定义为 NCache 配置。 这仍然是可能的,也是一个很好的方法。

    但是,现在您可以使用自定义注释以编程方式定义查询索引。 有了这个,您现在可以完全支持创建查询索引的不同方式 NCache.

  12. SQL 查询中的可空支持

    NCache 现在支持可空属性来创建索引,然后在 SQL 查询中使用它们。 提供此功能是因为 .NET 属性和字段可以为空。 但是,以前 NCache 没有提供基于空值的搜索支持,现在它提供了。

  13. 分布式 Lucene 的地理空间索引

    NCache 现在支持分布式 Lucene 全文搜索中的地理空间索引。 就像常规全文搜索 Lucene 索引一样,地理空间索引也在内部使用 Lucene.NET 来支持地理空间查询。 用于地理空间索引的 NuGet 包与全文搜索索引 NuGet 包是分开的。

  14. 分布式 Lucene 的分面搜索

    NCache 现在支持使用分布式 Lucene 进行分面搜索。 分面搜索是一种涉及使用分面导航系统增强传统搜索技术的技术。 这允许用户通过基于项目的分面分类应用多个过滤器来缩小搜索结果。

    NCache 为分面搜索提供 NuGet 包,其中包含执行分面搜索所需的所有 API。

  15. 新鲜的 30 天评估期

    评估期已在先前版本的 NCache 在电子邮件域级别,而不是在个人下载或个人安装级别。 这意味着如果您评估了早期版本的 NCache 但没买,你的评估期很可能已经过期了。

    然而, NCache 5.3 开始您对该版本的全新评估期。 您会像以前一样获得 30 天的评估期,您可以要求我们的销售团队一次延长 30 天,总共延长 180 天。

  16. 内存优化以获得更快的性能

    NCache 之前已经实现了智能对象池,并且还将较大的对象分解为少于 80K 的对象,因此 LOH 不经常使用。 这种早期的内存优化已经得到了改善 NCache 对于最常用的“原子操作”,例如获取、插入、更新、删除单个项目,性能相当不错。

    但是,批量操作、查询索引、SQL 搜索等许多其他领域并没有以这种方式完全优化,因此导致频繁使用 LOH 和 Gen2 集合,因此不是最佳性能。

    现在,这个版本的 NCache 在所有这些领域优化了内存管理,从而实现了更快的性能 NCache 在周围。

    进行了以下优化:

    1. 新区域中的对象池以确保重用更大的对象,而不是让它们被 GC 收集。
    2. 避免在新区域分配 LOH。
    3. 使用性能更好的最新版本的协议缓冲区(Protobuf)
  17. 支持 https (NCache 网页管理员)

    NCache 传统上在本地环境中运行,因此不需要使用 https 来访问 NCache 网络管理器。 但是,现在随着 Azure、AWS 和其他云变得非常流行,越来越多的情况出现了用户可能需要访问 NCache 通过 https 的 Web 管理器。

    NCache 现在提供对 https 访问的支持 NCache 网络管理器。 默认情况下,它是 http,但如果您有证书,您可以将其配置为使用 https。

  18. 支持机器名称 (NCache 网页管理员)

    NCache 传统上要求您指定 NCache 服务器基于它们的 IP 地址而不是机器名称。 这背后的原因是,在许多情况下, NCache 服务器有多个网络接口卡 (NIC),您不知道机器名称映射到哪个 NIC。 因此,使用 ip-address NCache 服务器和客户端仍然是首选方式。

    但现在 NCache 如果您愿意,可以让您指定机器名称而不是 IP 地址。 您可以指定用于将缓存服务器或缓存客户端添加到缓存配置的机器名称。 同样,所有关于 NCache 默认情况下,Web Manager 继续使用 IP 地址。

已修复的错误列表:

  • 744206 修复:使用 List 时引发“值不在预期范围内”异常使用 Contains() LINQ 查询。
  • 744207 FIX:在 jQuery 版本中使用的安全漏洞 NCache 网络管理器。
  • 744208 修复:基于 Linux 的 DEV 安装不接受来自 remote clients.
  • 744209 修复:各种 PowerShell cmdlet 中的缓存名称允许使用特殊字符,从而导致问题。
 

发布说明 NCache 5.2 SP1

2021 年 10 月 12 日

介绍

NCache 5.2 SP1 包含一些重要的性能和内存优化。 该版本还包含主要的用户体验改进。 NCache 5.2 SP1 是对所有人的推荐升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 批量操作中的内存优化

    在以前的版本中,具有相对较大项目大小的批量操作会占用大量内存。 在此版本中,对象池和其他 LOH 避免技术用于减少与批量操作相关的代码路径上的内存占用。

  2. 升级到最新的 Protobuf-net 版本

    最新版本的 protobuf-net 具有一些主要的内存增强功能。 NCache 现在使用最新版本的 protobuf-net 来进一步提高内存和性能。

  3. 改进了离线激活的用户体验

    以前,离线激活是一个多步骤的过程,需要 NCache 与之交谈的用户 Alachisoft 支持团队。 现在有了这个更新的版本,用户无需联系即可完成离线激活 Alachisoft 支持团队。

  4. 域级安装密钥

    安装密钥附带 30 天的免费评估。 在这个较新的版本中,安装密钥在客户域级别而不是单个客户进行跟踪。 所以评价 NCache 实际上是从公司第一个用户下载的那一天开始的。 但是,每个版本 NCache 从现在开始将有自己的评估期。

已修复的错误列表:

  • 744201 修复:NHibernate 集成不使用连接字符串名称。
  • 744202 修复:当项目过期并从缓存中失效时,无法接收“项目已删除”事件。
  • 744203 修复:如果客户端和服务器位于不同的子网上,则客户端无法与缓存服务器连接。
  • 744204 修复: SSH.NET 依赖项已从 NCache.SDK NuGet 包。
  • 744205 修复:缓存加载程序在本地缓存上运行时跳过数据集。
 

发布说明 NCache 5.2

2021 年 3 月 25 日

介绍

NCache 5.2 包含一些与缓存相关的重要特性。 该版本还包含主要的性能改进。 NCache 5.2 是对所有人的推荐升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 缓存刷新器

    Cache Loader/Refresher 是一种以可配置的时间间隔定期运行并刷新缓存数据的服务。 用户通过在配置中添加一个或多个命名数据集来配置此功能。 每个数据集都可以配置为加载一次或定期刷新。

  2. 主题(发布/订阅)增强功能

    在 Pub/Sub 中添加了以下两个内容。

    • TOPIC的优先级

      在创建主题时,可以为主题分配优先级。 来自较高优先级 TOPIC 的消息首先被传递,而来自较低优先级 TOPIC 的消息首先被驱逐。 如果未分配优先级,则会创建具有“正常”优先级的主题。

    • 订购交货

      发布者应该能够发送带有指令的消息以保留它们的发布顺序。 此类消息以与发布时完全相同的顺序传递给订阅者。 来自某个发布者的有序消息将驻留在一个缓存服务器上。 这将使用位置亲和性来实现。

      如果发生以下情况,所有订购的消息将被传递给同一订阅者 交付选项.任意.

  3. 从 JSON 文档中查询索引

    对于纯粹使用 JSON API 的应用程序,可能无法定义基于 .NET 或 Java 的查询索引。 因此,支持从 JSON 文档定义索引。

    在这种情况下,用户指定 json 文件的路径。 NCache Web Manager 读取 json 文件中的属性并在网格中列出它们。 用户可以从应该定义索引的列表中选择一个或多个属性。

    也可以使用 PowerShell 命令创建来自 json 文档的查询索引。

  4. 自定义依赖提供者

    自定义依赖项现在部署在服务器端。 就像读/写直通提供者一样,用户需要实现自定义依赖提供者。 可以有一个或多个自定义依赖提供者,每个提供者都有一个唯一的名称。

    通过 API 添加项目时,用户指定已配置和部署的自定义依赖提供者的名称。

  5. 电子邮件通知模板

    用户可能希望更改他们收到的电子邮件通知的文本和主题方式 NCache. 生成的电子邮件的所有文本和主题 NCache 使用模板。 这些模板在安装目录中提供。 用户可以根据自己的需要更改这些模板。

  6. 支持两个 LDAP 控制器

    在某些组织中,可能会配置多个域控制器以实现高可用性。 当主域控制器出现故障时,辅助控制器将变为活动状态。 NCache 现在还支持使用主域控制器和辅助域控制器配置安全性。

  7. Linux 的 TLS

    TLS 1.2 支持为之间的传输级通信提供 NCache Linux 上的服务器和缓存客户端。

  8. ASP.NET 和 ASP 之间的会话共享.NET Core

    在 ASP.NET 和 ASP 之间共享会话.NET Core 支持应用程序。 这可以从配置设置中启用。 为了在不同应用程序之间共享会话,所有应用程序必须使用相同的自定义会话 ID 生成器。

    这也支持多区域会话。

    如果通过 IDistributedCache 配置,则不支持会话共享。

  9. 响应缓存中的依赖项支持

    用户可以指定 SQL 依赖项以使缓存中的页面响应无效。 如果指定的 SQL 对应的数据被修改或删除,则缓存的响应被删除。 在新请求上,它会重新生成并添加到具有相同 SQL 依赖项的缓存中。

    如果通过 IDistributedCache 配置,则不支持此功能。

  10. 身份服务器 4

    NCache 可以用作 Identity Server 4 的外部存储;

    • Identity Server 4 存储之上的缓存层。
    • Identity Server 4 的持久性存储。
  11. 通过 IDistributedCache 支持多个缓存

    当配置为 NCache,用户可能希望使用不同的缓存会话缓存和数据缓存。 NCache 当用作 IDistributedCache 时,应提供一个选项以将多个缓存用于不同目的。

  12. 新的 Java 客户端

    新的 Java 客户端与新的 .NET API 100% 相同。 它具有以下服务;

    • 搜索服务
    • 消息服务
    • 通知服务

    新的 Java 客户端还使用流水线来获得更好的性能。

  13. 基于 Java 的服务器端代码

    以下服务器端模块可以用 Java 编写。

    • 读/写直通
    • 缓存加载器/刷新器
    • 自定义依赖项
  14. 新的 Node.js 客户端

    NCache 现在有一个 Node.js 客户端,它与新的 .NET 和 Java JSON API 100% 相同。 它具有以下服务;

    • 搜索服务
    • 消息服务
    • 通知服务
  15. 普罗米修斯

    与 Prometheus 集成以监控关键指标 NCache. NCache 向 Prometheus 服务器发布一组可配置的计数器。

  16. 格拉法纳

    NCache Grafana 的仪表板在 Grafana 库上提供。 仪表板具有从 Prometheus 服务器获取的各种计数器,其中 NCache 正在发布其计数器。

  17. NCache 网页管理器在 NCache Professional

    NCache Professional 现在有一个基于 Web 的 GUI 工具 NCache 管理和基本监控。 NCache Web Manager 允许用户创建、配置、启动和停止缓存。 这也有助于他们快速运行压力测试并查看统计数据。

 

发布说明 NCache 5.1

2020 年 11 月 23 日

介绍

In NCache 5.1,有一些重要的错误修复和一些新的增强。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 基于内存和 vCPU 的许可

    仅服务器许可现在还考虑了内存来计算计算机上所需的许可数量。 现在,在仅服务器许可中,可以连接到服务器的客户端数量不受限制。

    根据 RAM 大小和 vCPU 数量的组合,确定机器上所需的许可证数量。 这些组合在 NCache 许可计划形式的定价页面。

  2. 基于服务器的激活

    不再支持在客户端计算机上激活。

    即使您的许可证是客户端-服务器,您也只需要激活缓存服务器。 激活时,用户还需要指定客户端许可证的数量才能在缓存服务器上激活。

    NCache Professional 版本不支持此许可方案。

  3. 免费的开发/测试缓存服务器

    用户现在可以创建免费的 DEV/Test 缓存服务器。 Remote clients 可以连接到这些缓存服务器,但是有以下几个限制;

    1. 仅支持独立(本地)缓存。
    2. 每个节点最多 3 个缓存。
    3. 每个节点运行缓存的最大组合大小为 2 GB。
    4. 每个缓存最多 25 个请求/秒。
    5. 缓存大小不是热适用的。
  4. 为远程机器注册 NCache 评估

    现在用户可以注册远程机器免费评估 NCache 在注册中使用“-Server”参数-NCache评估 PowerShell 命令。

已修复的错误列表:

  • 744198 修复:获取-NCache显示错误系统信息的远程计算机版本。
  • 744199 修复: NCache 仅安装在默认安装目录中。 安装程序不会选择自定义目录。
  • 744200 修复: NCache Web 管理器显示 DEV 版缓存的评估到期消息。
 

发布说明 NCache 5.0 SP6

2024 年 4 月 24 日

介绍

NCache 5.0 SP6 仅发布 NCache Open Source 版。此版本包含一些重要的错误修复和开源版本中的一些新限制。

  1. 从开源版本中删除了集群拓扑。
  2. 一次最多可以有 1 个客户端连接到缓存。
  3. 一台计算机上的组合缓存大小不能超过 4 GB。

已修复的错误列表:

  • 754194 修复:批量更新导致缓存节点内存过多。
  • 754195 修复:项目更新时丢失事件。
 

发布说明 NCache 5.0 SP4

2020 年 10 月 28 日

介绍

In NCache 5.0 SP4,有一些重要的错误修复和一些新的增强。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. WAN 复制的更多配置选项

    现在可以进一步自定义 WAN 复制,以更好地控制两个数据中心之间复制数据的频率。 这是配置;

    • 网桥复制间隔

      复制间隔是两个连续复制之间的中间延迟间隔(以毫秒为单位)。 其默认值设置为 3000 毫秒(3 秒)。 用户可以根据自己的需要通过调整 ' 的值来更改此间隔NCacheServer.BridgeReplicationInterval' 标记中的 NCache 服务配置文件。

    • 批量阈值大小

      缓存以提供的阈值大小批量向网桥发送操作。 默认大小为 500 KB。 用户可以通过改变 tag ' 的值来配置这个大小NCache服务器.BridgeBulkOperationSize' 在里面 NCache 服务配置文件。

  2. 支持 EF Core 3.1

    此版本提供对最新版本 EFCore 的支持。

  3. 仅服务器许可

    此新版本支持仅服务器许可,仅购买服务器许可。 在这种类型的许可中,一个缓存服务器至少需要 4 个许可。

  4. 补充内容 NCache Professional

    添加了以下功能 NCache professional.

    • NCache Professional 可以与企业服务器通信。
    • 支持 JSON API。
    • 启动时自动启动缓存
    • 支持 EFCore
    • 支持 ASP.NET Core 信号R
    • 支持全文搜索
    • 支持输出缓存
  5. 功能使用报告

    NCache 每月发送一次功能使用报告给 Alachisoft 服务器。 这样做是为了根据从客户那里收到的数据改进产品。 以下信息为本报告的一部分;

    • 集群大小和拓扑
    • 与此集群连接的客户端数量
    • NCache 使用的功能
  6. 用于评估和扩展的 PowerShell Cmdlet

    一个新的 PowerShell cmdlet 'Register-NCache评估'提供注册 NCache 使用从以下处收到的评估密钥进行免费评估 Alachisoft. 此 cmdlet 还可用于延长评估期。

    NCache Open Source 可以使用注册注册-NCache开源 cmdlet。

  7. 经验 NCache Cloud Service

    本次发布 NCache 支持 NCache Cloud 祭。 NCache Cloud Service 在 Azure 和 AWS 中提供。

  8. 在 Azure 和 AWS 中安装

    所有版本 NCache 现在可以安装在 Azure 和 AWS 中,但建议 NCache使用 的市场图像而不是安装 NCache.

已修复的错误列表:

  • 744194 修复:删除缓存 PowerShell 命令不会删除与重新创建缓存和客户端缓存时导致问题的缓存关联的客户端缓存。
  • 744195 修复:缓存项元数据在从其他客户端缓存更新后从一个客户端缓存获取数据时丢失
  • 744196 修复:在安装目录的配置中提供配置时,L1 未初始化,并且在应用程序 bin 文件夹中的本地配置中缺失。
  • 744197 修复:缓存主机进程使用 Pub/Sub 消耗高内存。
 

发布说明 NCache 5.0 SP3

2020 年 6 月 15 日

介绍

In NCache 5.0 SP3,有一些重要的错误修复和一些新的增强。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 最多需要 4 个许可证 remote client NCache SaaS产品

    NCache Remote Client通常每个盒子至少需要 2 个许可证。 如果一台机器的内核超过 8 个,则每 4 个内核需要一个额外的许可证。 例如,一台 12 核的机器需要 3 个许可证,而 20 核需要 5 个许可证。

    不过, NCache SaaS 用户,所需的许可证 remote clients 永远不会超过 4,即使该机器上的内核数超过 16。

  2. 新的 PowerShell 命令

    以下是添加的新 PowerShell 命令。

    • Get-AllCacheLogs 检索给定缓存的所有缓存日志列表。
    • Get-CacheLog 以使用给定的缓存名称检索给定缓存的完整日志文件。
    • 为给定的缓存或服务创建内存转储。
    • Get-AllMemoryDumps 打印所有内存转储及其大小的列表。
    • Remove-MemoryDump 从磁盘中删除给定的内存转储。

  3. 现有 PowerShell 命令的增强功能

    对现有 PowerShell 命令进行了以下增强。

    • Test-Stress、Get-CacheCount 和 Add-TestData 可选地采用“-Servers”参数,这样您就不必在缓存中添加客户端来使用这些工具。
    • 如果未指定缓存名称,Export-CacheConfiguration 命令会完全导出给定服务器的 config.ncconf。

已修复的错误列表:

  • 744191 修复:如果缓存不可用但数据库可用,EFCore 扩展方法 .FromCache 将失败。
  • 744192 修复:如果时区为 UTc+,OutputCacheProvider 集成无法创建具有到期值 DateTime.MaxValue 的 CacheItem。
  • 744193 修复:在服务器激活许可的情况下不会自动启用 KeepAlive
 

发布说明 NCache 5.0 SP2

2019 年 12 月 09 日

介绍

In NCache 5.0 SP2,有一些重要的错误修复和一些新的增强。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 在 Bridge 中支持超过 2 个缓存集群

    以前,Bridge 的缓存不能超过 2 个。 在这个版本中, NCache 现在支持在一个 Bridge 中拥有 2 个以上的缓存。 至少一个缓存必须处于活动状态。

  2. 网桥中缓存之间的手动状态传输

    即使活动缓存自动将其数据复制到网桥中的其他缓存,缓存之间的状态传输也不再活动。 当缓存出现故障或添加新集群时,需要手动交互以同步缓存。

  3. LDAP 安全

    为 Windows 和 Linux 添加了 LDAP 安全支持。 以前,Linux 上不支持 LDAP,而 Windows 支持基于 Active Directory。

  4. Pub/Sub 增强功能

    在 Pub/Sub (TOPIC) 中进行了以下增强:

    • 异步消息发布
    • 异步主题创建
    • 批量消息发布

  5. 自定义依赖增强

    对自定义依赖项功能进行了以下增强。

    • 自定义依赖项的批量评估
    • 自定义依赖项的多线程评估
    • 可扩展的可通知依赖项

  6. 可配置流水线

    NCache 现在使用 System.IO.Pipelines 在客户端和服务器之间进行高性能 IO 操作。 由于这种方法, NCache 能够在 2 节点集群上每秒执行 5 万次操作。

    默认情况下,流水线在所有缓存上启用。 但是,可以在创建缓存时或通过随时修改缓存配置来禁用此功能。

  7. 可插拔模块

    对架构进行了更改 NCache 添加对可以使用的动态注册模块的支持 NCache的分布式架构,无需对 NCache 源代码。

    Lucene.NET 支持也通过 NCache 模块。

  8. 更多 PowerShell Cmdlet

    添加了以下 PowerShell Cmdlet:

    • 新桥
    • 移除桥接
    • 添加-BridgeNode
    • 删除-BridgeNode
    • 添加-BridgeCache
    • 删除-BridgeCache
    • 设置-BridgeCacheMode
    • 开始-BridgeStateTransfer

详情请参阅 NCache 版本比较

已修复的错误列表:

  • 744186 修复: NCache Web Manager 破坏了 FireFox 上的输入控件。
  • 744187 修复: NCache 如果保持打开状态,Web Manager 的统计信息窗口会消耗大量内存。
  • 744188 修复:没有为客户端缓存配置驱逐设置的选项。
  • 744189 修复:如果集群和客户端缓存之间存在网络故障,则会删除客户端缓存中的项目。
  • 744190 修复:评估扩展工具在 Linux 安装中不可用 NCache Professional 版。
 

发布说明 NCache 5.0 SP1

2019 年 8 月 26 日

介绍

In NCache 5.0 SP1,有一些重要的错误修复和一些新的增强。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. NET核心 SignalR backplane
  2. NCache SignalR backplane ASP.NET Core 提供了应用程序。

  3. 支持 Internet Explorer 11
  4. 现在可以从 Internet Explorer 11(最新版本)完成 Web 管理,但建议使用 Microsoft Edge、Chrome、Firefox 或 Opera。

  5. 动态生成的安装密钥
  6. 所有版本的安装密钥 NCache 现在在下载时动态生成。 这意味着每个客户都会获得一个唯一的安装密钥。

  7. 专业和开源中仅基于 .NET 的缓存服务器
  8. 专业版和开源版中的缓存服务器仅基于 .NET。 客户端可用于 .NET 和 .NET Core. 这两个版本的缓存服务器不能安装在 Linux 上。

  9. 开源和专业版中的有限功能
  10. 开源和专业版已经回到 Alachisoft的原始策略,我们在开源和专业版中都有有限数量的功能。

    详情请参阅 版本比较

已修复的错误列表:

  • 744180 修复:无法在没有默认构造函数的情况下压缩序列化/反序列化类。
  • 744181 修复:手动更改的“保持活动”设置在通过管理工具更改配置时丢失。
  • 744182 修复:自定义依赖项在 L1 缓存上执行。 它应该只在 L2 上执行。
  • 744183 修复:如果集群节点上的双 NIC 配置,client.ncconf 中的服务器 IP 地址不正确。
  • 744184 修复:Inproc 客户端缓存配置为“二进制格式”,这会导致序列化和反序列化,从而减慢操作速度。
  • 744185 修复:在某些情况下,Web 管理器中未填充客户端计数器。
  • 744186 修复:在某些情况下,Web 管理器中未填充客户端计数器。
  • 744187 修复:当客户端同时从所有缓存服务器断开连接时,出现异常“没有可用于处理请求的服务器”。
 

发布说明 NCache 5.0

2019 年 5 月 14 日

介绍

NCache 5.0 包含一些与集群和缓存相关的重要特性。 该版本还包含主要的性能改进。 NCache 5.0 是对所有人的推荐升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 新API
  2. NCache API 已经过重构,通过减少各种方法的重载次数,使其更简单易用。 新的 API 还使用了 C# 的最新功能和 .NET Framework (任务并行库、异步方法和泛型)。

  1. 主题(发布/订阅)增强功能
  2. 对以下功能进行了改进 NCache 消息传递框架。

    1. TOPIC 中的通配符支持允许用户在一次调用中订阅多个 TOPIC。 当客户端订阅 TOPIC 时,它可以订阅已发布消息的确切 TOPIC,也可以使用通配符同时订阅多个 TOPIC。 通配符只能用于订阅主题,不能用于发布消息。 但是,发布者可以使用通配符 TOPIC 搜索接收发布消息的失败通知。
    2. 持久订阅确保发布在主题上的消息在从商店中删除之前传递给合适的订阅者。 默认情况下,在 TOPIC 上创建的所有订阅都是非持久订阅。 这意味着非持久订阅者的消息在与缓存服务器断开连接期间不会保存在存储中。

    但是,对于持久订阅(命名订阅),消息会被存储,直到它们被推送到该订阅中的所有或任何订阅者。 如果持久订阅者在突然断开连接后返回(离开时未调用 Unsubscribe),它将能够接收在其关闭期间发布的消息。

    但是,即使消息没有传递给所有或任何订阅者,消息也会在过期后从存储中删除。

    持久订阅中还有另外两个策略。
    -共享,订阅中可以有多个订阅者。
    - 独占,订阅中一次只能有一个订阅者。 所有非持久订阅都是独占的。

  1. 性能改进
  2. 此版本中进行了一些主要的性能改进。 核心子系统经过重新设计,以获得更好的缓存操作性能。 其中一些改进包括合并最新的库,如 Microsoft 的 System.IO.Pipelines。 System.IO.Pipelines 是一个新的库,旨在使在 .NET 中执行高性能 IO 变得更加容易。

  1. 可靠的事件
  2. 所有类型 NCache 事件现在在内部使用更可靠的 NCache的发布/订阅框架。 以下类型是现在基于 Pub/Sub 的事件。

    • 常规缓存通知
    • 选择性通知
    • 信号R
    • 连续查询
  1. SQL 中的投影和 FROM 子句
  2. NCache的 SQL 现在得到了增强,在 SQL 语句中具有预测和 FROM 子句。 以前,SQL 语句中没有投影,因此返回了与给定条件匹配的完整缓存项。

  1. 在 SQL 中搜索 GROUP
  2. 支持通过 SQL 按其“组”搜索缓存项。 使用此功能,用户可以查询缓存以针对“组”返回缓存项,就像他们为“标签”所做的那样。

  1. JSON 序列化
  2. 传统上, NCache 将缓存中的项目存储为二进制数据。 二进制序列化在时间和它消耗的内存方面都可能很昂贵。 在 NCache 5.0,用户可以选择将缓存配置为具有 JSON 序列化存储。 JSON 序列化在大多数情况下是有效的。

  1. 分布式数据类型
  2. NCache 现在已经提供分布式数据类型和数据结构作为 .NET 接口的实现。 提供了以下实现。

    1. 分布式列表 是一个分布式实现 System.Collections.Generic.IList<T>. 它允许重复键并保留它们的顺序。
    2. 分布式哈希集 是一个分布式实现 System.Collections.Generic.ICollection<T>. 它不允许重复键并且不保留顺序。 DistributedHashSet 具有用于两个集合的并集、交集和差集的附加方法。
    3. 分布式字典 是一个分布式实现 System.Collections.Generic.IDictionary<TKey, TValue>. 它允许用户将数据存储在键值对中。 此数据结构中不保留顺序。
    4.  分布式队列 也是一个分布式实现 System.Collections.Generic.ICollection<T>. 但是,存储在此数据结构中的数据在 FIFO 模型中被消耗,就像在队列的情况下一样。
    5. Counter 是一种分布式数据类型,允许应用程序递增或递减其值。
  3. 在分区副本中安排维护支持
  4. 在维护模式下停止服务器节点会导致 redis其余节点之间的数据分布。 这可能需要很长时间,具体取决于缓存中的数据。 在此期间,缓存处于易受攻击状态,某些操作可能会失败或需要更长时间才能执行。

    有了这个新特性,当一个节点停止维护时,缓存中的数据不会 redis致敬。 当集群中的节点短时间停止以应用补丁或其他维护工作时,该功能很有用。

  1.  位置关联性
  2. 位置亲和性意味着将相关的缓存项保留在一个节点上。 此功能可以在许多方面有所帮助,例如更快的查询和批量操作等。

  1.  全文搜索(分布式 Lucene.NET)
  2. Lucene.NET 是一个文本搜索引擎库,但它不是分布式的。 和 NCache的 Lucene.NET SDK,用户将能够构建分布式 Lucene 索引并查询它们。 NCache的 Lucene.NET SDK 类似于 Lucene.NET 库,因此用户无需学习太多即可使用 NCache的 DistributedLucene.NET API。

  1.  .NET Core 基于 NCache Windows 上的服务器
  2. . 基于 NET 核心 NCache 服务器也将在 Windows 上可用。 以前,它仅在 Linux 上可用。

  1.  服务器激活许可
  2. 这是一种新的许可方案,其中许可仅在缓存服务器上激活。 但是,缓存服务器也被激活以允许一定数量的客户端与缓存连接。 所需的服务器和客户端许可证数量与客户端-服务器激活方案中的相同。

  1.  基于 Web 的管理和监控
  2. NCache 配置、管理和监控是通过基于 Web 的应用程序完成的。 默认情况下,此应用程序安装在所有缓存服务器和客户端上。 用户可以从他们的浏览器连接任何服务器来管理他们的缓存集群。

    该应用程序是 ASP.NET Core 基于,因此,可以在 Windows 和 Linux 上运行。 此应用程序具有基于桌面的所有功能 NCache 经理有。 基于桌面 NCache Manager 和 Monitor 已停产。

  1.  新的 PowerShell 命令
  2. 添加了以下几个 PowerShell 命令;

    1. Get-ClusterHealth 在 PowerShell 中显示缓存集群的运行状况。
    2. Get-CacheServerStatistics 在 PowerShell 中显示一个或多个缓存服务器的性能计数器。
    3. Get-CacheClientStatistics 在 PowerShell 中显示一个或多个缓存客户端的性能计数器。

已修复的错误列表:

  • 744176 修复:即使集群不在脑裂方案中,脑裂自动恢复也会启动。
  • 744177 修复:没有默认构造函数的类无法压缩序列化。
  • 744178 修复:自定义依赖项不适用于客户端缓存。
  • 744179 修复:从管理器应用配置时,client.ncconf 中的 Keep-Alive 设置丢失。
 

发布说明 NCache 4.9 SP1

2018 年 8 月 07 日

介绍

In NCache 4.9 SP1,社区版已停产,专业版已恢复。 此版本修复了一些重要的错误并进行了一些新的增强。 增强功能和新增功能。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. .NET Core 基于 NCache Linux上的服务器:
  2. NCache 服务器 (.NET Core 基于)现在可以托管在 Linux 盒子上。 Linux 的单独安装程序 (.tar.gz) 可供下载。

  3. 30 天试用又回来了:
  4. 30 天的全面工作试用期又回来了。 现在评估期间没有性能限制。

  5. NCache Professional:
  6. 专业版具有与开源版相同的功能以及一些额外的管理 PowerShell 命令。 客户端和服务器安装都有 30 天免费试用期。

  7. 适用于 Linux 和 Windows Nano Server 的 Docker 映像:
  8. Docker Hub 上提供了适用于 Linux 和 Windows Nano 服务器的 Docker 映像。 Docker 文件也可以在 GitHub 上找到。

  9. 桥接队列计数器:
  10. 引入了 perfmon 计数器来监视网桥中的项目数。

  11. 标签 API 中的通配符搜索:
  12. 提供了对 GetKeysByTag 和 GetByTag API 中通配符搜索的支持。

  13. 从 API 启用客户端日志:
  14. 支持通过 CacheInitParams 接口从 API 启用客户端日志记录。

  15. 基于订阅的许可:
  16. 引入基于订阅的许可来支持云和本地部署。

已修复的错误列表:

  • 744169 修复:对大量参数的“IN”谓词查询超时。
  • 744170 修复:对客户端的请求超时继续在服务器上运行,因此导致 CPU 和内存过高问题。
  • 744171 修复:inproc 客户端缓存中的线程数不断增加。
  • 744172 修复:在客户端缓存的情况下,从缓存中获取项目而不解密。
  • 744173 修复:缺少 Memcache 网关服务。
  • 744174 修复:一些与锁定相关的方法缺少 API 日志记录。
  • 744175 修复:LINQPad 集成使用 4.8 程序集编译。
 

发布说明 NCache 4.9

2018 年 2 月 14 日

介绍

NCache 4.9 包含一些与 ASP 中的集群和缓存相关的重要特性.NET Core。 此设置还具有一些性能改进,因此建议所有用户进行升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 从裂脑中恢复:
  2. 裂脑是由于集群节点之间的临时网络故障导致多个子集群的情况。 在这种情况下,每个子集群都有自己的协调器节点,并且不知道其他子集群。 这最终可能导致数据不一致。 和 NCache 4.9 版本中,用户可以启用缓存集群从 SplitBrain 场景中自动恢复。

  3. ASP.NET Core 响应缓存:
  4. NCacheIDistributedCache 的实现利用分布式缓存标记帮助程序,能够显着提高 ASP 的性能.NET Core 应用程序通过缓存其响应。

  5. 主要性能改进:
  6. 基本 ADD、INSERT 和 GET 缓存操作的性能提高了 20-25%。

  7. 开源和社区版的更多功能:
  8. 开源版和社区版现在具有与企业版相同的客户端 API。 这意味着,所有企业开发人员功能现在也可在开源版和社区版中使用。

已修复的错误列表:

  • 744163 修复:启用锁定的多站点会话会在站点出现故障时重置会话。
  • 744164 修复:未正确计算驱逐索引大小。
  • 744165 修复:IN 查询不是线程安全的。
  • 744166 修复:管理操作很慢。
  • 744167 修复:缺少 Memcache 网关和客户端包装器。
  • 744168 修复:32 位应用程序无法初始化缓存。
  • 744169 修复:在进程内客户端缓存的情况下,当 InsertBulk API 与 DSWriteOption.WriteThru 一起使用时,不会调用 WriteThru 提供程序。
 

发布说明 NCache 4.8

2017 年 11 月 2 日

介绍

NCache 4.8 包含一些与运行时数据共享、消息传递和 .NET Core。 这是推荐给所有人的升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. NCache 免费社区添加:
  2. NCache 4.8 现在推出了一个免费社区,它提供了强大的基于 GUI NCache 管理器让您可以从中央位置轻松配置缓存。 和 NCache 4.9 版本中,用户可以启用缓存集群从 SplitBrain 场景中自动恢复。

  3. .Net Core 客户:
  4. NCache 现在提供了一个完全原生的 .NET Core 可以在 Windows 和 Linux 上运行的客户端。 在 Windows 上, NCache .NET Core 客户端通过 Windows Installer (.msi) 安装。 但是,在 Linux 上提供了单独的安装 (.tar.gz)。

  5. 码头工人支持:
  6. NCache 现在,缓存客户端和缓存服务器完全支持 Docker。 您可以配置要在 Docker 中部署的 .NET 应用程序并包括 NCache 客户端与它无缝连接。

  7. ASP.NET Core 会话提供者和 IDistributedCache:
  8. NCache 现在提供完整的 ASP.NET Core 支持,都在 .NET Framework 和 .NET Core (以前它只在 .NET Framework)。 这种支持包括强大的 ASP.NET Core 比常规 ASP 具有更多功能的会话提供程序.NET Core 会话提供者。 并且,它还包括对 ASP 中 IDistributedCache 接口的支持.NET Core.

  9. 发布/订阅 (Pub/Sub) 主题:
  10. 提供发布/订阅 (Pub/Sub) 消息传递范例,其中发布者将消息发送到通道,而不知道谁(如果有)是订阅者。 而且,订阅者只收到他们感兴趣的消息,而不知道发布者是谁。

  11. Entity Framework Core (EF Core) 2.0 扩展方法 NCache:
  12. NCache 已实现非常易于使用的 EF Core 2.0 扩展方法,允许您缓存通过 EF Core 2.0 获取的应用程序数据。

  13. 传输级安全 (TLS) 1.2:
  14. 所有通讯来自 NCache 客户 NCache 现在可以选择通过 TLS 1.2(比 SSL 3.0 更新的规范)保护服务器。 TLS 1.2 确保所有数据在 NCache 客户和 NCache 服务器是完全加密和安全的。

  15. 通过 PowerShell 进行总缓存管理:
  16. NCache 传统上提供了强大的基于 GUI 的缓存管理工具以及一组丰富的命令行工具。 现在, NCache 已在 PowerShell 中实现了所有命令行缓存管理工具。 您现在可以编写 PowerShell 脚本来进行更复杂的缓存管理。

  17. 缓存客户端保持活动状态:
  18. 某些防火墙会中断空闲网络连接,这会导致缓存客户端与缓存服务器通信出现问题 NCache。 如果在客户端节点上启用缓存客户端保持活动功能,则会以可配置的时间间隔(类似于心跳)自动向缓存服务器发送轻量级数据包。 这些数据包仅在客户端和服务器之间没有活动的情况下发送,因此不会干扰常规的客户端/服务器流量。

  19. 薄 NCache 经理项目文件:
  20. NCache Manager 用于在项目文件中保存一些缓存配置信息。 但是,如果多人尝试从不同的计算机修改缓存配置,这通常会导致数据完整性问题。 为了解决这个问题, NCache Manager 现在不在其项目文件中存储任何缓存配置信息。 相反,所有配置信息都保存在所有地方通用的缓存服务器上,并且不再出现数据完整性问题。

  21. 仅缓存服务器许可选项:
  22. 传统上, NCache 仅提供了客户端/服务器许可选项,需要缓存客户端和缓存服务器都获得许可。 然而,现在 NCache 提供额外的仅服务器许可选项,其中缓存客户端不需要任何许可证。 只有缓存服务器需要许可证。 如果您希望使用仅服务器许可,请联系您的客户经理了解详细信息。

已修复的错误列表:

  • 744156 修复:无法启动特定缓存 id 启动缓存时发生异常。 很少发生。
  • 744157 修复:在客户端缓存上启用压缩会导致错误行为。
  • 744158 修复:状态传输期间的内存泄漏。
  • 744159 修复:在具有逐出策略 LFU 的缓存上执行多个添加/删除操作时,客户端会发生空引用异常。
  • 744160 修复:使用 GetCacheItem 获取项目时已锁定的对象被锁定。
  • 744161 修复:删除具有正确锁定句柄的项目时发生项目被锁定异常。
  • 744162 修复:当使用 acquireLock= false 将正确的锁句柄传递到 Cache.Get() 时,无法获取锁定的项目。
 

发布说明 NCache 4.6 SP3

2017 年 5 月 10 日

介绍

NCache 4.6 SP3 包含一些次要功能和客户端缓存优化。 还有客户报告的各种错误修复。 这是推荐给所有人的升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. SignalR Backplane NCache:
  2. NCache 4.6 SP3 中,缓存可用于跨部署在多个 Web 服务器上的 SignalR 应用程序分发消息。

  3. 客户端数据读取器:
  4. 引入了客户端数据读取器,在缓存状态传输过程中更加稳定和容错。

  5. 更多样本:
  6. 更多样品已发货 NCache 安装。 现有样本也被重构。

已修复的错误列表:

  • 744149 修复:如果应用程序广泛使用线程池,则缓存操作超时。
  • 744150 修复:状态转移需要太多时间。
  • 744150 修复:ExecuteReader 调用在节点启动或关闭时引发状态传输丢失异常。
  • 744151 修复:使用客户端缓存时,值不能为空异常。
  • 744152 修复:如果在启用加密的情况下使用客户端缓存,则一些请求会引发“输入不是完整的块”异常。
  • 744153 修复:从 ASP.NET 应用程序进行进程内客户端缓存初始化时出现对象引用异常。
  • 744154 修复:使用客户端缓存时,值不能为空异常。
  • 744155 修复:如果在缓存上配置了安全性,则配置为自动启动的缓存不会自动启动。
 

发布说明 NCache 4.6 SP2

2017 年 1 月 3 日

介绍

NCache 4.6 SP2 包含一些客户端缓存优化、网桥拓扑的增强以及与缓存监控相关的功能。 还有客户报告的各种错误修复。 这是推荐给所有人的升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 从 API 监控缓存客户端:
  2. 引入了一个新的 API 来监控与集群连接的缓存客户端。 使用此 API,可以获取已连接客户端的列表,并且可以在任何新客户端连接或现有客户端断开连接时注册通知。

  3. 优化的客户端缓存:
  4. 客户端缓存现在已经优化了与集群缓存同步的方式。 客户端缓存现在可以按可配置的时间间隔批量接收事件,而不是在每次对集群缓存进行更新时接收事件。 这减少了流量和内存使用。

  5. 跨桥的同名缓存:
  6. NCache Bridge 现在可以拥有同名的缓存。

  7. 分布式缓存加载器:
  8. 缓存加载器 NCache 现在可以在多个节点上运行,这有助于加快缓存加载速度。

  9. 符合 FIPS 的 AES 加密:
  10. SP2 中引入了符合 FIPS 的 AES 加密。

  11. ASP.NET Core 会话提供者:
  12. NCache 用于 ASP 的 ASP.NET 会话存储提供程序.NET Core 现在支持应用程序。

  13. 许可变更:
  14. NCache 现在根据机器拥有的核心数量进行许可。 每 4 个核心使用 1 个许可证。 即使核心数量少于 2,也至少使用 8 个许可证来激活计算机。对于 16 个核心,使用 4 个许可证,对于 20 个核心,使用 5 个许可证,对于 32 个核心,使用 8 个许可证。 开发人员许可的计算机现在可以连接到远程缓存,但每秒请求数以及客户端可以向远程缓存发出的请求总数受到限制。

已修复的错误列表:

  • 744134 修复:当凭据通过 Init 参数传递时,具有安全性的客户端缓存会引发错误。
  • 744136 修复:在缓存上启用 Clientcache 和安全性时,创建 CacheSyncDependency 时出现 OperationFailedException。
  • 744137 修复:如果在缓存上启用了安全性,Clientcache 不会引发权限异常。
  • 744139 修复:一些命令在失败时不会自动重试。
  • 744140 修复:桥异常“对象不是 HP 时间”。
  • 744141 修复:Bridge 的 IConflict 解析器上的对象引用异常。
  • 744142 修复:缓存解析查询时引发“密钥已存在”异常。
  • 744144 修复:客户端缓存的客户端计数器不起作用。
  • 744145 修复:状态转移期间 GetByTag 调用发生异常“集合已修改”。
  • 744146 修复:在节点关闭的情况下,批量调用仅从一个节点返回数据。
  • 744148 修复:如果在运行时在桥中添加新节点(被动),则无法复制队列。
 

发布说明 NCache 4.6 SP1

2016 年 5 月 03 日

介绍

NCache 4.6 SP1 包含一些与内存相关的优化以及性能的巨大改进 NCache. 这是对所有人的推荐升级 NCache 用户。

已修复的错误列表:

  • 744118 修复:如果没有主要或辅助凭据,则会在安全管理操作中引发 NullReferenceException。
  • 744119 修复:缓存主机进程在启动缓存时在 SecurityException 上崩溃。
  • 744120 修复:Client.ncconf 客户端不反映安全配置更改。
  • 744121 修复:通过客户端节点上的管理器添加安全凭据时,密码可见。
  • 744122 修复:如果在缓存上启用了安全性,Clientcache 会引发 db 同步依赖项异常。
  • 744123 修复:如果在缓存上启用了安全性,Clientcache 不会引发权限异常。
  • 744124 修复:使用后写式执行批量操作(即插入批量和添加批量)时不会引发回调。
  • 744125 修复:CacheItem 从缓存中删除后始终添加版本 1,从而导致数据完整性问题。
  • 744126 修复:“输入字符串的格式不正确”在各种区域设置的服务启动时抛出异常。
  • 744127 修复:如果给出空依赖项键,则不会引发异常。
  • 744128 修复:添加空子组时引发异常。
  • 744129 修复:缓存主机进程在服务重新启动之间未终止,因此导致多个孤立进程。
  • 744130 修复:缺少用于缓存所有查询的 Cache-all 功能。
 

发布说明 NCache 4.6

2015 年 12 月 7 日

介绍

NCache 4.6 包含一些与运行时数据分析、性能和内存优化相关的重要功能 NCache. 这是对所有人的推荐升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 对象数据格式:
  2. NCache 现在可以将缓存配置为以对象形式存储数据。 默认情况下,所有数据都以二进制形式存储。

  3. 单独进程中的每个缓存:
  4. 每个缓存在 NCache 现在托管在自己的进程中,该进程独立于所有其他缓存运行。 这个过程的管理是通过 NCache 服务,其中包含有关计算机上运行的所有缓存进程的信息。

  5. 地图缩减:
  6. MapReduce 在 NCache 将允许开发人员编写能够并行处理大量非结构化数据的程序 NCache 簇。 为了分发输入数据并并行分析它,MapReduce 在任何规模的集群中的所有节点上并行运行。

  7. 聚合器:
  8. 聚合器处理数据记录并返回编译结果。 它将多个来源的值进行分组,可以执行各种操作,例如求和、计算平均值、查找最小值/最大值等,并返回单个结果

  9. 入口处理器:
  10. NCache 提供在服务器端针对一组缓存条目执行用户代码的能力。 条目处理器可以修改服务器端的缓存条目,而不需要这些条目在网络上传输以进行获取和更新操作。

  11. 数据阅读器:
  12. 现在可以像数据库一样使用数据读取器在缓存上执行查询。 使用数据读取器,可以从服务器中以多个可配置大小的块检索结果集。 这种方法提供了更好的性能并且在客户端使用更少的内存。

  13. 默认到期:
  14. 用户现在可以配置 NCache 具有默认命名的到期时间。 NCache 当项目插入到缓存中且没有任何过期时间或使用命名的默认值显式插入时,服务器将使用默认过期时间。

  15. 订购条款:
  16. Select 语句现在可以包含 orderby 子句,该子句将返回按一个或多个指定属性排序的结果集。

  17. 日志查看器:
  18. 用于查看和监控由生成的日志的 GUI 工具 NCache 服务器和客户端位于一处。 可以在同一个工具中查看所有服务器的日志文件。 该工具可以过滤日志条目,还可以为重要的日志条目添加书签。

  19. 实时升级:
  20. NCache 4.4 SP2 可以升级到 NCache 4.6 使用其桥接拓扑不会丢失任何数据。

  21. 基于核心的许可:
  22. NCache 从 4.6 开始,缓存服务器和客户端将根据盒子拥有的核心数量而不是 CPU 数量进行许可。

 

发布说明 NCache 4.4 SP2

2015 年 7 月 28 日

介绍

NCache 4.4 SP2 包含一些与内存和性能相关的重要增强 NCache。 这是推荐给所有人的升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. DumpCacheData 工具:
  2. Dumpcachedata 工具通过枚举缓存数据来转储正在运行的缓存,并将该数据存储在用户指定的位置。 该数据稍后可以重新加载到新的或相同的缓存中。 当客户需要重新启动缓存服务器而又不想丢失缓存中的业务关键数据时,此工具非常有用。

  3. DumpCacheKeys 工具:
  4. DumpCache 工具重命名为 DumpCacheKeys。

  5. LinqPad 集成:
  6. LinqPad 是第三方工具,可与 NCache 查询缓存数据。 数据以表格形式显示在 LinqPad 控制台上。

  7. 服务配置中的 HotApplicable 设置:
  8. 服务配置级别有一些设置现在可以热应用于服务器上运行的缓存。 以前,需要重新启动服务才能应用服务配置文件中定义的设置。 HotApplicable 设置列表如下:

    # 物业名称 热门适用
    1 NCache服务器.LicenseLogging USB MIDI(XNUMX通道)
    2 NCache服务器.EnableNagling USB MIDI(XNUMX通道)
    3 NCache服务器.NaglingSize USB MIDI(XNUMX通道)
    3 NCache服务器.NaglingSize USB MIDI(XNUMX通道)
    4 NCache服务器.EventBulkCount USB MIDI(XNUMX通道)
    5 NCacheServer.ExpirationBulkRemoveSize USB MIDI(XNUMX通道)
    6 NCacheServer.ExpirationBulkRemoveDelay USB MIDI(XNUMX通道)
    7 NCache服务器.EvictionBulkRemoveSize USB MIDI(XNUMX通道)
    8 NCache服务器.EvictionBulkRemoveDelay USB MIDI(XNUMX通道)
    9 NCache服务器.BulkItemsToReplicate USB MIDI(XNUMX通道)
    10 NCache服务器.EnableCacheLastAccessCount USB MIDI(XNUMX通道)
    11 NCacheServer.EnableCacheLastAccessCountLogging USB MIDI(XNUMX通道)
    12 NCache服务器.CacheLastAccessCountInterval USB MIDI(XNUMX通道)
    13 NCache服务器.CacheLastAccessLogInterval USB MIDI(XNUMX通道)
    14 NCache服务器.LOHPoolSize USB MIDI(XNUMX通道)
    15 NCache服务器.LOHPoolBufferSize USB MIDI(XNUMX通道)
    16 NCache服务器.CacheSizeThreshold USB MIDI(XNUMX通道)
    17 NCache服务器.CacheSizeReportInterval USB MIDI(XNUMX通道)
    18 NCache服务器.LogClientEvents USB MIDI(XNUMX通道)
    19 NCache服务器.EventLogLevel USB MIDI(XNUMX通道)
    20 NCache服务器.AllowRequestEnquiry USB MIDI(XNUMX通道)
    21 NCache服务器.RequestEnquiryInterval USB MIDI(XNUMX通道)
    22 NCache服务器.ResponseDataSize USB MIDI(XNUMX通道)
    23 NCacheServer.EnableSnapshotPoolingCacheSize USB MIDI(XNUMX通道)
    24 NCache服务器.SnapshotPoolSize USB MIDI(XNUMX通道)
    25 NCache服务器.SnapshotCreationThreshold USB MIDI(XNUMX通道)
    26 NCache服务器.RequestInquiryCleanInterval USB MIDI(XNUMX通道)
  9. 客户端缓存优化:
  10. 在客户端缓存中进行了一些架构更改,以便在批量操作时获得更好的性能。

已修复的错误列表:

  • 744113 修复:如果出现连接失败或其他内部异常,则不会重试操作。 相反,这些异常会被抛出到客户端应用程序。
  • 744114 修复:驱逐默认关闭。
  • 744115 修复:会话锁定默认关闭。
  • 744116 修复: NCache Manager 允许非管理员执行管理操作。
  • 744117 FIX:激活超过或等于 32 个内核的机器时,激活工具崩溃。
 

发布说明 NCache 4.4 SP1

2015 年 4 月 04 日

介绍

NCache 4.4 SP1 包含一些新功能以及与内存和性能相关的重要增强功能 NCache. 这是对所有人的推荐升级 NCache 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 视觉工作室集成:
  2. 现在可以在 Visual Studio 中执行基本管理和配置操作。 和 NCache 4.4 SP1,Developer安装自带'NCache 管理器扩展,帮助开发者管理 NCache 来自视觉工作室。 Visual Studio 2010/2012/2013 支持 NCache.

  3. NuGet 包 NCache Enterprise 4.4 SDK:
  4. 提供 NuGet 包供开发人员使用 NCache 无需安装 NCache 在他们的机器上。 有了这个包,开发人员可以使用以下方式编写他们的应用程序 NCache API 并使用 InProc 缓存对其进行测试。

  5. 实体框架 6.0 支持:
  6. Entity Framework 6.0 和 6.1 集成在 NCache 4.4 SP1。 之前, NCache 支持 Entity Framework 5.0 或更早版本。 在此服务包中, NCache 还为 Entity Framework 6.0 提供缓存扩展,使开发人员可以更好地控制要缓存的实体。 对于希望更好地控制缓存实体的开发人员来说,这是无代码更改配置选项的替代方案。

  7. 内存和性能优化:
  8. NCache 4.4 SP1 使用定制的数据结构,这些数据结构经过增强,占用的内存更少,并且比 .NET 的本机数据结构性能更好。 这些数据结构尽可能避免在大对象堆(LOH)上进行分配,以防止 NCache 进程进入严重的内存碎片状态。 因此, NCache 4.4 SP1 对内存和性能都有重大提升。

  9. 脑裂监测:
  10. 当集群分裂导致某些服务器无法与其余服务器连接时,就会发生网络分区或脑裂。 这些实例现在已登录到事件查看器,并且还可以从以下位置配置此类场景的电子邮件警报 NCache 经理。

  11. Windows Server 2012 R2 认证:
  12. NCache 4.4 SP1 已通过 Windows Server 2012 R2 认证。 它已经通过了微软的所有兼容性测试。 微软证实了这一点 NCache 按照微软的标准工作。

已修复的错误列表:

  • 744105 修复:一些用户特定的 NCache 设置保存到注册表的 HKLM 部分,这会在安全环境中引发错误。
  • 744106 FIX:开发版中的 Java 客户端无法连接到缓存。
  • 744107 修复:NActivate 显示 NCache 尽管由于权限限制未能将激活信息保存到注册表中,但已在计算机上成功激活。
  • 744108 修复:当同时添加聚合依赖项和滑动依赖项时,聚合依赖项不起作用。
  • 744109 修复: NCache 在某些情况下在状态转移期间崩溃。
  • 744110 修复:由于配置中指定的缓存名称区分大小写,Java 和 .NET 客户端之间的数据共享不起作用。
  • 744111 修复:配置客户端缓存时,GetIfNewer 不会重置项目版本。
  • 744112 修复: NCache 安装在启动失败时回滚 NCache 服务。
 

发布说明 NCache 4.4

2015 年 1 月 08 日

介绍

NCache 4.4 包含一些与缓存稳定性相关的重要增强功能和一些主要错误修复。 建议所有用户进行升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 年度许可:
  2. NCache 许可已从之前支持的永久模式移至年度许可模式。

  3. 内部数据结构的内存优化:
  4. 内部数据结构经过优化,可减少存储项的内存开销。

  5. 集群启动时间改进:
  6. 集群大小超过 20 个节点的集群启动时间显着改善。

  7. 用于内存使用的新性能计数器:
  8. 引入了新的 perfmon 计数器来测量各种索引获取的内存。 以下是它们各自的简要描述:

    • 逐出索引大小:缓存上定义的逐出索引大小。
    • 过期索引大小:缓存上定义的过期索引的大小。 (所有依赖项元信息也包含在此计数器下,例如“关键依赖项”、“SQL 依赖项”等元信息...)
    • 组索引大小:组和子组索引的大小。
    • 查询索引大小:缓存上定义的查询索引大小。
    • 注意:“缓存大小”计数器现在包括实际键、值对的大小以及上述索引使用的内存。
  9. OQL 相关的新 permfon 计数器:
  10. 还引入了与 OQL 相关的新 perfmon 计数器来测量与查询相关的缓存操作的性能,例如:平均 µs/查询执行:查询执行时所花费的平均时间。 平均查询大小:查询返回的平均项目数。 每秒查询数:每秒对缓存的查询数。

  11. 支持 Windows Server 2012 R2:
  12. NCache 现在与 Windows Server 2012 R2 完全兼容。

已修复的错误列表:

  • 744101 修复:服务器节点加入时某些连接的客户端超时。
  • 744102 修复:当其中一个节点出现故障且每个节点的缓存填充量超过 50% 时,两个节点的分区副本中的项目会丢失。
  • 744103 修复: NCache 管理器在多个 NIC 配置对话框中列出 IPv6 地址。
  • 744104 修复:命令行工具中的其他一些小错误修复。
 

发布说明 NCache 4.3 SP1

2014 年 6 月 30 日

介绍

NCache 4.3 Service Pack1 (SP) 包含一些与缓存稳定性相关的重要增强功能和主要错误修复。 这是推荐给所有人的升级 NCache 4.3 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 客户端日志记录可通过 client.ncconf 文件进行配置:
  2. 您可以通过修改 client.ncconf 文件(位于 %NCHOME%/config 文件夹中)来配置客户端日志记录。默认情况下,所有缓存都禁用客户端日志记录,但您可以随时通过以下方式为缓存启用客户端日志记录:指定“enable-client-logs”的“true”值,例如

    <cache id="mycache" ... enable-client-logs="false|true" log-level="error|info"/>
    

    “enable-client-logs”属性的可能值为“false”和“true”。 默认值为“假”。

    “日志级别”属性的可能值是“错误”和“信息”。 默认值为“错误”。

  3. 经验 remote clients 在不同的网络上:
  4. 现在 NCache 来自不同或远程网络的客户端也可以访问不同网络上存在的缓存。 要实现此目的,只需在 ' 中添加以下两个标签Alachisoft.NCache.Service.exe.config' 缓存服务器节点上的文件。

    <add key="NCacheServer.MgmtEndPoint" value="public-ip:public-port" />
    <add key="NCacheServer.ServerEndPoint" value="public-ip:public-port" />
    

    其中public-ip是暴露在网络外部的ip-address,publicport是网络外部可以访问的端口。

  5. 客户端缓存可在 NCache 经理:
  6. 客户端缓存以前只在 NCache Manager 各自拥有二级(2nd level)缓存,但现在可以在中查看现有的客户端缓存 NCache “缓存资源管理器”的“本地缓存”树节点下的管理器。

  7. 进程外本地和客户端缓存的电子邮件警报:
  8. 进程外本地缓存和进程外客户端缓存支持电子邮件警报。 您可以选择事件 NCache 会向您发送电子邮件通知,例如关于缓存启动、缓存停止等。

  9. 客户端缓存可以从缓存集群网络之外进行配置:
  10. 可以使用命令行工具(例如 CreateClientCache、AddClientNode 等)从缓存集群网络外部配置客户端缓存。

  11. 支持 Windows Server 2012:
  12. NCache 现在与 Windows Server 2012 完全兼容。

  13. Java 客户端 NCache:
  14. NCache 提供 Java 客户端 API 以使用 NCache 作为基于 Java 的应用程序中的缓存存储。 NCache Java 客户端与 .NET 客户端 API 完全兼容。

已修复的错误列表:

  • 743101 修复: NCache 使用带有客户端缓存的 DELETE 查询时服务崩溃。
  • 743102 修复:GetCacheItem() API 与 ItemVersion 一起使用时会导致问题。
  • 743103 修复: NCache 当“CacheLaoder”已启用但未配置时,管理器无法应用配置。
  • 743104 修复:缓存返回无效子组的项目。
  • 743105 修复:对不存在的密钥调用删除/删除(密钥、版本)时出现空引用异常。
  • 743106 修复:如果配置了直读且未配置直写提供程序,状态传输将不起作用,反之亦然。
  • 743107 修复:“请求队列大小”客户端计数器永远不会归零。
 

发布说明 NCache 4.3

2014 年 3 月 05 日

介绍

NCache 4.3 引入了对于企业级应用程序至关重要的新功能和重要增强功能。 这个新版本允许 NCache 安装在云端; 在 Windows Azure 和亚马逊上。 另外,还有一个包装器 Memcached 现在可供想要更换的现有用户使用 Memcached NCache。 这个新版本提供了一个用于在多个平台(Java 和 .Net)之间共享运行时数据的包。 Java 已与 .NET 100% 兼容,现在您可以使用以下方式管理您的 Java 客户端 NCache 经理。

增强功能和新增功能

有关 4.3 中所有功能的完整列表,请阅读 NCache 特征

  1. 带有数据的事件:
  2. 在向缓存注册事件时,缓存客户端可以在事件发生时告诉缓存它们是否对数据或元数据感兴趣。 默认情况下,数据或元数据不会随事件一起发送到客户端。

    引入了用于注册事件的新 API,而旧 API 已被标记为过时。 旧的 API 无法用于接收带有事件的数据。

  3. 直写/后写增强功能:
  4. 现在可以为以下行为配置直写和后写:

    • 批处理 – 在可配置的时间间隔后,可以将多个后写操作批量写入数据库。 单批次中的最大项目数也是可配置的。
    • 保留失败的操作 – 提供商现在可以决定是否将某个项目保留在缓存中,即使该项目在数据库上失败也是如此。
  5. 查询分组:
  6. 现在可以像在数据库中一样使用“Group by”子句注册查询,以根据需要对结果进行分组。

    为此方法引入了一个新的 API。 目前,API 中的新方法“ExecuteReader”只有在使用“group by”时才能使用。 对于所有其他选择语句,应使用旧方法。

  7. 查询中的删除语句:
  8. 与在数据库中一样,现在可以通过编写删除语句从缓存中删除项目。 以前,仅支持 select 和 update 语句。 引入了新的 API 来支持删除语句。 ExecuteNonQuery 将用于删除语句。

  9. 优雅的节点停止:
  10. 现在可以在集群中正常停止节点。 此操作将确保所有已到达节点的客户端请求在完全停止之前在缓存上执行。 同样,当时队列中待处理的所有后写操作也会在数据源上执行。 但是,该节点不再接受客户端请求。

  11. 加密增强:
  12. 对加密功能进行了以下增强:

    • 支持 AES-128、AES-192、AES-256 加密。
    • 启用加密后,索引数据也会被加密。
  13. 紧凑的序列化增强:
  14. 对紧凑序列化进行了以下增强:

    • 用户可以选择和取消选择要紧凑序列化的数据成员。
    • 字节数组不再序列化。
    • 紧凑型可热应用。
  15. 增强的 CacheInitParams:
  16. 初始化缓存时的 CacheInitParams 现在可以涵盖 client.ncconf 中可以配置的所有内容。 以前,总是需要 client.ncconf 来初始化缓存。 通过 CacheInitParams 传递的配置对 client.ncconf 中配置的设置具有覆盖作用。

  17. InProc 中的反序列化数据:
  18. InProc 缓存现在以反序列化形式保存对象。 这消除了序列化和反序列化的成本,从而提高了性能。 InProc 客户端缓存还以反序列化形式保存对象。

  19. API 调用记录:
  20. 现在只需在客户端配置中配置几个选项即可记录 API 调用。 这些日志是在客户端上生成的,对于确定正在调用哪些缓存方法以及调用顺序非常有帮助。

  21. 可配置的日志位置:
  22. 用户可以配置在自己选择的位置生成日志文件。 每个缓存可以有自己的日志位置。 默认情况下,所有日志文件都会在安装目录的 log-files 文件夹中生成。

  23. 在主动/主动和主动/被动桥拓扑之间切换:
  24. 在将缓存添加到网桥时,用户可以将缓存配置为作为网桥的主动或被动成员参与。 即使网桥启动并运行,用户也可以将被动变为主动,将主动变为被动,而不会丢失任何数据。 配置网桥的用户体验也发生了变化,因为网桥中的拓扑可以随时在主动-主动到主动-被动之间切换。 其他拓扑“星型”和“轮辐型”目前在桥接中不可用。

  25. 桥接拓扑中的主缓存:
  26. 用户可以选择桥中两个缓存之一作为“主缓存”。 每当桥接器中的缓存之间需要进行状态传输时,数据就会从主缓存传输到非主缓存。 当主缓存出现故障时,唯一剩余的缓存会自动成为主缓存。

  27. 桥接拓扑中的连接/断开缓存:
  28. 缓存管理员可以在网桥运行时临时连接缓存和从网桥断开连接。 当缓存断开连接时,桥接器和断开连接的缓存之间不会传输任何数据。 同样,由于断开连接的缓存不再接收任何数据,因此桥另一侧的缓存会停止将数据排队到桥。 缓存可以随时重新连接。

  29. 套接字协议管理:
  30. 用于管理和监控操作的通信协议从“.Net Remoting”更改为“Socket”。 这使得 NCache 与JvCache的管理和监控工具相互兼容。

  31. NCache 经理兼容性:
  32. NCache Manager 现在也可以用于管理 JvCache 客户端。 NCache Manager 还可以获取 JvCache 集群的 SNMP 计数器。

  33. 通过机器名称或 IP 地址连接到远程 Perfmon:
  34. 我们观察到,在某些环境中,远程性能计数器只能通过其计算机名称进行访问,少数情况下可以通过其 IP 地址进行访问。 所以在这个版本中 NCache, NCache 管理器有一个选项,用户可以选择通过其 IP 或计算机名称收集远程性能计数器。

  35. 已解决的 DLL 锁定问题:
  36. NCache Manager 用于在用户配置查询索引时锁定 dll。 在这个版本中, NCache Manager 在单独的应用程序域中打开给定的 dll,因此永远不会锁定 dll。

  37. 报表视图控件 NCache 监控:
  38. 还有另一种类型的仪表板可用 NCache 允许用户创建报告视图样式仪表板的监视器。 在此仪表板中,用户有两个报表控件。 一种用于缓存服务器节点,另一种用于客户端节点。 用户可以在此控件中删除计数器,它们的值将显示在报告视图样式中,如 perfmon 中所示。

  39. 记录计数器 NCache 监控:
  40. 报告视图中添加的计数器也可以配置为记录。 用户可以随时开始和停止记录。 他们还可以通过指定开始和停止时间来安排日志记录自动启动。 这些日志文件以 .csv 格式生成。

  41. NCache 显示器兼容性:
  42. NCache Monitor 现在还可用于监视 JvCache。 取决于所选集群是否属于 NCache 或 JvCache,它分别从 perfmon 或 SNMP 获取计数器。

  43. 添加了新的命令行工具:
  44. 以下新的命令行工具被添加到 NCache:

    1. 创建缓存:配置缓存工具现已更改为创建缓存工具。 它将处理 2 种情况。
      • 简单情况:在这种情况下,它将采用最少的必需参数(即缓存名称、服务器、端口、拓扑、大小、驱逐策略等)并使用默认值创建缓存(例如 NCache 经理)。
      • 高级情况:在这种情况下,包含缓存设置的配置文件将被视为带有将在其上创建缓存的服务器列表的参数。
    2. 添加支持源:它将缓存 ID、程序集路径、类名、提供程序名称、读/写选项以及依赖的程序集文件夹作为输入参数。
    3. 添加启动加载器:它将缓存 ID、程序集路径、类名以及依赖的程序集文件夹作为输入参数。
    4. 添加紧凑类型:它将缓存 ID、程序集路径、类名以及依赖的程序集文件夹作为输入。 如果指定的类是 IGenericTypeProvider 的实现,这将通过实现的提供程序注册泛型类型。
    5. 添加查询索引:它将缓存 ID、程序集路径、类名、属性/属性列表以及依赖的程序集文件夹作为输入。
    6. 删除支持源:它将缓存 ID、服务器、提供程序名称和通读/通写选项作为输入参数。 它将从所有注册节点上的指定缓存中删除后备源。
    7. 删除启动加载程序:以缓存 ID 和服务器作为输入参数,并从所有注册节点上的指定缓存中删除启动加载程序。
    8. 删除紧凑类型:它将缓存 ID、服务器和类作为输入参数,并从所有注册节点上的缓存中删除指定的紧凑类型。
    9. 删除查询索引:它将缓存 ID、服务器和类名/属性作为输入参数,并从所有注册节点上的缓存中删除指定的查询索引。
    10. 添加数据共享:它采用包含数据共享配置(2 个程序集/jar 文件之间的映射)、缓存 ID、服务器和依赖程序集文件夹的配置文件作为输入参数。
    11. 删除数据共享:以缓存id和服务器作为输入参数,并从所有注册节点上的缓存中删除数据共享类型。
    12. 获取缓存配置:它将缓存 ID、服务器和路径(应在其中创建包含缓存设置的文件)作为输入参数。 此工具将仅在指定路径上名为缓存 id 的文件中生成缓存设置(与环境无关的设置)。
    13. 部署程序集:它将缓存 ID、服务器和程序集/文件夹路径作为输入参数。 指定的程序集将部署在所有已注册的缓存服务器上。 如果指定了文件夹路径,则将部署该文件夹中的所有程序集。
  45. Memcached 包装器 NCache:
  46. 现有 Memcached 用户现在可以切换到 NCache 无需更改代码。 有两种方法可以替换 memcached NCache:

    1. Memcached 网关
    2. 该网关作为 Windows 服务安装在客户端和服务器上。 它是一个实现 memcached 包装的协议 NCache 在里面调用。 这样,所有 API 调用都来自 memcached 客户端被路由到 NCache 通过此网关的服务器。 此方法只需要更改配置。

    3. Memcached 插入
    4. 一些开源客户端实现 memcached 被修改为可以使用 NCache 服务器,同时保持其 API 不变。 这些实现的源代码和二进制文件随 NCache 安装。

    跟随 memcached 此方法支持客户端实现:

    • 恩依姆
    • 贝特
    • NET Memcached 客户端库
  47. NHibernate 集成:
  48. NHibernate 集成是从头开始编写的,以消除以前实现的限制。 以下是新实施中的一些增强功能:

    • 所有 NHibernate 应用程序只有一个配置文件。
    • 现在可以在区域级别配置设置。 该地区的每个班级都将使用这些设置。
    • 清除区域现在仅清除驻留在该特定区域的条目。
  49. ASP.NET OutputCacheProvider 挂钩:
  50. 用户现在可以编写自己的代码来修改缓存项,然后再将其插入 NCache。 用户可以通过编写这些钩子来更改输出缓存项的过期时间、依赖关系等。

    为此,用户必须实现 OutputCacheProvider 提供的接口,然后在 web.config 中注册该程序集和类。

  51. 缓存项目的标记
  52. 从各种缓存的所有项目 NCache 集成带有特殊标签,用于确定缓存项的类型。 例如,在缓存中创建的所有会话都有一个特殊的标记,表明它是会话缓存项。 这样用户就可以识别缓存中的任何项目,无论它是否是会话。

    同样,OutputCache 和 ViewState 项也使用它们自己的标记进行标记。

 

发布说明 NCache 4.1 SP3

2013 年 10 月 24 日

介绍

NCache 4.1 SP3 包含一些与缓存稳定性相关的重要增强功能和主要错误修复。 这是推荐给所有人的升级 NCache 4.1 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 会话存储提供程序中的操作重试:
  2. NCache ASP.NET 会话缓存的会话存储提供程序现在能够在操作失败时重试任何缓存操作。 在中添加以下属性 NCache 会话存储提供程序设置:

    • 操作重试=“3”
    • operationRetryInterval="3000"
    • “OperationRetryIterval”属性以 w 秒为单位取值。
  3. 经验 remote clients 在不同的网络上:
  4. 对象缓存提供程序中的操作重试 NCache .NET4x 的对象缓存提供程序现在能够在操作失败时重试任何缓存操作。

    在下面添加以下条目在应用程序配置文件(app.config 或 web.config)中,例如:

    <add key="operationRetries" value="3"/>
    <add key="operationRetryInterval" value="2000"/> // 'operationRetryInterval' is the value in milli seconds 
  5. Viewstate 分组页面:
  6. ViewState 缓存中实现了一项新功能,允许对相关页面的视图状态进行分组。 这将为视图状态缓存提供更多控制。 使用此功能,可以在不同的缓存中缓存不同的 veiwstate 组,或者为每组 viewstate 使用不同的过期时间来缓存 veiwstate。

  7. 每个会话要缓存的最大 VeiwState:
  8. 这种增强在 NCache ViewState 缓存模块提供了限制缓存中每页视图状态数量的选项。 在 ' 中添加 'maxViewStatesPerSession' 属性“ncContentOptimization”标签下的标签。 该属性采用整数值。

  9. 缓存启动加载器延迟:
  10. 在Cache启动时,Cache启动加载程序不会立即启动。 它的启动会在缓存启动后延迟 20 秒。 此延迟可通过使用 ' 中的以下属性进行配置Alachisoft.NCache.Service.exe.config'文件:在下面添加以下条目在 NCache 服务配置文件,如:

    <add key="NCacheServer.CacheLoaderStartupDelay" value="20"/>
    此属性的默认值为 20 秒。

  11. 自动启动缓存之间的延迟:
  12. 为了避免使用自动启动功能同时启动缓存时出现部分集群连接问题,可以引入延迟。 在下面添加以下条目在 NCache 服务配置文件,如:

    <add key="NCacheServer.CacheStartDelay" value="3"/>
    此属性的默认值为“3 秒”。

  13. 抑制 IndexNotDefinedException:
  14. 当客户端查询未建立索引的属性时,会向客户端抛出“IndexNotDefined”异常。 当使用NamedTags时,由于运行时为NamedTags创建索引,因此很容易出现此问题。 现在可以配置来抑制此异常。 在下面添加以下条目在 NCache 服务配置文件,如:

    <add key="NCacheServer.DisableIndexNotDefinedException" value="true|false"/>

  15. NCache 客户端应用程序可以“同步”或“异步”使用缓存生成的事件:
  16. 客户端应用程序可以配置为“同步”或“异步”使用所有接收到的事件。 默认事件消费模式为 NCache 客户端是“异步”的,但事件可以在客户端“同步”使用。 在下面添加以下条目在客户端应用程序“App.config”文件中,例如:

    <add key="NCacheClient.AsynchronousEventNotification" value="true|false"/>
    <add key="NCacheClient.NumberofEventProccesingThreads" value="2"/>
    对于同步事件处理模式,本例中使用了 2 个线程,但可以配置为根据客户端应用程序的要求调整事件处理需求。 默认最小值为“1”,默认最大值为“5”。

  17. 更多基于 perfmon 的缓存和缓存客户端计数器:
  18. 新的服务器端计数器:

    • 响应队列计数:响应队列中的项目数,所有响应在实际发送之前都在此队列中排队。
    • 响应队列大小:以字节为单位指定的响应队列的大小。 队列中所有响应的数据大小。
    • 事件队列计数:事件队列中的事件数。
    • 新的客户端计数器:

    • 每秒处理的事件数:客户端每秒处理的事件数。
    • 每秒触发的事件数:客户端每秒触发和接收的事件数。
    • 平均毫秒/事件:客户端处理单个事件所花费的平均时间。
  19. 如果 ContionousQUery 结果集中存在某些数据,则清除缓存将为所有已注册的 ContinuousQuery 触发 ItemRemoved 事件:
  20. 现在,缓存清除调用将为 ContinuousQuery 结果集中存在的所有键触发 ItemRemoved 事件。

  21. 客户端缓存现在管理自己的到期时间:
  22. 如果启用了客户端缓存,并且 L2 缓存中的许多项目即将过期,则 L2 会将项目过期事件发送到客户端缓存(L1 缓存),以从其本地存储中删除这些项目。 这会损害活动客户端的性能并占用大量 CPU。 现在客户端缓存(L1 Cache)也会维护项目的过期时间,L2 缓存不会将过期事件发送到 L1 缓存。

  23. EntityFramework 缓存增强:
  24. NCache 提供的 EFCaching 模块针对 EF 查询分析和缓存进行了增强。

  25. 桥接服务启动时自动启动桥接:
  26. 现在可以配置网桥服务以在服务启动时启动指定的网桥。 配置网桥以在网桥服务(Alachisoft.NCache.Bridge.exe) 开始/重新启动。 取消注释 ' 中的以下标记Alachisoft.NCache.BridgeService.exe.config' 文件并提供在当前机器上配置的网桥名称,例如:

    <add key=" NBridgeServer.AutoStartBridges" value="Bridge-1,Bridge-2"/>

已修复的错误列表:

  • 741301 修复:复制拓扑中的连接故障转移问题,如果客户端计算机上的“client.ncconfig”文件中没有其他服务器节点信息,则客户端无法连接到其他服务器。
  • 741302 修复:如果查询下的项目发生更改,则并非所有 ContinuousQuery 通知都会传递到客户端应用程序。
  • 741303 修复:清除缓存后不会触发 ContinuousQuery 通知(ItemAdded、ItemUpdated、ItemRemoved)。
  • 741304 修复:使用添加、更新和删除操作的 ContinuousQuery 中的性能下降。 现在,将为每个操作“异步”评估连续查询。
  • 741305 修复: NCache 消耗大量资源的批量操作 NCache 由于 LOH 占用而导致进程内存不足,并导致超时和内存问题。 现在 NCache 将大型响应分成多个 512kb 的块,这将有助于减少内存问题。
  • 741306 修复:如果缓存配置为使用多个 NIC,则在更新缓存设置时,所有服务器信息都会从缓存客户端节点上的“client.ncconf”文件中删除。
  • 741307 修复: NCache 在 1000 个用户计数后,管理器未显示 Active Directory 用户。
  • 741308 修复: NCache.caches[] API 仅返回集群缓存(L2 缓存)句柄,即使它具有客户端缓存(L1 缓存)。
  • 741309 修复:启用节点级安全性后,ConfigureCacheSecurity 命令行工具无法正常工作。
  • 741310 修复:如果应用程序在分析时间之前存在,则不会生成 EF 缓存分析报告。
  • 741311 修复:NActivate 工具不适用于具有 32 个内核的盒子。
  • 741312 修复:桥接:当服务器节点离开源缓存时状态传输开始 [主动-被动]。
  • 741313 修复:桥:活动节点关闭时的项目版本不匹配问题。
  • 741314 修复:桥接:如果目标缓存的协调器节点出现故障,数据复制会发生两次。
  • 741315 修复:桥接:如果源集群因网络原因面临某些连接问题,复制将停止。
  • 741316 修复:桥接:如果集群缓存在桥接之前启动,则不会跨桥进行复制。
  • 741317 修复:桥接:如果目标缓存的协调器节点离开集群,则从目标到源启动状态传输。
  • 741318 修复:网桥:当网桥重新连接或由于 WAN 上的连接丢失而目标缓存与网桥重新连接时,目标缓存将被清除。
  • 741319 修复:桥接:桥接活动节点的桥接队列计数不显示。
  • 741320 修复:桥接:“主动-被动”和“主动-主动”桥接拓扑还修复了与状态传输和数据不匹配相关的一些其他问题。
 

发布说明 NCache 4.1 SP2

2012 年 10 月 10 日

介绍

NCache 4.1 SP2 包含一些与缓存稳定性相关的重要增强功能和主要错误修复。 建议大家升级 NCache 4.1 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 数据加密:
  2. 提供加密功能以确保数据在 NCache 客户和 NCache 服务器或集群节点之间是加密的。 即使数据包从网络中被嗅探到,这也可以防止用户数据泄露。

  3. 单个项目允许多个数据库依赖项:
  4. 现在可以为单个缓存项目添加多个数据库依赖项。 此功能将补偿单个数据库依赖项的“SQL 通知”依赖项限制。

  5. 缓存的自动启动延迟:
  6. 配置为“自动启动”的缓存现在可以根据用户指定的时间进行延迟。 这将改善 NCache 如果为“自动启动”配置了太多缓存,则响应时间会缩短。 在下面添加以下条目 <appSettings> in NCache 服务配置文件,如:

    add key='NCacheServer.AutoStartDelay' value='5'

  7. 客户端缓存的自动启动:
  8. 现在,您可以将“客户端缓存”配置为在服务重新启动或客户端计算机重新启动时自动启动。 这将使客户端缓存无需用户干预即可使用。

  9. 视图状态可以与会话相关联:
  10. 现在 veiwstate 与“会话 ID”一起缓存为“组”信息。 这将方便用户将同一应用程序和用户的视图状态和会话关联起来。 使用此功能,当会话关闭或过期时,用户可以删除与特定会话相关的所有视图状态。 在里面添加以下属性

    groupedViewStateWithSessions="true|false"

已修复的错误列表:

  • 741201 修复:SSP 模块中额外的 GC 收集调用导致性能开销。
  • 741202 修复:序列化后会话大小增加 3 倍。
  • 741203 修复:如果关闭视图状态日志记录,视图状态会使应用程序崩溃。
  • 741204 修复:使用 Ajax 进行视图状态缓存会导致页面加载出现问题。
  • 741205 修复:如果集群节点的缓存名称大小写不同,集群将部分连接。
  • 741206 修复:客户端节点的“client.ncconf”文件中未更新新添加的服务器信息。
  • 741207 修复:基于 SQL CLR 的存储过程内部的缓存初始化问题。
  • 741208 修复:在开发者版本中,本地缓存无法在环回 IP (127.0.0.1) 上运行。
  • 741209 修复:如果客户端频繁连接/断开连接,则会发生死锁。
  • 741210 修复:如果未处理缓存,常规通知将停止工作。
 

发布说明 NCache 4.1 SP1

2012 年 5 月 10 日

介绍

NCache 4.1 Service Pack1 (SP1) 包含一些与缓存稳定性相关的重要增强功能和主要错误修复。 值得大家称赞的升级 NCache 4.1 用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 对紧凑序列化的泛型类型支持:
  2. 您可以添加自定义泛型类型以进行紧凑序列化。 所有具有任意数量参数的泛型类型都可以通过紧凑序列化进行序列化。 您可以通过注册泛型类型 NCache 管理器或通过自定义处理程序实现 IGenericTypes 接口。 目前,此功能仅适用于 .NET 客户端。

  3. 在运行时更新 CacheItem 提示:
  4. 您现在可以在运行时修改缓存项属性,而无需修改数据。 目前,API (SetAttribute) 允许您更新依赖项和过期提示。

  5. 不同时区的 UTC 支持:
  6. 您可以拥有在不同时区运行的缓存服务器和客户端; NCache 将根据当地时区维持项目的标准过期时间。 每当一个项目从一个缓存服务器复制或移动到另一个缓存服务器时,就会根据本地时区重置过期时间,因此可以根据配置的时隙使项目过期。

已修复的错误列表:

  • 741101 修复:客户端无法初始化 NCache 通过基于 SQL CLR 的过程或触发器。
  • 741102 修复:如果仅为缓存配置 WritBehind 并在 API 中执行 WithThru 操作,则对象引用异常。
  • 741103 修复:2 节点网络场中的输出缓存,如果第二个请求发送到场的第二个节点,则项目将从缓存中删除。
  • 741104 修复:如果查询长度超过 256 个字符,查询解析器将引发缓冲区溢出。
  • 741105 修复:GetGroupsKeys、GetBulk、Tags、Query 在状态传输期间未返回正确的结果。
  • 741106 修复:在分区拓扑的情况下,只有一台服务器向 remote clients.
  • 741107 修复:如果分区缓存中仅添加一项,NamedTags 查询会抛出异常“索引未定义”。
  • 741108 修复:即使您通过 API 提供了缓存 ID、服务器 IP 和端口,Java 客户端也会抛出无法读取 client.ncconf 文件的异常。
  • 741109 修复:右键单击缓存服务器时响应缓慢。
  • 741110 修复:未生成内容优化日志文件。
  • 741111 修复:许可不适用于具有 32 个或更多内核的计算机。
  • 741112 修复:AddDependency() 重置现有依赖项,而不是附加新依赖项。
  • 741113 修复:当缓存服务器上禁用网络时,客户端应用程序不会收到更新的哈希映射。
  • 741114 修复:安全性使用区分大小写的用户名。
  • 741115 修复:集群变得不完整,有时甚至无响应。 当计算机重新启动并且该服务器的缓存在集群从其集群成员资格中删除该服务器之前再次加入集群时,就会发生这种情况。
 

发布说明 NCache 4.1

2011 年 8 月 23 日

介绍

NCache 4.1 引入了对企业级应用程序至关重要的非常重要的新功能和增强功能。 这个新版本提供了一个全新的包,用于在多个平台(java 和 .Net)之间共享运行时数据。 Java 已与 .NET 100% 兼容,现在您甚至可以使用 NCache 的过程。 NCache 请求-响应模型也得到了增强,可以处理大型响应,其中可以在单个请求中从集群缓存中检索 GB 的数据。 在早期版本中报告的所有错误都已在此版本中修复。

增强功能和新增功能

有关 4.1 中所有功能的完整列表,请阅读 NCache 特征:

  1. .NET 和 Java 之间的运行时数据共享:
  2. NCache 现在允许您将 .NET 对象存储在缓存中并从 Java 应用程序中将它们作为 Java 对象读取,反之亦然。 并且,不是通过 XML 进行 .NET 到 Java 的转换, NCache 使用二进制级转换。 因此,性能非常快。 NCache 自动解决 Java 和 .NET 之间的类型冲突。

    您还可以在 .NET 和 Java 之间的运行时数据共享中使用多个版本。 请参阅下面的详细信息。

  3. 多对象版本支持(.NET & Java):
  4. 现在,您可以在多个应用程序之间共享相同 .NET 或 Java 类的多个版本。 一个应用程序可能使用某个类的 1.0 版本,而另一个应用程序可能使用同一类的更高版本 2.0。 当此类的 2.0 版本存储在缓存中时,较早的应用程序仍可以以 1.0 版本的形式获取此类,反之亦然。 NCache 允许您通过 XML 配置文件配置版本映射。

    您还可以在 .NET 和 Java 之间的运行时数据共享中使用版本。

  5. 连续查询(.NET & Java):
  6. NCache 允许您根据类似 SQL 的查询指定数据集。 然后,它会在缓存集群中为您维护该数据集,并监视其中的任何运行时更改,包括添加、更新或删除。 和, NCache 每当数据集中发生任何这些更改时,都会通知您的应用程序。 这使您的应用程序能够更智能地监视数​​据更改或添加符合特定条件的数据,并通过以下方式收到通知 NCache.

    如果您想在运行时在多个应用程序之间共享数据,这是一个强大的功能。

  7. 大大增强的桥接拓扑:
  8. 桥接拓扑允许您跨 WAN 智能地异步复制整个缓存。 NCache 4.1 现在在桥接拓扑中提供四种不同的配置。 他们是:

    1. 主动/被动: 在此配置中,一个缓存是主动的,另一个是被动的。 无论您对主动缓存进行什么更新,网桥都会异步应用到被动缓存。由于主动和被动之间的连接是跨 WAN 的,因此可能不稳定。 但是,网桥知道这一点,如果连接中断,它会自动重新建立连接。
    2. 主动/主动:在此配置中,两个缓存均处于活动状态,并且网桥接收来自双方的更新请求。 两个缓存还维护相同的时间戳“时钟”。 该时钟通过桥同步。 每当发生冲突时,即两个缓存中都更新相同的缓存项时,默认情况下会采用“最后更新获胜”策略来解决冲突。 但是,如果您愿意,您可以提供一个自定义解析处理程序,在发生冲突时调用该处理程序。 然后,您可以确定应保留哪一个更新以及应放弃哪一个更新。
    3. 轮辐式: 星形:此配置看起来与 Hub-Spoke 相同,只是所有 Spoke 也处于活动状态。 在此配置中,有一个集中式缓存和多个卫星活动缓存。 所有更新均通过集中式缓存同步,确保一致性。
  9. 命名标签(.NET & Java):
  10. 以前,您只能将标签分配为值。 现在,您可以为标签分配名称。 这允许您根据属性名称和属性值概念来索引数据。 以前,您可以对对象建立索引,但无法对所有字符串数据建立索引。 现在,甚至字符串数据(例如 XML)也可以使用命名标签进行索引。 然后,你可以使用 NCache 用于获取属于一个或多个命名标签的数据的 API,或者您可以为其发出类似 SQL 的查询(通过 LINQ 或 OQL)。

  11. Java 功能现在 100% 等同于 .NET:
  12. NCache 4.1 为 Java 提供了与 .NET 相同级别的支持。 以下是旨在赶上 .NET 功能集的基于 Java 的新功能:

    • Java 客户端 API 100% 等效于 .NET
    • Java 客户端缓存(InProc):
    • 您现在可以在 Windows 或 Unix 上的 Java 应用程序中使用客户端缓存功能。 您的应用程序中无需更改任何代码即可启用客户端缓存。

    • Java 客户端缓存(InProc):
    • 您现在可以在 Windows 或 Unix 上的 Java 应用程序中使用客户端缓存功能。 您的应用程序中无需更改任何代码即可启用客户端缓存。

    • Java中的缓存加载器:
    • 用 Java 编写缓存加载代码并注册 NCache。 您的本机 Java 代码将像 .NET 代码一样在缓存服务器上运行。

    • Java的动态紧凑序列化:
    • 现在,您可以使用以下方式注册您的 Java 类 NCache 和 NCache 在初始化时生成它们的序列化代码,在内存中编译它,并将其发送到 NCache 客户。 然后运行编译后的 Java 代码来序列化/反序列化您的 Java 类。 这显然可以提高性能,因为编译后的序列化代码的运行速度比 Java 中基于反射的序列化要快得多。

    • 弹簧/休眠支持:
    • NCache 现在为 Hibernate 提供 L2 缓存。 这允许您开始使用 NCache 无需在 Java 应用程序中进行任何代码更改。

    • 多响应模型:
    • NCache 现在允许缓存服务器针对给定请求以较小的块返回较大的响应。 这提高了整体缓存性能,因为序列化成本随着大小的增加而降低,并且还有助于应用程序在单次调用中获取更大的数据集。 它还消除了 .NET 序列化限制,即无法序列化大于 1.9 GB 的数据。 响应阈值和块大小都是可配置的并且可以从 NCache 服务配置文件“NCache\bin\服务\ Alachisoft.NCache.Service.exe.config”

      <add key="NCacheServer.ResponseDataSize" value="1024"/>

已修复的错误列表:

  • 741001 修复:使用客户端缓存 GetCacheItem 时返回不正确的组名称。
  • 741002 修复:如果 IN 运算符只有一个参数,则对象查询不起作用,例如选择 Northwind.Customers where this.City In(?)。
  • 741003 修复: Alachisoft.NCache4.0 位远程客户端安装中的“64 GAC”文件夹中缺少 .Web.dll NCache.
  • 741004 修复: Alachisoft.NCache开发人员安装中缺少 .Security.dll(32 位)。
  • 741005 修复:当节点加入集群时,状态传输会在缓存服务器日志文件中引发对象引用未设置异常。 如果一个直写提供程序配置为启用后写,则会发生这种情况。
  • 741006 修复:在两节点或三节点分区副本集群中,如果节点发生故障并在状态传输完成之前立即恢复,则项目会丢失。
  • 741007 修复:如果索引项也与标记关联,则不带任何 where 子句的 LINQ 查询可能会返回该键已添加到字典中的异常。 发生这种情况是因为结果中添加了重复的键。
  • 741008 修复:无法在运行时从 NCache 经理。
  • 741009 修复:如果缓存服务器在特定时间内未收到给定请求的响应,则会向其他缓存服务器发送多个状态查询请求。 如果出现网络故障或缓存节点无响应,请求队列将变满并向用户抛出超时错误。 此状态查询机制现在默认处于禁用状态,可以通过以下方式打开 NCache 服务配置文件。
  • 741010 修复:如果有两个或多个缓存在同一台计算机上运行,​​并且都使用标记功能,则您可能会在缓存服务器日志文件中收到对象引用未设置错误。 在某些情况下,这也可能会减慢缓存响应速度。 这已得到修复。
  • 741011 修复:如果响应大小大于 1.9 GB,缓存将挂起并且客户端将超时。 发生这种情况是因为 .NET 序列化限制。 这种情况通常发生在查询、标签、组和批量操作等批量操作中。
 

发布说明 NCache 3.8 SP4

2011 年 3 月 17 日

介绍

NCache 3.8 Service Pack 4 (SP4) 包含对生产环境很重要的重要修复。 这是对所有人的推荐升级 NCache 3.8用户。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. Java 和 .NET 之间的字符串共享(反之亦然):
  2. 您可以在 .NET 和 Java 应用程序之间共享字符串值。

  3. SQL 缓存依赖自定义队列/通知服务:
  4. <add key="NCacheServer.NCacheSQLNotificationService" value="NCacheSQLService"/>

SQL Cache 依赖架构已得到增强,以支持不需要额外用户权限的自定义队列和通知服务,如“创建队列”和“创建服务”。 NCache 现在允许您选择默认模式(使用默认 SQL 通知和队列服务)或自定义模式,您可以在其中指定自己的队列和通知服务。 服务名称格式应为“NCacheSQLService-[ip-address]”和“NCacheSQLQueue-[ip-address]" 的 IP 地址将在哪个机器上 NCache 服务进程将运行。 您可以在服务配置文件中指定此设置: “NCache/bin/service/Alachisoft.NCache.Service.exe.config”.

已修复的错误列表:

  • 738401 修复:如果该项目是通过缓存加载器添加的,则枚举返回字节数组。
  • 738402 修复:如果跟踪被禁用并且模块尝试在日志中写入内容,ViewState 模块会引发空引用异常。
  • 738403 修复:命令行激活引发无效的许可证密钥。
  • 738404 修复:当项目数量超过 7 万时,缓存变得无响应或超时。
  • 738405 修复:x64 中的查询示例存在一些编译错误。
  • 738406 修复: NCache 64 位开发人员安装中缺少会话状态管理程序集。
  • 738407 修复:如果使用双 NIC(其中一个 NIC 绑定到客户端-服务器通信,第二个 NIC 绑定到缓存-服务器(群集)通信),分区和分区副本拓扑中的连接平衡和故障转移将不起作用。
  • 738408 修复:32 位安全程序集“Alachisoft.NCacheWindows GAC 中缺少 .security.dll” NCache 64 位设置。 这不允许 32 位应用程序在 64 位缓存服务器上运行。
  • 738409 修复:CacheProvider 4.0 - GetValues() 方法返回所有键值,包括缓存中也不可用的键值。 根据 Microsoft 文档,它应该仅返回缓存中存在的键/值。
  • 738410 修复:CacheProvider 4.0 - NSQLChangeMonitor 和 NOraChangeMonitor NCache Enterprise 功能并无意中暴露在 NCache Professional.
  • 741111 修复:许可不适用于具有 32 个或更多内核的计算机。
 

发布说明 NCache 3.8 SP3

2010 年 11 月 02 日

介绍

在本次发布的 NCache 3.8 服务包 3 (SP3), NCache Enterprise 分为两种产品,名为“NCache 对于 .NET' 和 'NCache 为Java'。 之前 'NCache'将两个组件组合成一个包。

'中还添加了两个新功能NCache Java 客户端”。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 数据库依赖:
  2. 现在,您可以从 Java 应用程序中使用“数据库依赖项”在缓存中添加项目。 相关数据库中的任何更改都会使缓存条目无效,并且您的应用程序将收到有关此更改的通知。

  3. 流媒体API:
  4. NCache Java Client 在 API 中添加了流支持,您可以在缓存中读取和写入二进制数据流。

已修复的错误列表:

  • 738301 修复:在集群中添加新节点时,新节点信息未添加到所有集群节点上的“client.ncconf”文件中。

适用于:

NCache Enterprise 3.8.x

 

发布说明 NCache 3.8 SP2

2010 年 10 月 10 日

介绍

NCache 3.8 Service Pack 2 (SP2) 包含客户报告的重要修复和增强功能。 建议所有用户升级 NCache 3.8.

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. Xen VM 的许可证支持:
  2. NCache 现在支持 Xen VM 环境上的许可。

  3. Visual Studio 2010 程序集参考解决方案:
  4. 当您添加对的引用时,Visual Studio 2010 会显示一条警告消息 NCache 程序集,然后构建也会失败。 仅当应用程序目标框架是 .NET 3.5 时才会发生这种情况。 这是 Visual Studio 的一个已知问题,当您在 GAC 2.0 和 GAC 4.0 中使用相同的程序集时,它会感到困惑,并且对于依赖程序集,它会尝试从 GAC 4.0 加载它们,从而导致出现警告消息。

    我们通过复制所有程序集解决了这个问题 NCache bin/ assembly 文件夹,现在 Visual Studio 不必在 GAC 中查找依赖程序集。 这已经解决了这个问题。

已修复的错误列表:

  • 738211 修复:ViewState 缓存不适用于 AJAX 控件,尤其是 GridViewPager。
  • 738210 修复:如果会话为空,会话存储提供程序将引发异常“ISessionStateStore 返回的 SessionStateStoreData 的项目值为空”。
  • 738209 修复:ViewState 程序集的构建版本错误 NCache Enterprise 开发者安装。
  • 738208 修复:要素对象查询中存在性能问题。 当缓存中有大量项目时,搜索结果会变慢。
  • 738207 修复:NHibernate 示例在 NCache Professional.
  • 738206 修复: NCache 如果您在未指定用户的情况下启用安全性,管理器会抛出对象引用未设置错误。
  • 738205 修复: NCache 如果您更改本地缓存服务器的 IP 绑定(使用“选择网络接口卡”选项),管理器会抛出对象引用未设置错误。 此选项现已从本地缓存服务器中删除。
  • 738204 修复: NCache 如果提供程序是 exe 文件,则管理器无法加载 ReadThru/WriteThru 提供程序。 当您使用“部署提供程序”按钮部署 ReadThru/WriteThru 提供程序时, NCache 管理器将文件扩展名重命名为 .dll
  • 738203 修复: NCache Professional 不允许 remote client 连接。 如果发生这种情况 remote client 与安装 NCache Professional Remote Client 安装。
  • 738202 修复: NCache 与 Microsoft Enterprise Library v4.1 集成为索引器方法 Cache["Key"] 返回布尔值,而不是实际对象。
  • 738201 修复:修复了 JavaScript 和 CSS 缩小中的多个错误。 如果呈现的输出在 JavaScript 标记中包含 .axd 文件,并且如果 <script> 标签以 </script>。 同样,如果使用相对路径加载图像,CSS 缩小也会失败。 现在 CSS 中的相对路径已转换为绝对路径。

适用于:

  • NCache Enterprise 3.8.x
  • NCache Professional 3.8.x
 

发布说明 NCache 3.8 SP1

2010 年 8 月 24 日

介绍

NCache 3.8 Service Pack 1 (SP1) 包含重要的修复和增强功能。 此版本中添加的最重要和最需要的功能是对 .Net 框架 4.0 的支持。 该 API 与 3.8 发布版本完全兼容,应用程序可以升级而无需重新构建/重新编译应用程序。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. .Net 4.0 支持可用。:
  2. 的代码库 NCache 缓存服务器已转换为 .NET 4.0 和 NCache 客户端在 .NET 2.0 和 4.0 版本中都可用。

  3. 客户端缓存管理的改进:
  4. 客户端缓存管理通过改进 NCache 管理器,项目文件将在刷新选项上与客户端节点联系,这提高了快速加载 NCache 马槽项目文件。

    我们通过复制所有程序集解决了这个问题 NCache bin/ assembly 文件夹,现在 Visual Studio 不必在 GAC 中查找依赖程序集。 这已经解决了这个问题。

  5. 现在使用 Visual Studio 2008 构建示例:
  6. NCache 示例现在使用 Visual Studio 2008 构建。

  7. 威瑞信问题:
  8. VeriSign 问题,服务配置文件中的默认值应启用generatePublisherEvidence ="false"/>. 进行了增强。

  9. ReadThru 界面改进:
  10. ReadThru 提供程序接口签名已修改为支持最大功能 NCache。 在命名空间“下引入了新的结构Alachisoft.NCache.Runtime.Caching”称为ProviderCacheItem,与CacheItem类似。 您现在可以轻松指定过期时间、标签、驱逐提示、依赖项等。

    新界面

    public void LoadFromSource(string key, out ProviderCacheItem cacheItem)
    public Dictionary<string, ProviderCacheItem> LoadFromSource(string[] keys)
  11. CacheLoader 支持 IsResyncExpiredItem:
  12. 现在,您可以在Cache Loader中指定IsResyncExpiredItem属性,以便可以自动重新加载过期的项目。

  13. NHibernate 集成:
  14. NCache 不支持最新版本的 NHibernate 2.1.2。 我们还在此版本中添加了区域支持。 NHibernate 示例应用程序也使用 NHibernate 区域支持进行了修改。

已修复的错误列表:

  • 738108 修复:如果缓存负载过重,AutoStart 无法启动缓存。 现在,AutoStart 以异步模式启动缓存。
  • 738107 FIX ViewState 程序集是用错误的版本构建的 NCache Enterprise 开发者安装。
  • 738106 修复:CAB 集成不起作用 NCache professional 由于聚合依赖性,开发人员安装。
  • 738105 修复:创建缓存工具错误修复。
  • 738104 修复:NHibernate 集成需要完整的 DateTime 格式来表示绝对过期时间,这是错误的。现在,您可以以秒为单位指定绝对过期时间。
  • 738105 修复:会话存储提供程序中存在序列化错误,该错误仅在极少数情况下发生。
  • 738103 修复:NHibernate 中的 SQL 依赖项错误修复,其中客户端无法使用带有组合键的查询。
  • 738102 修复:客户端缓存不适用于 NHibernate 集成。
  • 738101 修复:大量项目的 GetByTag 性能很慢。
  • 736230 修复:如果通过 ReadThru 提供程序自动重新加载项目(IsResyncExpiredItem 为 true),对象查询将返回空结果。

适用于:

  • NCache Enterprise 3.8
  • NCache Professional 3.8
 

发布说明 NCache 3.8

2010 年 6 月 7 日

介绍

NCache 3.8 包含基于客户反馈的新的重要添加和增强。 API 向后兼容性是大多数客户最关心的问题,记住这一点,我们添加了一个新的 API 兼容性协议。 从现在 (3.8) 开始,所有新版本将自动与旧版本兼容 NCache (从 3.8 开始)。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. LINQ 支持 NCache:
  2. NCache 在 IQueryable 接口的帮助下提供 LINQ 集成,该接口允许缓存的项目是可搜索的。 NCache 支持 Lambda 表达式和 LINQ 运算符来查询缓存项。

  3. 实体框架 (EF) 缓存:
  4. NCache 提供与 EF 缓存的无缝集成,它在 ADO 级别被插入,并允许您的应用程序使用分布式缓存而无需任何代码更改。 您只需要在应用程序配置文件中进行更改。

    我们通过复制所有程序集解决了这个问题 NCache bin/assembly 文件夹,现在 Visual Studio 不必在 GAC 中找到依赖程序集。 这已经解决了这个问题。

  5. NET 缓存提供程序 4.0:
  6. NCache 提供与 .NET 缓存提供程序 4.0 的集成。 NCache 还提供了不同的变更监视器(基于文件、基于键、数据库依赖)来管理缓存依赖。

  7. 向后兼容客户端 API/支持:
  8. NCache 现在遵循向后兼容协议,在未来的版本中,应用程序将能够连接到较新的版本,而无需升级客户端。

  9. 流媒体API:
  10. NCache 在 API 中添加了流支持,您可以在缓存中读取和写入二进制数据流。

  11. Java/CSS 缩小:
  12. NCache 将多个 JavaScript 文件和 CSS 文件组合成一个资源文件,并将其存储在缓存中。 它还用所有 CSS 和 JS 文件的单个 HTTP 引用替换呈现的输出,以便浏览器可以进行一次调用以加载所有资源。 这有助于提高您的应用程序响应时间。

  13. 视图状态缓存:
  14. NCache 将长 ViewState 字符串替换为较小的字符串并将其发送给客户端。 这有助于提高应用程序性能并节省带宽。

  15. 全新 NCache 监控工具:
  16. NCache 电子邮件警报系统:
  17. 您现在可以通过电子邮件接收有关某些缓存事件的警报,例如“状态转移”、缓存停止、成员离开、成员加入等。

  18. 缓存元信息API:
  19. 此 API 允许有关缓存项(例如 LastAccessed Time 和 Creation DateTime)的元信息。

  20. Multi-ReadThru/Write Thru 支持:
  21. NCache 允许多个 readthru 和 writethru 提供程序。 NCache 管理器自动将数据源程序集部署到已部署的文件夹中,因此您无需手动将提供程序程序集复制到 NCache 服务文件夹。

  22. 分区副本同步复制:
  23. 分区副本拓扑现在支持同步复制。

  24. 安全配置命令行工具:
  25. 您现在可以通过命令行工具配置安全性

  26. 缓存配置升级工具:
  27. 如果您有旧的缓存 config.ncconf 文件,则可以使用此工具对其进行升级。

  28. 使用 GetCacheItem 锁定支持
  29. Remote Client 管理从 NCache 经理:
  30. 现在您可以配置 Remote Client来自 NCache 经理可以轻松地从一个点更改各个客户端设置。

  31. 客户端缓存管理来自 NCache 经理:
  32. 客户端缓存也可以从 NCache 经理。
  33. 客户端/客户端缓​​存管理命令行工具:
  34. 你也可以添加 remote clients 和客户端缓存通过命令行工具。

  35. ReadThru/WriteThru 提供程序的新接口:
  36. 现在,您可以通过新向导指定缓存提供程序程序集,您可以在其中选择程序集。 现在,您不必手动键入程序集信息。

  37. 自动部署 ReadThru/WriteThru 提供程序:
  38. NCache Manager 提供数据源提供者的自动部署。

  39. 动态紧凑序列化支持(无需更改代码):
  40. 现在,您无需实现任何 ISerialized 或 IDeserialized 接口即可实现紧凑序列化。 您只需要在中注册紧凑类型 NCache 经理和 NCache 在运行时自动序列化类型。

  41. 安全增强(安全管理来自 NCache 经理):
  42. 安全性可以从 NCache 现在的经理。

 

发布说明 NCache 3.6.2 SP3

2010 年 4 月 21 日

介绍

NCache 3.6.2 (SP3) 包含客户报告的重要修复和增强功能。 此版本中添加的最重要和最需要的特性是对 J2EE 平台的 Java 会话缓存的支持。 现在,您可以轻松使用 NCache 作为 Java 应用程序的会话存储,无需更改任何代码。 您只需在 web.xml 文件中添加 Java 会话过滤器。

那些使用 NCache 3.6.x 版本无需重新构建/重新编译应用程序即可升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. WebLogic 的 Java 会话支持(无需更改代码):
  2. NCache Java Session Provider 支持 WebLogic,并且可以在任何 J2EE 平台(Web 服务器)上使用,前提是底层平台(Web 服务器)遵循 Java Servlet 2.3(或更高版本)规范。 Linux 和 Windows 平台均支持 Java 会话。

  3. JBoss 的 Java 会话支持(无需更改代码):
  4. NCache Linux 和 Windows 平台上的 JBoss 支持 Java Session Provider。

  5. WebSphere 的 Java 会话支持(无需更改代码):
  6. NCache Java Session Provider 在 Linux 和 Windows 平台上都支持 WebSphere。

  7. ApacheTomcat 的 Java 会话支持(无需更改代码):
  8. NCache Linux 和 Windows 平台上的 Apache-Tomcat 支持 Java 会话提供程序。

  9. NCache 支持服务器 GC:
  10. 基于服务器操作系统和工作站的垃圾收集器有两种类型,分别称为“服务器 GC”和“工作站”。 除非有特别说明 .NET framework 即使在服务器操作系统下运行,默认情况下也使用工作站 GC。 现在, NCache 允许您根据您的操作系统指定 GC 模式。 服务器 GC 旨在实现最大吞吐量,并以非常高的性能进行扩展。 NCache 现在默认配置为使用服务器 GC 而不是工作站 GC。 您可以更改此模式 Alachisoft.NCache.Service.exe.config:

    <add key="NCacheServer.EnableForcedGC" value="true"/>
    <add key="NCacheServer.ForcedGCThreshold" value="80"/>
    

已修复的错误列表:

  • 736228 修复: NCache 由于 Windows 7 中的新安全模型,安装在 Windows 7 上失败。现已修复。
  • 736227 修复:客户端队列计数器中存在一个错误,该错误在某些特定阶段变为负值。 此错误已得到修复。
  • 736226 修复:Java API 中的项目过期存在错误,现已修复。

适用于:

  • NCache Enterprise 3.6.x
 

发布说明 NCache 3.6.2 SP2

2010 年 1 月 11 日

介绍

NCache 3.6.2 Service Pack 2 (SP2) 包含客户报告的重要修复和增强功能。 建议所有用户升级 NCache。 那些使用 NCache 3.6.x 版本无需重新构建/重新编译应用程序即可升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 将重要事件记录到事件查看器中:
  2. 在以下情况下,将在 Windows 事件查看器和缓存错误日志中记录一个事件:

    • 您停止或启动缓存
      • 缓存无法启动。
      • 缓存节点加入/离开集群。
      • 状态转移开始或停止。
      • 客户端连接或断开缓存。
      • 缓存内存超过服务配置文件中指定的某个阈值。
      • 您在过去 10 天 NCache 将每天记录评估和日志警告事件,直到您延长评估或激活 NCache 与许可证密钥。

    这些事件被分类为信息、警告和信息。

    <add key="NCacheServer.EventLogLevel" value="error | warning| all"/>

    用户只能指定以下级别之一:

    • 错误:仅记录错误事件。
    • 警告:将记录错误和警告事件。
    • all:此级别允许记录所有类别的事件。 这是默认级别。

    可以从启用事件查看器/日志文件的客户端连接日志条目 NCache 服务配置文件。 默认情况下,此选项处于禁用状态,但您可以通过修改以下属性来启用它 NCache 服务配置文件。

    "Alachisoft.NCache.Service.exe.config”。

    <add key="NCacheServer.LogClientEvents" value="false" />

    注意:上述更改需要 NCache 服务重新启动。

  3. 支持 Oracle 11g:
  4. NCache 现在支持 Oracle 11g 的数据库依赖性和同步功能。

已修复的错误列表:

  • 736225 修复:一些 NCache 当缓存集群面临压力并且您添加新的缓存服务器或缓存服务器在虚拟机上使用共享网卡时,客户端会停止响应。
  • 736224 修复: NCache 服务(Alachisoft.NCache.Service.exe) 和 NCache 当缓存面临压力并且您添加新的缓存服务器或缓存服务器正在虚拟机上使用共享网卡时,管理器将停止响应。
  • 736223 修复: NCache 由于哈希图损坏,服务停止响应。 这与上面提到的服务挂起场景类似,但是在这种情况下,服务会无限期挂起。
  • 736222 修复:如果 WMI 调用由于 WMI 无响应状态而长时间未响应,缓存将停止缓存中的过期项目。
  • 736221 修复:节点加入时分区和分区副本中的客户端不平衡现已修复。 这种情况只发生在非常罕见的情况下。
  • 736220 修复:如果客户端为 32 位且缓存为 64 位,则客户端无法获得分区副本的客户端优化功能的真正性能优势,反之亦然。
  • 736219 修复:缓存状态传输(在缓存节点加入集群时启动)不会传输那些具有多级键依赖项的项目。
  • 736218 修复:Java 客户端环境问题已修复。 现在您可以从 API 传递 client.ncconf 文件路径。 Java客户端现在支持Windows和Linux环境。
  • 736217 FIX:Java 示例应用程序错误现已修复。
  • 736216 修复: NCache 如果套接字调用无法绑定自身网卡,则服务不会启动。 NCache 现在尝试建立没有绑定的连接。
  • 736215 修复:拔下网络电缆时,在压力期间拔下电缆时客户端挂起的问题现已修复。 这通常发生在复制拓扑中,并且客户端操作会挂起一段时间。
  • 736214 修复: NCache 当与 LIKE 运算符一起使用并且标记不存在时,标记查询在分区和分区副本拓扑中抛出“空引用”。
  • 736213 修复: NCache 当您通过使用锁定和组参数调用 INSERT 方法来更新和项时,会引发“数据组不匹配”异常。

适用于:

  • NCache Enterprise 3.6.x
  • NCache Professional 3.6.x
 

发布说明 NCache 3.6.2 SP1

2009 年 10 月 06 日

介绍

NCache 3.6.2 Service Pack 1 (SP1) 包含客户报告的重要修复和增强功能。 建议所有用户升级 NCache. 那些使用 NCache 3.6.x 版本无需重新构建/重新编译应用程序即可升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 集群重新加入功能:
  2. 为了克服集群节点内的套接字中断问题, NCache 有一个新的连接重试逻辑,可在集群配置中的 config.ncconf 中进行配置。

    connection-retries="10" connection-retry-interval="1secs"

    如果由于网络问题导致套接字中断, NCache 将在每个连接重试间隔后尝试重新建立连接,次数与连接重试次数相同。 这需要重新启动 NCache 更新后的服务。

  3. 外加的 NCache 客户端计数器:
  4. NCache 引入客户端计数器来检测和调试客户端问题。 这些计数器出现在 Windows perfmon 计数器的类别“NCache 客户'。

  5. Autostart中缓存的异步启动:
  6. NCache 自动启动功能得到增强,可以启动各种用户指定的缓存 NCache 服务启动是异步的。 如果某些缓存已损坏且未启动,则会记录一条警告,但 NCache 服务正常启动。

  7. 客户端缓存同步模式说明:
  8. 客户端缓存同步模式说明添加在 NCache 救命。

  9. 集群配置中的内存估计和警告机制:
  10. 集群配置中添加了有关设置集群内存、其使用情况和估计的描述。

  11. NCache 在管理员模式下安装:
  12. NCache 安装向导会警告非管理员用户。 用户安装需要管理权限和权限 NCache 在系统上。

已修复的错误列表:

  • 736212 修复:如果频繁添加和删除具有相同标签的项目,会导致标签损坏。 项目存在于缓存中,但无法通过其标签获取。
  • 736210 修复:在未进行垃圾收集的大型对象(超过 80KB)的情况下,与 LOH 相关的内存泄漏会导致高内存消耗。
  • 736209 修复: NCache 在中生成额外的日志条目 NCache 日志文件,这会导致巨大的日志文件。 这些额外的日志将被删除。

适用于:

  • NCache Enterprise 3.6.x
  • NCache Professional 3.6.x
 

发布说明 NCache 3.6.2

2009 年 7 月 09 日

介绍

NCache 3.6.2 包含许多有用的增强功能和客户报告的错误修复。 建议所有用户升级 NCache. 那些使用 NCache 3.6.x 版本无需重新构建/重新编译应用程序即可升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. 日志跟踪:
  2. 为以下事件添加了日志跟踪:

    • 当一个节点成功加入集群中的一个节点时。
    • 当一个节点不能加入集群中的一个节点时。
    • 当一个节点离开集群时。
  3. 基于轮询的数据库依赖改进:
  4. 基于轮询的数据库依赖有以下改进。

    • 用户可以指定除“cache-key”之外的“db-cache-key”来添加到 ncache_db_sync 表。
    • Resync-expired-items 选项现在可用于此依赖项。
  5. Client.ncconf 可以在记事本中打开
  6. 改进的错误消息:
  7. 改进了由于绑定 IP 地址不可用而导致服务无法启动时的错误消息。

已修复的错误列表:

  • 736208 FIX:使用 20-30 天左右出现过期问题 NCache 导致项目占用内存导致高内存使用。
  • 736207 修复:Client.ncconf 被重写 NCache 服务重新启动,旧的更改将丢失。
  • 736206 修复:如果从数据源读取项目,则不会保留组和标签信息。 项目已加载到缓存中,但尚未指定标签或组。
  • 736205 修复:IIS 工作进程高 CPU 消耗错误已修复。

适用于:

  • NCache Enterprise 3.6.x
  • NCache Professional 3.6.x
 

发布说明 NCache 3.6.1

2009 年 3 月 26 日

介绍

NCache 3.6.1 包含许多有用的增强功能和客户报告的错误修复。 建议所有用户升级 NCache. 那些使用 NCache 3.6.x 版本无需重新构建/重新编译应用程序即可升级。

增强功能和新增功能

以下是此版本中的一些增强功能:

  1. NCache 缓存服务器节点之间的客户端重新平衡:
  2. 现在 NCache 当新节点加入缓存时,客户端连接会在集群节点之间自动重新平衡。 所以现在您不必再担心缓存服务器上的客户端负载平衡了。

  3. 用于性能监控的新计数器:
  4. 用于性能监控的新计数器添加在 'NCache' Windows Perfmon 计数器中的类别。

  5. 数据库依赖的改进:
  6. NCache 现在支持在 DB Dependency 中使用存储过程和命令对象。

已修复的错误列表:

  • 736204 修复: NCache 如果缓存中剩余一项具有 S​​QL Yukon 依赖项并且该依赖项被触发,则服务会持续消耗 CPU。
  • 736203 修复:AVG 计数器显示平均添加/秒、更新/秒和删除/秒的值不正确。
  • 736202 修复:与最近最少使用和最不经常使用的逐出策略 (LRU/LFU) 相关的内存泄漏和性能问题。
  • 736201 修复:如果系统上有 2 个以上的网卡,绑定到 IP 对话框会损坏显示。
  • 736200 修复: NCache 即使在运行数小时后停止负载测试后缓存上没有任何活动,服务也会以某个固定时间间隔消耗 CPU。

适用于:

  • NCache Enterprise 3.6.x
  • NCache Professional 3.6.x

联系我们

联系电话
©版权所有 Alachisoft 2002 - 版权所有。 NCache 是 Diyatech Corp. 的注册商标。