当前位置:Java -> 使用Docker快速入门NCache Java Edition

使用Docker快速入门NCache Java Edition

NCache Java Edition(带有分布式缓存技术)是一个强大的工具,可帮助Java应用程序运行更快、处理更多用户并更加可靠。在今天的世界中,人们希望应用程序能够快速、无故障地运行,了解如何使用NCache Java Edition非常重要。对于想确保其应用程序能够为用户提供快速数据访问和流畅体验的开发人员和企业来说,它是技术中的关键部分,这使得NCache Java Edition成为打造优秀应用程序的重要组成部分。

本文特别为初学者设计,以使添加NCache到您的Java应用程序的思想和步骤清晰易懂。不管您是有多年开发经验还是正在尝试缓存,本文都将帮助您快速入门NCache Java Edition。让我们从逐步设置开发工作站以及与Java配置相关的过程开始。

NCache服务器安装:Java Edition

NCache具有不同的部署选项,分类如下:

  1. 本地部署 
  2. 使用Docker/Kubernetes  

您可以在这里查看所有部署选项和部署的包。

NCache建议在生产环境中至少使用SO-16(16GB RAM, 8v CPU)以获得最佳性能,对于更高的事务负载,我们应该选择SO-32、SO-64或SO-128。

NCache服务器使用Docker镜像部署

NCache提供了不同的镜像( alachisoft/ncache - Docker Image | Docker Hub),适用于Windows和Linux平台的Java版本。

让我们看看如何使用最新的Linux Docker镜像部署NCache服务器。

使用以下Docker命令来拉取最新镜像:

docker pull alachisoft/ncache:latest-java


Pull NCache Docker Image

现在我们成功拉取了Docker镜像。

使用以下Docker命令运行镜像:

  • 对于开发工作站:
docker run --name ncache -itd -p 8251:8251 -p 9800:9800 -p 8300:8300 -p 8301:8301 alachisoft/ncache:latest-java  


使用实际主机配置来配置生产NCache服务器:

docker run –name ncache -itd –network host alachisoft/ncache:latest-java


Docker run 上述命令将运行NCache服务器,并监听端口8251。

现在,使用浏览器打开NCache管理中心(localhost:8251)。您将看到弹出模态框要求注册您的许可密钥,如下所示:

Register license key

点击开始免费试用以激活许可密钥的免费试用,使用下面的表单。

Click for Free Trial Activation Key

您可以使用此注册页面表单或以下Docker命令注册您的许可密钥。

docker exec -it ncache /opt/ncache/bin/tools/register-ncacheevaluation -firstname [registered first name] -lastname [registered last name] -company [registered company name] -email [registered e-mail id] -key [key]


现在,从浏览器中打开NCache管理中心http://localhost:8251/。

NCache缓存集群

我们要在另一个实例中安装一个额外的镜像,并进行适当的网络配置。请使用下面的文档对NCache Docker镜像部署进行网络配置。

我在10.0.0.4实例中部署了一个镜像,并在10.0.0.5实例中部署了另一个。我刚刚进入了10.0.0.4 NCache管理中心,并删除了安装过程中创建的默认集群缓存。

让我们使用NCache管理中心向导创建一个新的集群缓存。

如下图所示,点击新建,进入集群缓存页面:

Clustered Caches -> New

使用NCache管理中心界面创建集群缓存是一个7步骤的过程,我们将逐步进行。

步骤1:内存存储
Define the in-memory store type, the name of the clustered cache, and the serialization type

在这一步中,您可以定义内存存储类型、集群缓存的名称和序列化类型。在我的案例中,我将集群缓存命名为demoCache,序列化为JSON

步骤2:缓存拓扑

Caching topology

在屏幕上定义缓存拓扑;在我的案例中,我选择了默认选项。

步骤3:缓存分区和大小

Cache partitions and size

在此屏幕上,我们可以定义缓存分区大小。在我的案例中,我选择了默认值。使用此选项,将跳过步骤4。

此外,我添加了两个服务器节点:10.0.0.4和10.0.0.5。

步骤5:集群TCP参数

Cluster TCP parameters

定义集群端口端口范围批处理间隔值。在我的案例中,我选择了默认值。

步骤6:加密和压缩设置

Encryption and Compression Settings

