Идём по плану. Создали таблицу на 100к записей. Для pgbench
- Тестим в 1/4/8/16/32 селектов.
- 1 - 1600 (-10) тпс - 1680
- 4 - 7300 (-100) тпс - 7300
- 8 - 17250 (-100) тпс - 17300
- 16 - 26500 (-300) тпс - 26700
- 32 - 28000 (-500) тпс - 28000
- Тестим в 1/4/8/16/32 селектов с новым коннектом
- 1 - 120 / 940 тпс - 120 / 945
- 4 - 133 / 11200 тпс - 133 / 11220
- 8 - 135 / 11200 тпс - 134 / 11300
- 16 - 133 / 10700 тпс - 133 / 11270
- 32 - 133 / 10500 тпс - 132 / 10660
- Тестим в 1/4/8/16/32 селектов prepared statements
- 1 - 1714 (-10) тпс - 1680
- 4 - 7400 (-100) тпс - 7600
- 8 - 18000 (-100) тпс - 18000
- 16 - 27500 (-300) тпс - 27500
- 32 - 28500 (-500) тпс - 27800
- Тестим в 1/4/8/16/32 селектов prepared statements с новым коннектом.
- Не работает
Выводы
На что можно обратить внимание?
- prepared statements - ни разу не медленные! Может тут решает то, что всё делается не из скрипта (задержки между вызовами минимальны)
- Новые коннекты создавать реально очень дорого - лишь 133 селекта в секунду на всех.
- Теперь подключим баунсер и ожидаем получить что в групп 1 и 3 результаты немного упадут, а в группе 2 - вырастут!
Комментариев нет:
Отправить комментарий