V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kisshere
V2EX  ›  程序员

服务器几个网站都运行 ES,怎样查看哪个网站 ES 消耗的负载最高?

  •  1
     
  •   kisshere · 2021-06-21 08:57:08 +08:00 · 1907 次点击
    这是一个创建于 1011 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前服务器 CPU 负载居高不下,几个网站都运行同一个服务器上,都调用了 ES 的服务,用 top 命令看了下,ES 的 Java 占用的 cpu 最高,但是几个网站流量都很小,怎么查看是哪个网站负载消耗最高?

    6 条回复    2021-06-21 10:13:11 +08:00
    tairan2006
        1
    tairan2006  
       2021-06-21 09:00:47 +08:00
    jstack 看一下线程 cpu 占比

    可以停服的话,采用排除法逐个停一段时间就行(
    tairan2006
        2
    tairan2006  
       2021-06-21 09:02:56 +08:00
    wellsc
        3
    wellsc  
       2021-06-21 09:12:00 +08:00 via iPhone
    链路追踪?
    X0ray
        4
    X0ray  
       2021-06-21 09:39:24 +08:00
    把 ES 的 slow log 打开,通过语句定位我觉得也可行。
    podel
        5
    podel  
       2021-06-21 10:01:07 +08:00
    其实 时间肯定跟 负载成正比的。
    可以直接加一层 nginx 然后 nginx 接入 监控 metrics 或者 jaeger 之类的。
    按照访问的 URL 统计请求时间比列。就知道哪个用得多了。
    bjhc
        6
    bjhc  
       2021-06-21 10:13:11 +08:00
    接一个 es 的 ui 插件,比如 kibana 之类的,可以查看 es 性能之类的操作。主要还是看 index 吧,每个网站难道用的是相同的 index?如果每个网站用的是不同的 index,那么看下对应 index 的读取和写入速度吧.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3951 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 10:23 · PVG 18:23 · LAX 03:23 · JFK 06:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.