您可以在此步骤中启用加密压缩设置。在我的案例中,我选择了默认值。

步骤7:高级选项

高级选项

您可以启用清除并检查其他高级选项。在我的情况下,我选择了在完成时启动缓存。最后,点击完成。一旦过程完成,它将创建并启动带有两个节点的集群缓存(10.0.0.4和10.0.0.5)。

现在集群已形成。

集群已形成

启动缓存

您可以从NCache管理中心中使用启动选项来启动集群缓存,如下图所示。

启动缓存

您也可以使用以下命令启动服务器:

start-cache –name demoCache


运行压力测试

点击测试-压力并选择要运行压力测试的持续时间。这是NCache管理中心中我最喜欢的功能之一,您只需点击一个按钮即可轻松开始压力测试。

启动压力测试

您也可以使用以下命令启动服务器。例如,对demoCache集群进行默认设置的测试-压力

test-stress –cachename demoCache


点击监视以查看指标。

监视以查看指标

您可以监视每个节点处理的请求数。

点击统计以获取集群缓存的完整统计信息。

用SNMP计数器监视NCache

Simple Network Management Protocol(SNMP)是一个用于监视和管理不同网络设备及其活动的关键系统。它是Internet协议套件的一部分,有助于在路由器、交换机、服务器和打印机等设备之间共享有关网络健康和运行状况的重要信息。这使得网络管理员可以更改设置,跟踪网络的表现,并在出现任何问题时收到警报。SNMP被广泛应用,对于保持网络平稳和安全运行至关重要。它是管理和修复网络的重要组成部分。

NCache现在通过单个端口允许计数器的发布,使SNMP监视变得更加简单。以前,每个缓存都需要单独的端口。

确保NCache服务和要监视的缓存正在运行。

配置NCache服务

位于%NCHOME%\bin\service文件夹中的Alachisoft.NCache.Service.dll.config文件通过修改特定选项提供了通过SNMP激活或停用缓存计数的监控的能力。这些选项由特定的标签标记。

Alachisoft.NCache.Service.dll.config file

更新以下标签的值:

  • <add key="NCacheServer.EnableSnmpMonitoring" value="true"/>
  • <add key="NCacheServer.SnmpListenersInfoPort" value="8256"/>
  • <add key="NCacheServer.EnableMetricsPublishing" value="true"/> 
  1. NCacheServer.EnableSnmpMonitoring标签的值更改为true以打开或关闭对NCache缓存计数的SNMP监控。最初,此标签是关闭的(false)。
  2. NCacheServer.SnmpListenersInfoPort标签的值更改为true以设置SNMP监听的端口。默认端口为8256,但您可以根据需要进行调整。
  3. 如果需要启动或停止将指标发送到NCache服务,则将NCacheServer.EnableMetricsPublishing标签更改为true。

Specify whether to publish metrics to NCache or not

在您对服务配置文件进行必要的调整之后,请记得重新启动NCache服务。

SNMP监控

NCache提供了一个名为alachisoft.mib的单个MIB文件,用于跟踪可以使用SNMP检查的各种计数器。该文件告诉您有关用于不同类型的缓存和客户端活动的端口。您可以在%NCHOME%\bin\resources中找到此文件。要查看这些计数器,您可以使用一个名为MIB Browser免费工具的程序来查看MIB文件。

alachisoft.mib file

使用端口8256连接NCache,并从查看中打开SNMP表,查看NCache的所有属性,如下图所示:

Open the SNMP Table from View

要查看SNMP表中的特定属性详细信息,首先选择您想要查看的属性。例如,我选择了cacheNamecacheSizecacheCountfetchesPerSecrequestsPerSecadditionPerSec。然后,选择位于顶部菜单中的查看,再选择SNMP表。然后,您将在表中看到计数器的值,如下图所示。

Values of the counter in the table

总结

本文提供了一个适合初学者的指南,介绍了如何开始使用NCache Java Edition,涵盖了诸如安装NCache服务器、使用Docker映像部署它、启动缓存、进行压力测试以评估其性能,并通过JMX计数器监视其运行等基本步骤。通过NCache实现分布式缓存,帮助您开始提高Java应用的速度和可靠性。

推荐阅读: 1. JVM、JRE及JDK的关系

本文链接: 使用Docker快速入门NCache Java Edition