Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Help: производительность InnoDB (Dinky) 27/10/2004 - 06:13:02
      Re: Help: производительность InnoDB (walrus) 27/10/2004 - 13:45:31
      Re: Help: производительность InnoDB (Dinky) 27/10/2004 - 16:22:28
      Re: Help: производительность InnoDB (walrus) 27/10/2004 - 18:45:00
      Re: Help: производительность InnoDB (Dinky) 27/10/2004 - 19:33:58
      Re: Во-блин, во-блин, во-блин,... (Dinky) 27/10/2004 - 20:16:37
      Re: А я не понял ... (Marat_L) 28/10/2004 - 08:23:22
      Re: А я не понял ... (Dinky) 28/10/2004 - 20:59:26



From: Dinky - 27/10/2004 - 06:13:02
Subject:Help: производительность InnoDB
-----------------
загибаются у наших сессии, решил им помочь, перенести на innodb, потестировал - что-то не круто, имхо, или я что-то не понимаю :) ok, по-порядку:
----- таблица ------------------
CREATE TABLE `session` (
`session_id` varchar(32) NOT NULL default '',
`expires` int(11) default NULL,
`data` mediumtext,
PRIMARY KEY (`session_id`),
KEY `expires` (`expires`)
) TYPE=InnoDB
--------------------------------
сгенерил 10K записей, размер данных ~200MB
------ /etc/my.cnf -------------
innodb_flush_log_at_trx_commit=0
#innodb_lock_wait_timeout=50
innodb_buffer_pool_size=500M
innodb_additional_mem_pool_size=20M
innodb_log_file_size=125M
innodb_log_buffer_size=8M
innodb_data_file_path = ibdata1:250M:autoextend
--------------------------------
сделал простой скриптик
---------
$rs = fopen("/dev/random","r") or die("Can't open /dev/random :(\n");
echo time()." updating sessions...\n"; flush();
for($i=0;$i<100;$i++) {
if($i%10 == 0) echo " ".$i." ".time()."\n"; flush();
$r_id = rand(1,10000);
$res = mysql_db_query("session_innodb","SELECT data FROM session WHERE session_id=".$r_id);
mysql_free_result($res);
$query = "UPDATE session SET data='".mysql_escape_string(fread($rs,8096*rand(1,4))).
"' WHERE session_id=".$r_id;
mysql_db_query("session_innodb",$query) or die(mysql_error());
}
echo time()." done\n";
fclose($rs);
---------
запустил, скорость - 2-3 секунды на 10 операций select/update
запустил 8 одновременно, скорость - 25 секунд на 10 операций select/update, т.е. апдейты выполняются по 2 секунды, а некоторые и по 3, что мягко говоря не удовлетворяет требованию "<=1sec"
Вопросы:
- что может тормозить (где смотреть) ?
- что можно подкрутить (аналогично) ?

Спасибо
--
Dmitry



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
18112



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |