PhpBB3 - требуется помощь опытных юзеров.

Таггу x_x
На сайте с 31.10.2005
Offline
425
482

Регулярно возникает ошибка Too Many Connections, и это при 15-20 одновременно сидящих на форуме человеках. Форум генерит более 60 запросов к базе и хостинг его отрубает за флуд. Все что можно было отрубить (в разумных пределах) я отрубил. Никаких модов не используется, база маленькая, 3000+ сообщений.

Собственно вопрос кто виноват и что делать? В принципе хостер какбэ намекает, что мог бы увеличить лимит одновременных коннектов к базе, но что-то мне слабо верится. Ну или хотя бы я должен точно знать, при каком лимите форум сможет более менее нормально жить. 100? 200? Бесконечность? В общем, кто как это лечит/лечил или всем безразлично? :D

Менять хостинг не буду. Движок форума тоже. Тариф максимальный из стандартных для виртуала.

☠️☠️☠️
[Удален]
#1

Tarry, случаем "постоянные соединения" с бд не используются? mysql_pconnect функция другими словами, насколько я "понимаю" что это такое, то это может хорошо работать когда пхп стоит в виде ISAPI модуля, либо (возможно) в виде fastcgi сервера, поддерживающего такие фишки, а если оно стоит в виде CGI, то да, это может вызвать большое колво открытых соединенеий

bearman добавил 26.06.2010 в 15:13

а на шареде обычно стоит либо cgi, либо fastcgi, а какой у вас? :)

Таггу x_x
На сайте с 31.10.2005
Offline
425
#2
bearman:
случаем "постоянные соединения" с бд не используются?

$this->db_connect_id = ($this->persistency) ? @mysql_pconnect($this->server, $this->user, $sqlpassword) : @mysql_connect($this->server, $this->user, $sqlpassword, $new_link);

Судя по всему используется. :)

[Удален]
#3
Tarry:
Судя по всему используется.

судя по всему - гдето настраиваются ;)

отключите их и будет счастье, хостинг просто под них не расположен видимо

Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (mysql_close() will not close links established by mysql_pconnect()).

ну и вот важная часть документации -

Note: Note, that these kind of links only work if you are using a module version of PHP. See the Persistent Database Connections section for more information.

ну и ваша проблема в догонку

Using persistent connections can require a bit of tuning of your Apache and MySQL configurations to ensure that you do not exceed the number of connections allowed by MySQL.

создатели кмсок никак не объясняют зачем такие на самом деле тонкие настройки есть, они могут быть критическими ;)

а вот проверить "работает пхп в виде isapi модуля" - дело 5 строчек, по хорошему надо отключать эту "фичу" если не в виде модуля и все :)

чуток пофилософствовал короче) отключите постоянные соединения и проблема исчезнет

bearman добавил 26.06.2010 в 20:10

ой как много написал на такой маленький вопрос))

Таггу x_x
На сайте с 31.10.2005
Offline
425
#4
bearman:
отключите их и будет счастье, хостинг просто под них не расположен видимо

Уже отрубил, тестирую. А много написал это хорошо - умного человека не грех послушать :)

Спасибо!

[Удален]
#5

Tarry, не за что)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий