• Facebook
  • Twitter(现为X)
  • Youtube
  • 内衬
  • RSS
  • 文档
  • 比较
  • 博客
  • 下载
  • 联系我们
下载
显示/隐藏目录

NCache 客户

NCache 客户端代表将应用程序连接到应用程序的应用程序端组件 NCache 服务器。客户端可以是使用服务器的应用程序。 NCache SDK,或者一台可以完整运行SDK的机器 NCache 客户端安装用于远程客户端管理、客户端监控和 OutProc 客户端缓存支持。

此 NCache 客户端架构包括客户端 SDK、可选的客户端服务、配置文件、日志文件以及客户端-服务器通信机制。这些组件协同工作,帮助应用程序发现缓存服务器、执行缓存操作、处理拓扑变更,并可选择使用更靠近应用程序的客户端缓存。

客户端 SDK

此 NCache 客户端 SDK 提供应用程序 API,允许应用程序连接到 NCache 并执行缓存操作,例如添加、插入、获取、删除、批量操作、查询、事件、锁定和其他支持的功能。

NCache 为以下平台提供 SDK 支持:

  • 。NET
  • 爪哇岛
  • Python
  • Node.js

客户端应用程序使用相关的SDK与……通信 NCache 服务器。在仅使用 SDK 的部署中,应用程序不需要任何服务器。 NCache 客户端服务将在客户端计算机上运行。应用程序加载 NCache 客户端库,并通过客户端配置文件或应用程序代码中提供的连接选项连接到已配置的缓存服务器。

基于 SDK 的客户端连接

在基于 SDK 的部署中,客户端应用程序通过以下方式连接到缓存:

  • 缓存名称
  • 服务器信息
  • 客户 地都 设置
  • 安保防护 设置(如果已启用)
  • TLS 如果启用安全通信,则需进行相关设置。

初始连接信息通常从以下位置读取: 客户端.ncconf但也可以通过客户端连接选项以编程方式提供。当同时使用配置文件设置和编程连接选项时,编程选项优先。

客户沟通

NCache 客户端通过持久 TCP 连接与缓存服务器通信。这种客户端-服务器通信模型旨在支持高吞吐量缓存操作、并行请求、拓扑感知路由以及从临时网络中断中自动恢复。

通信方式

  • Google Protobuf 作为数据交换格式: NCache 客户端使用基于 TCP 的 Google Protocol Buffers 进行客户端与服务器之间的通信。这提供了一种高效的二进制格式,并有助于支持旧版本客户端与新版本缓存服务器之间的兼容性。

  • 基于请求-响应的并行请求执行: NCache 它采用基于 RequestId 的请求-响应协议。每个客户端请求都会被分配一个唯一的 RequestId,从而允许通过同一个 TCP 连接发送多个请求而无需等待之前的响应。这使得客户端应用程序可以并行执行请求。

  • 缓存拓扑感知: NCache 客户端了解缓存拓扑结构。 分区的 对于分区副本拓扑,客户端会检索分布图并直接连接到拥有所需数据分区的服务器节点。对于复制拓扑,由于每个服务器都包含相同的数据,客户端可以连接到合适的服务器。

  • 连接故障处理: NCache 客户端与缓存服务器保持持久连接。如果由于网络故障导致连接中断,客户端会在服务器恢复连接后尝试在后台重新建立连接。

  • 数据序列化: 应用程序数据在发送到缓存服务器之前会进行序列化。 NCache 支持 JSON 和二进制序列化客户端使用为缓存配置的序列化格式。

  • 数据加密: If 加密 如果配置正确,客户端会在序列化应用程序数据后对其进行加密,然后再将其发送到缓存服务器。

  • 数据压缩: If 压片 如果配置正确,客户端会在将数据发送到缓存之前对其进行压缩。这有助于减少大型对象的网络使用量和缓存存储空间。

连接缓存

缓存客户端需要服务器信息才能连接到缓存。此信息可以通过以下方式提供: 客户端.ncconf 或者通过连接选项以编程方式获取。客户端使用此信息来定位缓存服务器并与目标缓存建立连接。

客户端连接通常遵循以下流程:

  • 客户端与客户端建立 TCP 连接。 NCache 通过配置的服务 client-server 港口。
  • 客户端请求已配置缓存服务器的列表,以便发现可用的缓存节点。
  • 如果启用了缓存安全性,客户端会发送一个包含缓存名称和安全凭据的初始化请求。
  • 如果缓存运行在单独的进程中,则该服务会将客户端定向到正确的缓存进程或缓存端口。
  • 如果客户端正在连接到 已复制 缓存和客户端 负载均衡 启用后,客户端将根据客户端负载连接到合适的服务器。
  • 如果客户端连接到分区缓存或分区副本缓存,客户端将检索分发映射并与所需的缓存服务器建立连接。
  • 客户端还会检索缓存配置详细信息,例如序列化格式、压缩设置、加密设置、查询索引和已注册类型(如适用)。
注意:

NCache 在 Windows 系统上,它会自动配置防火墙以打开所需的端口。在 Linux 系统上,您需要手动打开所需的端口。 NCache 根据您的环境手动配置端口。

客户端安装程序

此 NCache 客户端安装程序安装客户端管理、OutProc 客户端缓存、客户端监控和本地配置管理所需的客户端组件。

当需要从外部管理客户端计算机时,完整的客户端安装非常有用。 NCache 管理中心或 PowerShell 工具,或者当应用程序需要 OutProc 客户端缓存时。

客户端安装程序通常用于:

  • 远程客户端管理
  • OutProc 客户端缓存
  • 客户端监控和计数器
  • 本地客户端配置文件
  • 客户方服务和流程支持
注意:

如果一个应用程序只需要使用 NCache SDK 不需要远程管理或 OutProc 客户端缓存,仅部署 SDK 可能就足够了。

加工流程

日期 NCache 客户端安装在计算机上,根据已安装的组件和已启用的功能,它可以运行客户端服务和进程。这些进程支持客户端管理、客户端缓存托管和后台运行时操作。

客户端的主要流程包括:

  • Alachisoft.NCache。服务
  • Alachisoft.NCache.CacheHost
  • Alachisoft.NCache.执行服务

Alachisoft.NCache。服务

此 NCache 服务是主要的客户端管理服务,当 NCache 使用客户端安装程序。在客户端计算机上,它负责管理客户端配置、启用远程客户端管理以及在适用情况下支持客户端缓存操作。

在缓存服务器上, NCache 该服务管理服务器端缓存并接受初始客户端连接。在客户端机器上,它的作用范围更窄,主要侧重于客户端管理。

此 NCache 客户端计算机上的服务用于:

  • 注册和管理客户端配置
  • 允许远程客户端操作 NCache 管理中心或 PowerShell
  • 在适用情况下,管理 OutProc 客户端缓存生命周期
  • 支持客户端监控和诊断

如果将客户端计算机作为客户端节点添加到缓存中,管理工具就可以使用该节点。 NCache 客户端机器上的服务用于更新客户端配置。

注意:

仅提供 SDK 的应用程序通常不需要 NCache 客户端计算机上的服务。当客户端计算机需要完全启用该服务时,就需要此服务。 NCache 客户端安装功能,例如远程管理或 OutProc 客户端缓存。

Alachisoft.NCache.CacheHost

CacheHost 进程用于在应用程序进程之外托管缓存实例。在客户端计算机上,这主要与 OutProc 客户端缓存相关。

客户端缓存可以运行在应用程序进程内,也可以运行在应用程序进程外,具体取决于所选的客户端缓存模式。当使用 OutProc 客户端缓存时,缓存会在单独的进程中运行,而不是在应用程序内部运行。这实现了应用程序和客户端缓存之间的进程隔离。

客户端计算机上的 CacheHost 进程负责:

  • 托管 OutProc 客户端缓存
  • 将缓存数据保存在应用程序附近
  • 必要时与远程集群缓存通信
  • 减少常用数据与缓存集群之间的重复网络通信

当同一客户端机器上的多个应用程序需要共享同一个客户端缓存,或者当缓存内存和生命周期应该与应用程序进程隔离时,在单独的进程中运行 OutProc 客户端缓存非常有用。

Alachisoft.NCache.执行服务

此 NCache 执行服务主要是一个服务器端组件,用于执行后台任务,例如缓存加载器和刷新器。这些任务将数据从数据源加载或刷新到服务器端缓存中。

在典型的客户端机器上,执行服务并非客户端应用程序运行时环境的一部分。它并非基于 SDK 的基本缓存操作或正常的客户端-服务器通信所必需。

如果执行服务已完整安装 NCache 设置过程应理解为后台执行组件,由……使用。 NCache 需要单独执行任务的功能。对于正常情况 NCache 客户端使用情况,关键的客户端进程是: NCache 服务,以及在使用 OutProc 客户端缓存时,CacheHost 进程。

注意:

如果客户端问题与正常的应用程序缓存操作有关,请首先检查客户端日志和应用程序日志。执行服务日志通常与服务器端加载器和刷新器的诊断更相关。

配置文件

NCache 客户端配置文件由客户端应用程序和客户端组件使用,用于发现缓存服务器、应用连接设置、配置安全性以及启用安全通信。

客户端配置文件的位置取决于应用程序是使用仅 SDK 部署还是完整部署。 NCache 客户端安装。

基于 SDK 的配置位置

在仅部署 SDK 的情况下,配置文件应与应用程序放在一起,或放在所用 SDK 包指定的路径下。这样应用程序才能加载所需的配置文件。 NCache 运行时客户端配置,无需完整配置。 NCache 客户端安装。

这种方法适用于以下情况:

  • 该应用程序已部署。 NCache SDK库。
  • 客户端机器不需要远程管理。
  • 该应用程序通过配置文件或连接选项提供服务器信息。
  • OutProc客户端缓存不是必需的。

客户端安装程序配置位置

当。。。的时候 NCache 使用客户端安装程序,配置文件存储在…… NCache 安装配置目录:

  • Windows: 可在 %NCHOME%\config.
  • Linux: 可在 /opt/ncache/config.

这些文件被以下机构使用: NCache 机器上运行的客户端服务、管理工具和客户端应用程序。

客户端配置文件

以下配置文件通常在客户端计算机上相关:

  • 客户端.ncconf: 包含客户端缓存连接信息。它被以下系统使用: NCache 客户端 API 用于查找缓存服务器并应用连接设置,例如重试次数、超时时间、端口和服务器列表。

  • 安全.ncconf: 存储启用缓存安全时使用的安全相关客户端信息。它允许客户端应用程序使用所需的安全凭据和设置进行连接。

  • tls.ncconf: 存储用于安全客户端-服务器通信的 TLS 设置。当客户端应用程序和缓存服务器之间启用 TLS 时,此文件是必需的。

  • 监控.ncconf: 存储监控相关配置 NCache 监控组件。

日志文件

NCache 客户端日志文件有助于诊断应用程序连接问题、客户端-服务器通信问题、客户端缓存行为和客户端运行时错误。

客户端日志的位置取决于应用程序是使用仅 SDK 部署还是完整部署。 NCache 客户端安装。

基于 SDK 的日志位置

在仅使用 SDK 的部署中,客户端日志通常会在应用程序特定的日志位置或通过客户端 SDK 或应用程序设置配置的路径中生成。

这种方法在以下情况下很有用: NCache 客户端库直接随应用程序一起部署,没有完整的 NCache 客户端已安装在机器上。

客户端安装程序日志位置

当。。。的时候 NCache 使用客户端安装程序,日志文件生成于以下位置: NCache 日志目录:

  • Windows: 可在 %NCHOME%\log-files.
  • Linux: 可在 /opt/ncache/log-files.

具体的日志文件或文件夹取决于生成日志的客户端组件。

启用客户端日志

可以通过以下方式启用客户端日志记录: 客户端.ncconf 通过设置 enable-client-logs 至 True.

<cache id="demoCache"
       enable-client-logs="True"
       log-level="error">
  <server name="20.200.20.40"/>
</cache>

参见

客户管理
客户端配置 (client.ncconf)
缓存拓扑
客户端缓存

联系我们

联系电话

+1 214-619-2601   (美国)

+44 20 7993 8327   (英国)

 
邮箱地址

sales@alachisoft.com

support@alachisoft.com

NCache
  • 版本比较
  • NCache 卓越
  • 基准
下载
定价
尝试游乐场

部署
  • 云(SaaS 和软件)
  • 内部部署
  • Kubernetes
  • Docker
技术用例
  • ASP.NET 会话
  • ASP.NET Core 会话
  • 发布/订阅消息
  • 实时 ASP.NET SignalR
  • 物联网(IOT)
  • NoSQL 数据库
  • 流处理
  • 微服务
相关资源
  • 杂志文章
  • 第三方文章
  • 专题文章
  • 视频
  • 白皮书
  • 作品
  • 会谈
  • 博客
  • 文档
客户案例研究
  • 评价
  • 客户
支持
  • 安排演示
  • 论坛(谷歌组)
  • 小技巧
关于我们
  • 领导团队
  • 合作伙伴
  • 新闻
  • 活动
  • 加入我们
联系我们

  • 英语简体中文法语版德语版意大利语版日语版韩语版葡萄牙语西班牙语

  • 联系我们
  •  
  • 网站地图
  •  
  • 使用条款
  •  
  • 隐私政策
©版权所有 Alachisoft 2002 - 版权所有。 NCache 是 Diyatech Corp. 的注册商标。
Back to top