Posgres: perf уменьшился, хотя сервер лучше:(

Я изменил свой VPS-хостинг в лучшую сторону и увидел значительное снижение производительности.

До: AMD 8 cores@2.8Ghz, 16 GB RAM, Ubuntu 14.04, Postgres 9.4, Pgbouncer 1.7, SSD 80Mb/s

После: Haswell 4 cores@2.4Ghz, 24 GB RAM, Ubuntu 16.04, Postgres 9.6, Pgbouncer 1.7.2, SSD 180Mb/s

Производительность мониторинга приложений (NewRelic) показывает 100% увеличение времени ответа SQL:

Файлы конфигурации одинаковы (я использую Ansible для автоматического развертывания). Я проверил сеть с iPerf Это та же скорость. Я проверяю оба VPS, я потерял 2,5 мс с новым сервером (не тот же центр обработки данных, мне кажется, все в порядке).

Что меня щекочет, так это то, что ресурсы сервера не исчерпаны:

И последнее, но не менее важное: почему так много свободных соединений? Какие настройки мне не хватает для улучшения производительности?

РЕДАКТИРОВАТЬ 1

До:

После:

РЕДАКТИРОВАТЬ 2

Перед тем как пинговать:

root@vps170028:~# ping vps166893.ovh.net
PING vps166893.ovh.net (149.202.33.76) 56(84) bytes of data.
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=1 ttl=63 time=0.490 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=2 ttl=63 time=0.504 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=3 ttl=63 time=0.541 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=4 ttl=63 time=0.520 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=5 ttl=63 time=0.501 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=6 ttl=63 time=1.12 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=7 ttl=63 time=0.538 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=8 ttl=63 time=0.723 ms
64 bytes from 76.ip-149-202-33.eu (149.202.33.76): icmp_seq=9 ttl=63 time=0.488 ms
^C
--- vps166893.ovh.net ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 7999ms
rtt min/avg/max/mdev = 0.488/0.603/1.126/0.198 ms

После, пинг:

root@vps170028:~# ping vps332984
PING vps332984.ovh.net (51.255.200.128) 56(84) bytes of data.
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=1 ttl=57 time=5.32 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=2 ttl=57 time=5.23 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=3 ttl=57 time=5.24 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=4 ttl=57 time=5.32 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=5 ttl=57 time=5.11 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=6 ttl=57 time=5.35 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=7 ttl=57 time=5.17 ms
64 bytes from 128.ip-51-255-200.eu (51.255.200.128): icmp_seq=8 ttl=57 time=5.46 ms
^C
--- vps332984.ovh.net ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7007ms
rtt min/avg/max/mdev = 5.110/5.278/5.462/0.132 ms

РЕДАКТИРОВАТЬ 3

Производительность запросов на выборку для таблицы1 до и после, одинаковая пропускная способность.

1 ответ

Решение

Я перенес обратно на свой начальный сервер, что исключает:

  1. снижение производительности из-за сырых характеристик сервера
  2. снижение производительности из-за задержек в сети

Проблема исключительно из-за одного из или взаимодействия между:

  • Ubuntu 16.04.1 LTS
  • Postgres 9.6.1
  • pgbouncer 1.7.2

Я, наверное, задам новый вопрос.

Другие вопросы по тегам