zoukankan      html  css  js  c++  java
  • shopex ecstone ,sdb_base_kvstore性能问题

    看一些基本信息。

    Table: sdb_base_kvstore
    Create Table: CREATE TABLE `sdb_base_kvstore` (
    `id` mediumint(8) unsigned NOT NULL auto_increment,
    `prefix` varchar(255) NOT NULL,
    `key` varchar(255) NOT NULL,
    `value` longtext,
    `dateline` int(10) unsigned default NULL,
    `ttl` int(10) unsigned default '0',
    PRIMARY KEY (`id`),
    KEY `ind_prefix` (`prefix`),
    KEY `ind_key` (`key`)
    ) ENGINE=MyISAM AUTO_INCREMENT=9417702 DEFAULT CHARSET=utf
    8

    id: 1
    prefix: system
    key: service_last_modified.base_application_dbtable.b
    ase
    value: s:32:"f765565d5b6a3bf8d1ccb18bd6058ab9";
    dateline: 1328604155
    ttl: 0

    SELECT `prefix`, `key` FROM sdb_base_kvstore WHER
    E ttl>0 AND (dateline+ttl)<1361339749 LIMIT 617900, 100

    类似的,有很多条thread ,

    问题主要是对sdb_base_kvstore 的查询很多,很多个thread,造成read lock。

    分析,这个没有走索引,所以会比较慢一点,而且有很多并发,myisam的表级锁争用造成性能问题,但是会造成read lock ,这个不懂为什么,照理说select表锁不会阻塞其他的读操作。

    解决方案是在ttl上建立索引,并且把表转成innodb的。主要是后者,innodb的行锁,大大提升并发性能。

    问题可解决。

  • 相关阅读:
    ZXing 生成、解析二维码图片的小示例
    OpenLDAP 2.4.x源码安装配置
    Elasticsearch & Kibana with Shield
    Kibana SSL
    Kibana 官方示例
    ELK 处理分析日志(nginx,syslog)
    Elasticsearch 负载均衡集群
    Elasticsearch REST API小记
    ELK 安装配置
    ELK 安装配置
  • 原文地址:https://www.cnblogs.com/gqdw/p/2919270.html
Copyright © 2011-2022 走看看