Добрый день,

Очень нужна помощь уважаемого сообщества.

Есть VPS (у таймвеба, если что), на ней modx rev 2.6 (мультидоменка, размноженные контексты для каждого домена, доменов всего 30), трафика буквально 100 в день сумарно.
Работает на связке ubuntu+vestacp+nginx+apach2+php7.

раньше эти домены работали на самописном простом движке, с разным контентом, но одинаковым шаблоном. Решили перенести это на modx, чтобы управлять контентом из одного мест. Сказано, сделано, но хостер тут же стал ругаться на превышение нагрузки.
Пришлось у хостера заказать VPS и переехать на него. Сайты перенес сам хостер.

Но после переезда выяснилось, что более менее эти сайты работают на 4CPUx4GB, на более низких конфигурациях сервер очень быстро ложится (httpd и mysql выжирали память вчистую). Тут тоже выжирают, но не так часто.

Погрешив на кривой хостинг, переехали на соседний — там аналогичная ситуация.

В логе я вижу такую ошибку:
[2018-07-19 05:36:31] (ERROR @ /home/admin/web/mysite.ru/public_html/core/xpdo/om/xpdoobject.class.php : 1452) Error HY000 executing statement:
INSERT INTO `modx_session` (`id`, `access`, `data`) VALUES ('ctcgq3b3ip3713p9fbmfgra8g4', 1531978591, 'modx.user.0.resourceGroups|a:1:{s:4:\"perm\";a:0:{}}modx.user.0.attributes|a:1:{s:4:\"perm\";a:5:{s:16:\"modAccessContext\";a:32:{s:10:\"arhangelsk\";a:1:{i:0;a:3:{s:9:\"principal\";i:0;s:9:\"authority\";s:1:\"0\";s:6:\"policy\";a:1:{s:4:\"load\";b:1;}}}s:8:\"astrahan\";a:1:{i:0;a:3:{s:9:\"principal\";i:0;s:9:\"authority\";s:1:\"0\";s:6:\"policy\";a:1:{s:4:\"load\";b:1;}}}s:4:\"azer\";a:1:{i:0;a:3:{s:9:\"principal\";i:0;s:9:\"authority\";s:1:\"0\";s:6:\"policy\";a:1:{s:4:\"load\";b:1;}}}s:8:\"belgorod\";a:1:{i:0;a:3:{s:9:\"principal\";i:0;s:9:\"authority\";s:1:\"0\";s:6:\"policy\";a:1:{s:4:\"load\";b:1;}}}s:7:\"bryansk\";a:1:{i:0;a:3:{s:9:\"principal\";i:0;s:9:\"authority\";s:1:\"0\";s:6:\"policy\";a:1:{s:4:\"load\";b:1;}}}s:11:\"chelyabinsk\";
....skip....
\"modAccessCategory\";a:0:{}s:28:\"sources.modAccessMediaSource\";a:0:{}s:18:\"modAccessNamespace\";a:0:{}}}modx.user.contextTokens|a:0:{}')
Array
(
    [0] => HY000
    [1] => 2014
    [2] => Cannot execute queries while other unbuffered queries are active.  Consider using PDOStatement::fetchAll().  Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.
)

[2018-07-19 05:36:31] (ERROR @ Unknown0) PHP warning: Unknown: Failed to write session data (user). Please verify that the current setting of session.save_path is correct (/home/admin/web/mysite.ru/public_html/tmp)


session.save_path я куда только не переназначал, и какие права не давал — все прекрасно работает (по крайней мере скрипт
session_start();
$_SESSION['x'] = 4234;
session_write_close();
в указанной папочке файл сессии создает и нужное содержимое туда кладет, но ошибка в логе все равно не пропадает.

Из сниппетов используется только minifix, pdomenu, pdoresources, recaptchav2(стоит, не используется), phpthumbon (стоит не используется).

Соответственно, такие вопросы:
1 — откель такая нагрузка? не могут 100 уников в день ее создавать.
2 — что не так с путем файлов сессий? в сторонних скриптах работает.
3 — таблица сессий пухнет на глазах, почему?
4 — mysql частеньго выжирает все 4гига оперативки и становится mysql gone away.

Куда копать? Очень надеюсь на вашу помощь.