【30天精通Prometheus:一站式监控实战指南】第8天:redis_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细

亲爱的读者们👋

  欢迎加入【30天精通Prometheus】专栏!📚 在这里,我们将探索Prometheus的强大功能,并将其应用于实际监控中。这个专栏都将为你提供宝贵的实战经验。🚀

  Prometheus是云原生和DevOps的核心监控工具,我们将从基础概念开始,逐步涵盖配置、查询、告警和可视化。💪

  在接下来的30天里,我们将解锁Prometheus的实战技巧,通过案例和分享,助你深入理解其工作原理。📆

  目标:30天后,你将熟练掌握Prometheus,为未来的项目挑战做好准备!💯

  这是一段精彩旅程,期待你的加入!🎉


文章目录

  • 一、redis_exporter概述📘
  • 二、安装redis_exporter💾
    • 2.1 访问redis_exporter官方网站 🌐
    • 2.2 选择适合的版本🔍
    • 2.3 下载redis_exporter⬇️
    • 2.4 解压安装包📂
    • 2.5 运行redis_exporter🚀
  • 三、redis_exporter指标和配置详解📖
    • 3.1 redis_exporter.service
  • 四、实战演练:生产环境搭建指南🔨
    • 4.1 创建普通用户管理redis_exporter👤
    • 4.2 解压redis_exporter.tar.gz📦
    • 4.3 将redis_exporter集成到Prometheus配置中✂️
    • 4.4 更改redis_exporter软件包名称✂️
    • 4.5 编辑redis_exporter.service文件📝
    • 4.6 启动redis_exporter.service🔌
    • 4.7 查看服务是否正常启动🔍
  • 相关资料下载地址📚

一、redis_exporter概述📘

定义
  redis_exporter是一个开源的监控工具,专为收集和导出Redis数据库的性能指标而设计,以便进行有效的监控和分析。作为Prometheus监控生态系统的一部分,redis_exporter能够将捕获的数据转化为Prometheus可以识别的格式。

功能
  1.数据收集:redis_exporter能够连接到Redis数据库,并从中获取多种性能指标,包括但不限于命令处理时间、内存使用情况、客户端连接数、键空间状态等。

  2.数据导出:所收集的数据被格式化为Prometheus可识别的metrics格式,使得Prometheus可以轻松抓取并存储这些数据以供后续分析。

  3.兼容性:redis_exporter支持多种Redis版本,并能与Prometheus及其他监控解决方案无缝集成,提供全面的监控能力。

应用场景

  • IT运维和缓存管理:对于依赖Redis作为缓存层的大型企业或组织,redis_exporter是确保系统性能稳定的关键工具。它使IT运维团队能够实时监控Redis实例的健康状态和性能,从而预防潜在问题并优化系统性能。
  • 云服务与托管服务:云服务提供商可以利用redis_exporter为客户提供关于Redis服务的深入性能洞察,增强客户对服务质量和可靠性的信心。
  • 开发和测试环境:在软件开发和QA测试阶段,开发人员和测试工程师可以利用redis_exporter来监测Redis的性能表现,以确保应用与缓存层之间的交互效率,进而优化整体应用性能。

二、安装redis_exporter💾

注意事项和常见问题
  1.权限问题:在安装redis_exporter之前,需要确保当前用户有足够的权限来执行安装命令和访问必要的文件目录。在Unix-like系统中,可能需要使用sudo命令或以root用户身份执行安装。

  2.网络配置:redis_exporter默认会监听一个特定端口(例如:9121)。需要确保服务器的防火墙或网络安全组设置允许Prometheus服务器或其他监控工具访问该端口。

  3.服务管理:如果使用systemd等服务管理工具来管理redis_exporter,应确保服务配置文件(如/etc/systemd/system/redis_exporter.service)已正确设置,以便能够顺利启动、停止和重启服务。

  4.日志和错误排查:建议定期检查redis_exporter的日志文件,以便及时发现并解决问题。如果使用systemd,可以通过journalctl -u redis_exporter命令查看相关日志。

  5.版本兼容性:在安装前,请确认redis_exporter的版本与您的Redis数据库版本以及Prometheus等监控系统的版本相兼容。

  6.安装路径与文件权限:确保redis_exporter的安装路径具有适当的权限,以便服务能够正常访问和运行。同时,应检查所有配置文件(如包含Redis连接信息的配置文件)的路径和权限设置是否正确。

