Apache Ignite 监控指标全面解析

Apache Ignite 监控指标全面解析

ignite Apache Ignite ignite 项目地址: https://gitcode.com/gh_mirrors/ignite15/ignite

概述

Apache Ignite 作为一款高性能的内存计算平台,提供了丰富的监控指标来帮助开发者和管理员了解系统运行状态。本文将深入解析 Ignite 的监控指标体系,帮助读者全面掌握系统监控的关键要素。

系统级指标

系统级指标主要反映 JVM 和操作系统层面的运行状况,注册名为 sys

核心指标详解

  1. CPU 相关指标

    • CpuLoad:系统 CPU 负载百分比
    • GcCpuLoad:垃圾回收占用的 CPU 负载
    • SystemLoadAverage:系统平均负载
  2. 线程相关指标

    • DaemonThreadCount:守护线程数量
    • PeakThreadCount:峰值线程数
    • ThreadCount:当前线程数
    • TotalStartedThreadCount:累计启动线程数
  3. 内存相关指标

    • memory.heap 系列:堆内存使用情况(committed/init/used)
    • memory.nonheap 系列:非堆内存使用情况
  4. 其他重要指标

    • UpTime:JVM 运行时长
    • TotalExecutedTasks:总执行任务数

缓存指标

缓存指标是 Ignite 监控的核心,注册名格式为 cache.{cache_name}.{near}

关键性能指标

  1. 基本操作统计

    • CacheGets/Puts/Removals:缓存操作次数
    • CacheHits/Misses:缓存命中率相关
    • CacheTxCommits/Rollbacks:事务提交/回滚次数
  2. 性能指标

    • CommitTime/RollbackTime:事务处理时间直方图
    • GetTime/PutTime:读写操作耗时统计
    • Query 系列:SQL 查询性能指标
  3. 内存使用

    • HeapEntriesCount:堆上条目数
    • OffHeap 系列:堆外内存使用情况
  4. Rebalance 相关

    • RebalancedKeys:已重平衡的键数
    • RebalancingBytesRate:重平衡速率

缓存组指标

注册名格式为 cacheGroups.{group_name},提供缓存组级别的监控。

重要指标

  1. 分区状态

    • LocalNodeOwning/MovingPartitionsCount:分区状态统计
    • AffinityPartitionsAssignmentMap:分区分配映射
  2. 存储指标

    • StorageSize:分配的存储空间
    • TotalAllocatedPages:总分配页数
  3. 加密相关

    • ReencryptionBytesLeft:剩余需重加密数据量
    • ReencryptionFinished:重加密完成标志

事务指标

注册名为 tx,监控事务处理情况。

关键指标

  1. 事务状态

    • OwnerTransactionsNumber:本节点发起的事务数
    • LockedKeysNumber:被锁定的键数
  2. 性能指标

    • nodeSystemTimeHistogram:系统时间直方图
    • LastCommit/RollbackTime:最后提交/回滚时间
  3. 统计信息

    • txCommits/Rollbacks:事务提交/回滚次数

分区映射交换(PME)指标

注册名为 pme,监控分区映射交换过程。

核心指标

  • Duration:当前 PME 持续时间
  • CacheOperationsBlockedDuration:缓存操作被阻塞时间
  • 对应的直方图指标反映历史分布情况

计算任务指标

注册名为 compute.jobs,监控计算任务执行情况。

重要指标

  • Active/Finished:活跃/已完成任务数
  • Waiting:排队任务数
  • Execution/WaitingTime:执行/等待时间

线程池指标

注册名格式为 threadPools.{thread_pool_name},监控各线程池状态。

关键指标

  1. 容量相关

    • CorePoolSize/MaximumPoolSize:核心/最大线程数
    • PoolSize:当前线程数
  2. 任务统计

    • QueueSize:队列大小
    • CompletedTaskCount:已完成任务数
    • TaskExecutionTime:任务执行时间直方图

I/O 统计指标

缓存组 I/O

注册名格式为 io.statistics.cacheGroups.{group_name}

  • LOGICAL/PHYSICAL_READS:逻辑/物理读取次数

索引 I/O

  1. 排序索引

    • 区分内部节点和叶节点的读写统计
    • 注册名格式:io.statistics.sortedIndexes.{cache_name}.{index_name}
  2. 哈希索引

    • 类似排序索引的统计维度
    • 注册名格式:io.statistics.hashIndexes.{cache_name}.{index_name}

索引操作

注册名格式:index.{schema_name}.{table_name}.{index_name}

  • 按操作类型统计次数和耗时
  • {opType}Count/Time:操作次数和总耗时

网络通信指标

通用通信

注册名:io.communication

  • ActiveSessionsCount:活跃会话数
  • Sent/ReceivedBytesCount:收发字节数
  • SSL 相关指标(如启用)

客户端连接器

  1. Thin Client

    • 注册名:client.connector
    • 包含会话统计和亲和性路由指标
    • AffinityKeyRequestsHits/Misses:亲和性请求命中情况
  2. REST Client

    • 注册名:rest.client
    • 基础连接和 SSL 指标

发现协议

注册名:io.discovery

  • CurrentTopologyVersion:当前拓扑版本
  • Joined/LeftNodes:节点加入/离开数
  • 协调器相关指标

总结

Apache Ignite 提供了从系统底层到应用层的全方位监控指标,涵盖了:

  1. 资源使用(CPU、内存、线程)
  2. 缓存性能(读写、事务、查询)
  3. 分布式特性(分区、重平衡)
  4. 网络通信(连接、吞吐量)
  5. 计算任务(执行、排队)

合理利用这些指标可以:

  • 及时发现性能瓶颈
  • 优化资源配置
  • 诊断系统问题
  • 监控集群健康状态

建议根据实际应用场景,重点关注相关指标类别,建立完善的监控告警机制。

ignite Apache Ignite ignite 项目地址: https://gitcode.com/gh_mirrors/ignite15/ignite

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冯爽妲Honey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值