|
|
|
|
|
для: cheops
(12.02.2010 в 12:41)
| | спасибо... =) попробую использовать.. | |
|
|
|
|
|
|
|
для: а-я
(11.02.2010 в 12:49)
| | >вот об этом я и говорю, что новый процесс новое соединение, после процесс умирает, а
>соединение? По этой причине забивается маск. кол-во соединений с mysql?
Процесс не умрет, пока к нему имеются обращения, а уже тем более установленные соединения с mysql. Будет ждать, процессы, насколько я помню, должны обслужить определенное количество запросов, после чего они уничтожаются.
>при php-fpm нет новых процессов... там сколько прописал в конфигах столько и будет
>процессов с запуска. столько же и будет соединений с БД?
Если у вас один сервер и один сайт - можно не переживать, если несколько, лучше отказаться от постоянных соединений.
>допустим, у меня 10 процессов php-cgi, я могу спокойно писать в конфигах mysql о 10
>одноврем. соединений? или все же php каждый раз создает новое соединение? не "помня" о
>прошлых соединениях?
В случае CGI (не модуля), вероятно да, при условии, что у вас на сервере больше нет никаких других проектов (и MySQL не нужна для работы почты, DNS, FTP или чего-то ещё) - иначе они захватял все 10 соединений, а другие будут ждать. | |
|
|
|
|
|
|
|
для: cheops
(11.02.2010 в 12:23)
| | >это не означает, что MySQL-соединение из процесса в процесс кочует.
вот об этом я и говорю, что новый процесс новое соединение, после процесс умирает, а соединение? По этой причине забивается маск. кол-во соединений с mysql?
при php-fpm нет новых процессов... там сколько прописал в конфигах столько и будет процессов с запуска. столько же и будет соединений с БД?
т.е. можно не переживать за них?
(при условии, что скрипты используют только 1 соединение)
допустим, у меня 10 процессов php-cgi, я могу спокойно писать в конфигах mysql о 10 одноврем. соединений? или все же php каждый раз создает новое соединение? не "помня" о прошлых соединениях? | |
|
|
|
|
|
|
|
для: а-я
(11.02.2010 в 06:49)
| | >и какая опасность, что соединение открыл 1 потомок, а потом начал работать другой потомок?
Не очень понятно, а в чем опасность? Ну да в UNIX процессы создаются fork-ом, однако, это не означает, что MySQL-соединение из процесса в процесс кочует. Или имеется в виду что-то другое? | |
|
|
|
|
|
|
|
для: cheops
(11.02.2010 в 06:14)
| | если я не ошибаюсь, апач создает потомки и потомки уже выполняют работу. допустим, конфиг не более 20 потомков. значит будет не более 20 соединений?
а если стоит, допустим, php-fpm/ там кол-во процессов всегда постоянно. и они всегда существуют. так же от кол-во процессов?
и какая опасность, что соединение открыл 1 потомок, а потом начал работать другой потомок? | |
|
|
|
|
|
|
|
для: а-я
(10.02.2010 в 19:05)
| | Не превысит, если скрипт не пытается открыть больше двух соединений (с разными параметрами), но обычно хватает и нескольких десятков подвисших и потребляющих ресурсов процессов, чтобы существенно замедлить работу сервера (кроме того, количество соединений с MySQL также ограничено). | |
|
|
|
|
|
|
|
для: GeorgeIV
(10.02.2010 в 17:23)
| | если php не помнит, он по новой пытается создать соединение. или я ошибаюсь? и кол-во соединений не превысит кол-во процессов апача? | |
|
|
|
|
|
|
|
для: а-я
(10.02.2010 в 16:28)
| | php - это одно, а mysql - другое | |
|
|
|
|
|
|
|
для: tim313
(09.02.2010 в 21:22)
| | если я не ошибаюсь, PHP начинает работу с "чистого листа". т.е. запуская скрипт, php не помнит ни о каких прошлых соединений, открытых файлах.. выполнив все, он все стирает.. сделано чтоб не допускать утечки памяти.. | |
|
|
|
|
|
|
|
для: tim313
(10.02.2010 в 11:14)
| | Сервер будет работать быстрее точно. Если постонные соединения не выжрут всю оперативную память - разницы в скорости вы не заметите, если выжрут, то замедлится в том числе работа и вашего сайта. Проверенно многократно экспериментальным путем. Постоянные соединения в связке MySQL+PHP лучше не использовать. | |
|
|
|
|