2.1 访问redis_exporter官方网站 🌐

  • 打开浏览器,访问redis_exporter的官方Github下载页面,通常位于Github官方网站下:https://github.com/oliver006/redis_exporter/releases

2.2 选择适合的版本🔍

  • 在下载页面,你将看到不同操作系统的redis_exporter二进制包。根据你的操作系统选择适合的版本。例如,如果你使用的是Linux 64位系统,就选择redis_exporter-x.x.x.linux-amd64.tar.gz(其中x.x.x是版本号)。
redis_exporterversionredis version
1.59.02.x、3.x、4.x、5.x、6.x and 7.x+
1.58.02.x、3.x、4.x、5.x、6.x and 7.x+
1.57.02.x、3.x、4.x、5.x、6.x and 7.x+
1.56.02.x、3.x、4.x、5.x、6.x and 7.x+
1.55.02.x、3.x、4.x、5.x、6.x and 7.x+

2.3 下载redis_exporter⬇️

  • 点击所选版本的下载链接,将redis_exporter的二进制包下载到你的本地计算机。

2.4 解压安装包📂

  • 将下载的redis_exporter压缩包解压到你想要安装的目录。你可以使用命令行工具(如tar)来完成这个步骤。解压后,你将看到一个名为redis_exporter-x.x.x.linux-amd64的目录,其中包含postgres_exporter的二进制文件和其他相关文件。
tar -xzf redis_exporter-x.x.x.linux-amd64.tar.gz

2.5 运行redis_exporter🚀

/home/deploy/redis_exporter/redis_exporter -redis.addr 127.0.0.1:6379 -redis.password exporter -web.listen-address=0.0.0.0:9121

三、redis_exporter指标和配置详解📖

3.1 redis_exporter.service

连接与认证参数

  • -redis.addr string
       用于指定 Redis 实例的地址。例如,你可以输入 localhost:6379 或者某个 IP 地址和端口号来指定 Redis 服务器的位置。
  • -redis.password string
       Redis 实例设置了密码保护,可以使用这个参数来提供密码。例如,-redis.password yourpassword。
  • -redis.password-file string
       除了直接提供密码,你还可以将密码存储在一个文件中,并通过这个参数指定文件路径。这样做的好处是可以增加安全性,避免在命令行中直接暴露密码。
  • -redis.user string
       对于 Redis 6.0 及以上版本,支持基于用户名和密码的认证(ACL)。这个参数允许你指定用于连接 Redis 的用户名。
  • -connection-timeout string
       设置连接到 Redis 实例的超时时间。如果在这个时间内没有成功建立连接,redis_exporter 将报错。时间格式通常为“时间单位+数值”,例如“10s”表示10秒。
  • -ping-on-connect
       redis_exporter 在每次连接到 Redis 时都会发送一个 PING 命令来确认连接是否成功。这有助于检测“僵尸”连接。
  • -skip-tls-verification
       是否跳过TLS验证。当与 Redis 的连接是通过 TLS/SSL 加密时,这个选项允许你跳过 TLS 证书的验证。这个参数通常不推荐配置,因为它降低了安全性,但在某些测试或开发环境中可能是有用的。

导出与度量参数

  • -namespace string
       设置度量的命名空间。Prometheus 中的指标可以有一个前缀(或命名空间),这有助于在存在多个相同类型的 exporter 时区分它们的指标。例如,如果你有两个 Redis 实例,并且你想为每个实例设置不同的命名空间来区分它们的指标,这个选项就会很有用。
  • -export-client-list
       决定是否抓取与 Redis 客户端列表相关的特定指标。当这个选项被启用时,redis_exporter 会从 Redis 的 CLIENT LIST 命令中提取额外的信息,如每个客户端的地址、连接时长等,并将这些信息作为指标暴露给 Prometheus。
  • -export-client-port
       在导出客户端列表时,决定是否包含客户端的端口信息。如果启用了 --export-client-list,这个选项将决定是否在导出的客户端信息中包含每个客户端的端口号。
  • -include-config-metrics
       决定是否包含所有 Redis 配置设置作为度量。当这个选项被启用时,redis_exporter 会从 Redis 的 CONFIG GET 命令中获取所有的配置选项,并将它们作为指标暴露给 Prometheus。
  • -include-system-metrics
       决定是否包含系统度量,如系统的总内存使用情况。启用此选项后,redis_exporter 将包含一些与运行 Redis 服务器的系统相关的指标,例如系统的总内存大小。
  • -redis-only-metrics
       决定是否仅导出与 Redis 相关的度量,而不导出 Go 运行时度量。默认情况下,redis_exporter 可能还会暴露一些与 Go 运行时环境相关的指标(如内存使用情况、GC 次数等)。如果你只对 Redis 的指标感兴趣,并希望减少 Prometheus 中指标的数量,可以启用此选项来仅导出 Redis 相关的指标。

