zoukankan      html  css  js  c++  java
  • keycloak~大数据量时坑出现~索引的坑

    我不知道为什么kc没有为对应的查询字段加索引,导致我们在使用kc时,当用户表数据量达到几十万时,出现所有增删改接口缓慢的问题,这个问题的原因,我找了好长时间,我在大数据量时找这个缓慢原因过程

    • 查看mysql的并发数的限制
    • 查看top产生的cpu,内在的使用情况
    • 查看客户端到kc端,kc端到数据库的网络传输限制
    • 为k8s的资源进行调整,添加内存额度
    • 为username字段添加索引
    • 打开mysql日志功能,观察慢接口的日志
    • 找到慢的语句
      select userentity0_.ID as ID1_75_, userentity0_.CREATED_TIMESTAMP as CREATED_2_75_, userentity0_.EMAIL as EMAIL3_75_, userentity0_.EMAIL_CONSTRAINT as EMAIL_CO4_75_, userentity0_.EMAIL_VERIFIED as EMAIL_VE5_75_, userentity0_.ENABLED as ENABLED6_75_, userentity0_.FEDERATION_LINK as FEDERATI7_75_, userentity0_.FIRST_NAME as FIRST_NA8_75_, userentity0_.LAST_NAME as LAST_NAM9_75_, userentity0_.NOT_BEFORE as NOT_BEF10_75_, userentity0_.REALM_ID as REALM_I11_75_, userentity0_.SERVICE_ACCOUNT_CLIENT_LINK as SERVICE12_75_, userentity0_.USERNAME as USERNAM13_75_ from USER_ENTITY userentity0_ where userentity0_.SERVICE_ACCOUNT_CLIENT_LINK='25e52f60-5991-43dd-9108-873f60af385d' and userentity0_.REALM_ID='xxx'
    • 为两个查询字段添加索引SERVICE_ACCOUNT_CLIENT_LINKSERVICE_ACCOUNT_CLIENT_LINK
    • 问题解决!
      最后,把这个问题产生的过程,和解决方法抛出来,并且我会在github上为redhat提出这个bug。

  • 相关阅读:
    php记录代码执行时间
    TortoiseSVN教程级别指南
    有些 where 条件会导致索引无效
    mysql优化
    SQL优化方法
    mysql服务性能优化 my.cnf my.ini配置说明详解(16G内存)
    mysql慢查询设置
    javascript和php使用ajax通信传递JSON
    PHP导出大量数据到excel表格
    核心支付业务
  • 原文地址:https://www.cnblogs.com/lori/p/15250202.html
Copyright © 2011-2022 走看看