调优之容量问题

在经过Tomcat、keepAlived参数调优之后,还是会发现相应时间变长,反应时间变长,TPS上不去的情况。

那么我们改如何进行优化呢?
对於单台web容器的性能上限我们要掌握

  • 线程数量:4核cup8G内存单进程调度线程数800-1000以上后就会花费巨大的时间在cup调度上
  • 等待队列长度:队列做缓冲池使用,但也不能无限长,消耗内存,出队入队也会消耗CPU

在测试的过程中我们会发现大量的资源是消耗在了MySQL上了,在SQL语句上的优化主要是对索引的优化,他们之间的效率如何呢:

  • 主键查询:千万级别数据 = 1-10毫秒
  • 唯一索引查询:千万级别数据 = 10-100毫秒
  • 非唯一索引查询:千万级别数据 =100-1000毫秒
  • 无索引:百万条数据 = 1000毫毛+
  • 非插入更新删除的操作:同查询
  • 插入操作: 1W~10W tps

我们可以非常直观的发现使用索引的不同对使用效率的影响有多大,所以对于数据库的优化是必经之路。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章