扫描与键检查参数

  • -check-key-groups string
       允许用户通过 Lua 正则表达式指定哪些键应该被分组并监控。接受一个或多个 Lua 正则表达式,用于匹配 Redis 键名。匹配的键将被分组,并且可以为每组键收集和报告聚合指标。这对于监控具有相似命名模式的键组特别有用。
  • -check-keys string
       指定要导出值和长度/大小的键的模式列表。接受一个或多个模式(可以是正则表达式),用于匹配需要监控具体值和大小的 Redis 键。匹配到的键将导出其值和大小作为指标。
  • -check-keys-batch-size int
       设置在每次检查过程中大致要处理的键的数量。由于检查大量的键可能会对 Redis 性能产生影响,因此这个参数允许用户限制每次检查时处理的键的数量。这有助于分散负载,减少对 Redis 服务器的冲击。
  • -check-single-keys string
       指定要单独监控的特定键的列表。与 --check-keys 类似,但此参数用于指定单个、具体的键,而不是通过模式匹配。这对于需要特别关注某些特定键的情况很有用。
  • -check-single-streams string
       指定要单独监控的 Redis 流的列表。允许用户指定一个或多个特定的 Redis 流,以便收集和报告与这些流相关的指标,如流的长度、待处理的消息数等。
  • -check-streams string
       通过模式匹配来指定要监控的 Redis 流。与 --check-single-streams 类似,但这个参数是通过模式(可以是正则表达式)来匹配需要监控的流。这对于监控具有相似命名模式的多个流特别有用。
  • -count-keys string
       指定要计数的键的模式列表。允许用户通过模式匹配来指定哪些键应该被计数。这对于了解符合特定模式的键的数量非常有用,而不需要获取每个键的具体值或大小。

脚本与安全性参数

  • -script string
       允许用户指定一个或多个 Redis Lua 脚本的路径,这些脚本用于收集额外的度量信息。Redis 支持通过 Lua 脚本来扩展其功能,用户可以编写自定义的 Lua 脚本来检索 Redis 数据或执行复杂的操作。通过 --script 参数,redis_exporter 可以执行这些 Lua 脚本,并将脚本的输出作为额外的度量指标暴露给 Prometheus。
  • -redact-config-metrics
       决定是否对可能包含敏感信息的 Redis 配置设置进行编辑或隐藏。当启用这个选项时,redis_exporter 在暴露 Redis 配置设置作为度量指标之前,会先对这些设置进行检查和编辑,以确保不会泄露任何敏感信息。例如,Redis 的配置中可能包含密码、密钥或其他不应公开的信息。通过启用 --redact-config-metrics,redis_exporter 可以帮助保护这些信息不被意外暴露。

Web接口与遥测参数

  • -web.listen-address string
       redis_exporter 的 Web 接口和遥测数据的监听地址。定义了 redis_exporter 应该在哪个网络地址上监听传入的连接请求。通常,这个地址可以是一个具体的 IP 地址和端口组合,如 0.0.0.0:9121,表示在所有可用的网络接口上的 9121 端口监听。如果你只想在本地接口上监听,可以使用 127.0.0.1:9121。
  • -web.telemetry-path string
       设置暴露 Prometheus 度量数据的 HTTP 路径。默认情况下,Prometheus exporter 通常在根路径 / 上暴露度量数据。但是,如果你的环境中需要将度量数据暴露在一个特定的子路径下,你可以使用这个参数来设置。例如,设置为 -web.telemetry-path /redis_metrics 将会使得度量数据在 /redis_metrics 路径下可用。
  • -tls-server-*
       与 redis_exporter Web 接口使用的 TLS(传输层安全性)配置有关。TLS 用于加密网络通信,以确保数据的机密性和完整性。–tls-server-* 参数允许你配置与 TLS 相关的各种设置,如私钥、证书等,以确保 redis_exporter 的 Web 接口通过 HTTPS 安全地暴露度量数据。具体的参数可能包括 --tls-server-key-file(指定私钥文件的路径)、-tls-server-cert-file(指定证书文件的路径)等。通过这些参数,你可以为 redis_exporter 启用 HTTPS,并增强数据传输的安全性。

其他参数

  • -config-command string
       指定用于获取 Redis 配置的命令字符串。Redis 的 CONFIG GET 命令用于获取 Redis 服务器的配置参数。通过这个参数,您可以自定义或限制 redis_exporter 在检索配置信息时所使用的命令。例如,如果您只想检索特定的配置选项,可以使用这个参数来指定。
  • -disable-exporting-key-values
       决定是否禁用从 Redis 中导出键和值的功能。默认情况下,redis_exporter 可能会导出 Redis 中的键和对应的值作为度量信息。如果出于安全或性能的考虑,您不希望导出这些键值对,可以通过设置这个参数为 true 来禁用这个功能。
  • -is-cluster
       指示 redis_exporter 是否正在监控一个 Redis 集群。Redis 支持集群模式,允许多个 Redis 节点共同工作以提供高可用性和可扩展性。当设置为 true 时,redis_exporter 将以集群模式运行,并适当地收集和处理集群相关的度量信息。
  • -is-tile38
      指示 redis_exporter 是否应抓取 Tile38 特定的度量。Tile38 是一个地理空间数据库,兼容 Redis 协议。如果设置为 true,redis_exporter 将尝试收集和暴露与 Tile38 相关的特定度量信息。
  • -max-distinct-key-groups int
       设置要作为不同度量呈现的最具内存利用率的唯一键组的最大数量。当使用 --check-key-groups 参数对键进行分组时,这个参数限制了要跟踪和暴露度量信息的唯一键组的数量。这个参数有助于控制内存使用和性能指标的数量,特别是在有大量键组的情况下。
  • -set-client-name
       是否将客户端名称设置为redis_exporter。决定 redis_exporter 是否应将其客户端名称设置为 redis_exporter。当连接到 Redis 服务器时,客户端可以设置一个名称来标识自己。如果设置为 true,redis_exporter 将在连接时将其客户端名称设置为 redis_exporter,这有助于在 Redis 的客户端列表中识别和跟踪 redis_exporter 的连接。

四、实战演练:生产环境搭建指南🔨

4.1 创建普通用户管理redis_exporter👤

useradd deploy

4.2 解压redis_exporter.tar.gz📦

注意:
  我的是x86,所以使用redis_exporter-v1.59.0.linux-amd64.tar.gz,您可以使用uname -a命令查看系统架构

tar xvf redis_exporter-v1.59.0.linux-amd64.tar.gz -C /home/deploy/

4.3 将redis_exporter集成到Prometheus配置中✂️

  将redis_exporter集成到Prometheus配置中,确保数据能够正常采集。编辑Prometheus的配置文件(通常是prometheus.yml),在scrape_configs部分添加redis_exporter的配置。告诉Prometheus将采集localhost:9121的数据。

scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: "redis_exporter"static_configs:- targets: ["localhost:9121"]

4.4 更改redis_exporter软件包名称✂️

mv redis_exporter-v1.59.0.linux-amd64 /home/deploy/redis_exporter

4.5 编辑redis_exporter.service文件📝

cat > /etc/systemd/system/redis_exporter.service <<EOF
[Unit]
Description=Redis Exporter
After=network.target[Service]
Type=simple
User=deploy
Group=deploy
ExecStart=/home/deploy/redis_exporter/redis_exporter \
-redis.addr 127.0.0.1:6379 \
-ping-on-connect \
-export-client-list \
-web.listen-address=0.0.0.0:9121
ExecReload=/bin/kill -HUP
Restart=on-failure[Install]
WantedBy=multi-user.target
EOF

4.6 启动redis_exporter.service🔌

sudo systemctl daemon-reloadsudo systemctl enable --now redis_exporter.service

4.7 查看服务是否正常启动🔍

# 查看service服务是否启动
sudo systemctl status redis_exporter.service# 查看端口是否存在
sudo ss -ntulp | grep 9121

相关资料下载地址📚

  • 官方文档:https://prometheus.io/docs/introduction/overview/
  • 下载地址:https://github.com/prometheus/prometheus/releases/tag/v2.52.0
  • 文档地址:https://prometheus.io/docs/prometheus/latest/installation/
  • 离线包下载链接:https://pan.baidu.com/s/1ANF_AlFnM5_FMIbKBuzBmg 提取码:yqpt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/840713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arc-eager算法XJTU-NLP自然语言处理技术期末考知识点

arc-eager算法&#xff1a;以我/做了/一个/梦为例来描述arc-eager算法的四个操作&#xff1a;shift&#xff0c;left-arc&#xff0c;right-arc&#xff0c;reduce XJTU-NLP期末考点2024版 题型&#xff1a;5*6简答题4*15计算题 简答题考点&#xff1a; &#xff08;1&#…

Java+Spring+ IDEA+MySQL云HIS系统源码 云HIS适合哪些地区的医院?

JavaSpring IDEAMySQL云HIS系统源码云HIS适合哪些地区的医院&#xff1f; 云HIS适合哪些地区的医院&#xff1f; 云HIS&#xff08;云医院信息系统&#xff09;适合多种地区的医院&#xff0c;特别是那些希望实现医疗服务的标准化、信息化和规范化&#xff0c;同时降低IT运营成…

42-2 应急响应之计划任务排查

一、进程排查 进程排查是指通过分析系统中正在运行的进程,以识别和处理恶意程序或异常行为。在Windows和Linux系统中,进程是操作系统的基本单位,因此对于发现和处理恶意软件或异常活动至关重要。恶意程序通常会以进程的形式在系统中运行,执行各种恶意操作,比如窃取信息、破…

每日一题 包含不超过两种字符的最长子串

目录 1.前言 2.题目解析 3.算法原理 4.代码实现 1.前言 首先我打算介绍一下&#xff0c;我对滑动窗口的理解。 滑动窗口可以分为四个步骤&#xff1a; 进窗口&#xff1a; 在这一步骤中&#xff0c;我们决定了要在窗口中维护的信息。例如&#xff0c;在这个问题中&#xff…

Codeforces Round 946 (Div.3)

C o d e f o r c e s R o u n d 946 ( D i v . 3 ) \Huge{Codeforces~Round~946~(Div.3)} Codeforces Round 946 (Div.3) 题目链接&#xff1a;Codeforces Round 946 (Div. 3) 文章目录 Problems A. Phone Desktop题意思路标程 Problems B. Symmetric Encoding题意思路标程 Pr…

ubuntu 配置用户登录失败尝试次数限制

前言&#xff1a; 通过修改pam配置来达到限制密码尝试次数&#xff01; 1&#xff1a;修改 /etc/pam.d/login 配置&#xff08;这里只是终端登录配置&#xff0c;如果还需要配置SSH远程登录限制&#xff0c;只配置下面的 /etc/pam.d/pam.d/common-auth 即可&#xff09; vim…

SpringCloud的Config配置中心,为什么要分Server服务端和Client客户端?

SpringCloud的Config配置中心&#xff0c;为什么要分Server服务端和Client客户端&#xff1f; 在SpringCloud的Config配置中心中分了Server服务端和Client客户端&#xff0c;为什么需要这样分呢&#xff1f;它的思想是所有微服务的配置文件都放到git远程服务器上&#xff0c;让…

Elasticsearch集群搭建学习

Elasticsearch集群聚合、集群搭建 RestClient查询所有高亮算分控制 数据聚合DSL实现Bucket聚合DSL实现Metrics聚合RestAPI实现聚合 拼音分词器如何使用拼音分词器&#xff1f;如何自定义分词器&#xff1f;拼音分词器注意事项&#xff1f; 自动补全数据同步集群搭建ES集群结构创…

蓝桥杯备赛——DP【python】

一、小明的背包1 试题链接&#xff1a;https://www.lanqiao.cn/problems/1174/learning/ 问题描述 输入实例 5 20 1 6 2 5 3 8 5 15 3 3 输出示例 37 问题分析 这里我们要创建一个DP表&#xff0c;DP&#xff08;i&#xff0c;j&#xff09;表示处理到第i个物品时消耗j体…

Atlas 200 DK(Model 3000)安装MindSpore Ascend版本

一、参考资料 mindspore快速安装 二、重要说明 经过博主多次尝试多个版本&#xff0c;Atlas 200 DK&#xff08;Model 3000&#xff09;无法安装MindSpore Ascend版本。 三、准备工作 1. 测试环境 设备型号&#xff1a;Atlas 200 DK(Model: 3000) Operating System Vers…

依赖的各种java库(工具类) :fastjson,lombok,jedis,druid,mybatis等

lombok 功能&#xff1a; Lombok 是一个实用的Java类库&#xff0c;可以通过简单的注解来简化和消除一些必须有但显得很臃肿的Java代码。 导入包&#xff1a;使用Lombok首先要将其作为依赖添加到项目中&#xff0c;在pom.xml文件中手动添加 <dependency><groupId&g…

提取COCO 数据集的部分类

1.python提取COCO数据集中特定的类 安装pycocotools github地址&#xff1a;https://github.com/philferriere/cocoapi pip install githttps://github.com/philferriere/cocoapi.git#subdirectoryPythonAPI若报错&#xff0c;pip install githttps://github.com/philferriere…

【CTF Web】CTFShow web5 Writeup(SQL注入+PHP+位运算)

web5 1 阿呆被老板狂骂一通&#xff0c;决定改掉自己大意的毛病&#xff0c;痛下杀手&#xff0c;修补漏洞。 解法 注意到&#xff1a; <!-- flag in id 1000 -->拦截很多种字符&#xff0c;连 select 也不给用了。 if(preg_match("/\|\"|or|\||\-|\\\|\/|\…

24款奔驰S450升级原厂后排娱乐系统 主动氛围灯有哪些功能

24款奔驰S400豪华升级原厂主动氛围灯与后排娱乐系统&#xff1a;画蛇添足还是锦上添花&#xff1f; 在当今汽车市场竞争激烈的环境下&#xff0c;汽车制造商们为了满足消费者的多元化需求&#xff0c;不断推出各种升级配置和豪华版本。24款奔驰S400豪华版作为奔驰S级的一款重要…

听说部门来了个00后测试开发,一顿操作给我整麻了

公司新来了个同事&#xff0c;听说大学是学的广告专业&#xff0c;因为喜欢IT行业就找了个培训班&#xff0c;后来在一家小公司实习半年&#xff0c;现在跳槽来我们公司。来了之后把现有项目的性能优化了一遍&#xff0c;服务器缩减一半&#xff0c;性能反而提升4倍&#xff01…

uniapp开发vue3监听右滑返回操作,返回到指定页面

想要在uniapp框架中监听左滑或者右滑手势&#xff0c;需要使用touchstart和touchend两个api&#xff0c;因为没有原生的左右滑监听api&#xff0c;所以我们只能依靠这两个api来获取滑动开始时候的x坐标和滑动结束后的x坐标做比对&#xff0c;右滑的话&#xff0c;结束时候的x坐…

飞速提升中文打字,Master of Typing in Chinese for Mac助你一臂之力

Master of Typing in Chinese for Mac是一款专为Mac用户设计的中文打字练习软件。其主要功能包括帮助用户提高打字速度和准确性&#xff0c;培养盲打技巧&#xff0c;使键盘输入更加高效。 打字速度提升&#xff1a;软件提供多种练习模式&#xff0c;如字母、特殊字符、单词和…

FPGA状态机设计详解

一.什么是状态机&#xff1f; 想象一下你正在玩一个电子游戏&#xff0c;角色有多种状态&#xff0c;比如“行走”、“跳跃”、“攻击”等。每当你按下不同的按键或者满足某些条件时&#xff0c;角色的状态就会改变&#xff0c;并执行与该状态对应的动作。这就是状态机的一个简…

Java 类加载和实例化对象的过程

1. 类加载实例化过程 当我们编写完一个*.java类后。编译器&#xff08;如javac&#xff09;会将其转化为字节码。转化的字节码存储在.class后缀的文件中&#xff08;.class 二进制文件&#xff09;。接下来在类的加载过程中虚拟机JVM利用ClassLoader读取该.class文件将其中的字…

GAW-1000D 微机控制钢绞线拉力试验机

一、整机外观图与示意图 外观示意图 性能说明&#xff1a; GAW-1000D型微机控制电液伺服钢绞线拉力试验机主要用于对预应力钢绞线进行抗拉强度测试。由宽调速范围的电液比例伺服阀与计算机及测控单元所组成伺服控制系统&#xff0c;能精确的控制和测量试验全过程。整机由主机…