Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
netadmin.ws
Панель управления Регистрция свободна! Календарь Список пользователей Часто задаваемые вопросы Поиск по форуму Архив скриптов Главная   
Форум сетевых администраторов
Форум сетевых администраторов Форум сетевых администраторов » Программирование » PHP » mysql_connect vs. mysql_pconnect
Предыдущая тема     Следующая тема
Автор
Тема    Новая тема     Ответить на эту тему
Orliha
фраерок на подсосе
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Москва
Публикаций: 653
Статус: Orliha в оф-лайне
mysql_connect vs. mysql_pconnect [сообщение #40349]

что использовать? по одним источникам mysql_pconnect лучше, по другим наоборот....

Сайт около 15-20 тысяч хитов в день, нагрузка на mysql довольно такаи большая...

__________________
RTFM (Уважаемые! Читайте документацию!)

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 07-04-2003 14:47
Нажмите сюда для просмотра профайла Orliha Отправить Персональное сообщение Orliha Посетить домашнию страничку Orliha! Найти сообщения от Orliha Добавить Orliha в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
polo
Администратор
Средний рейтинг: 4.77 | Оценок: 106
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: May 2001
Место проживания:
Публикаций: 4642
Статус: polo в оф-лайне
[сообщение #40367]

imho, pcconect использовать, это считай что для каждого запроса новый конект будет создаватья при использовании connect. Но обрати внимание что если пхп установлен как cgi то это тебе ничего не даст.

__________________
Всегда есть решение.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 07-04-2003 20:20
Нажмите сюда для просмотра профайла polo Отправить Персональное сообщение polo Посетить домашнию страничку polo! Найти сообщения от polo Добавить polo в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Kfmook
Кфмук
Средний рейтинг: 4.56 | Оценок: 9
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Apr 2003
Место проживания: Якутск
Публикаций: 118
Статус: Kfmook в оф-лайне
[сообщение #40745]

из рассылки сайта Ð_НÐ_ для всех! http://virtual.bresttelecom.by/php/

quote:

Учтите, в PHP реализована функция отключения постоянных соединений, поэтому если у провайдера в конфигурации PHP установлена директива mysql.allow_persistent = Off, то соединения вызываемые функцией mysql_pconnect() будут обрабатываться как mysql_connect().
Очень часто встречаются советы не использовать постоянные соединения с БД. Ð_то связано в первую очередь с тем, что многопоточные веб-сервера, к которым относится и Apache, не могут разделить со своими потомками соединение с БД. Таким образом если следующий запрос приходит на другого потомка, то он создает новое постоянное соединение, что со временем приводит к появлению большого количества незакрытых соединений с БД и переполнению допустимого лимита max_connections в MySQL.
Возможно два решения этой проблемы: первое описано выше заключается в запрете использования постоянных соединений, второе - использовать малое значение времени жизни постоянного соединения в директиве wait_timeout конфигурации MySQL. По умолчанию оно составляет 28800 сек. (8 часов), по истечению которых после отсутствия активности соединения будет закрыто.

Помимо всего этого существуют еще некоторые проблемы постоянных соединений с транзакциями и блокировками таблиц. Так, если таблица блокируется запросом на транзакцию или LOCK TABLE и при этом скрипт заканчивает свое выполнение до завершения транзакции или выполнения разблокировки таблицы UNLOCK TABLE соответственно, то вторичная попытка доступа к таблице через это же постоянное соединение будет отклонена. При использовании непостоянного соединения с БД, при завершении скрипта соединение закрывается автоматически и при этом снимает блокировку со всех таблиц и завершает все транзакции. Ð_ешением этой проблемы есть регистрации функции register_shutdown_function() которая бы по завершению скрипта снимала блокировку с таблиц и завершала транзакции.

Так что можете использовать, а можете и не использовать, все зависит от поставленных задач.



Исходный текст статьи и еще много полезных материалов на сайте http://www.id.com.ua/notes/articles/tips_tricks_01/

__________________
http://simpsons.ykt.ru - русский портал о Симпсонах

Сообщение было отредактировано Kfmook 12-04-2003 в 05:01

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 12-04-2003 04:57
Нажмите сюда для просмотра профайла Kfmook Отправить Персональное сообщение Kfmook Посетить домашнию страничку Kfmook! Найти сообщения от Kfmook Добавить Kfmook в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Stek
Участник+
Средний рейтинг: 1.67 | Оценок: 3
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Nov 2001
Место проживания:
Публикаций: 144
Статус: Stek в оф-лайне
[сообщение #40821]

pconnect гадость редкостная. Я не видел еще ни одного проекта, гда использование персистента приводило к повышению быстродействия. А вот минусов - хоть отбавляй.

__________________
**censored**
Ð_усский ресурс о PHP

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 13-04-2003 12:41
Нажмите сюда для просмотра профайла Stek Отправить Персональное сообщение Stek Посетить домашнию страничку Stek! Найти сообщения от Stek Добавить Stek в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
polo
Администратор
Средний рейтинг: 4.77 | Оценок: 106
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: May 2001
Место проживания:
Публикаций: 4642
Статус: polo в оф-лайне
[сообщение #40823]

Если сервер правильно настроен то это дает результаты.

__________________
Всегда есть решение.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 13-04-2003 12:50
Нажмите сюда для просмотра профайла polo Отправить Персональное сообщение polo Посетить домашнию страничку polo! Найти сообщения от polo Добавить polo в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Orliha
фраерок на подсосе
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Москва
Публикаций: 653
Статус: Orliha в оф-лайне
[сообщение #40900]

Stek, у меня в результате pconnect заметно увеличение скорости даже "на глазок". побольше соединений поставил в mysql, то-се...

__________________
RTFM (Уважаемые! Читайте документацию!)

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 14-04-2003 09:38
Нажмите сюда для просмотра профайла Orliha Отправить Персональное сообщение Orliha Посетить домашнию страничку Orliha! Найти сообщения от Orliha Добавить Orliha в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Stek
Участник+
Средний рейтинг: 1.67 | Оценок: 3
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Nov 2001
Место проживания:
Публикаций: 144
Статус: Stek в оф-лайне
[сообщение #41026]

quote:
Если сервер правильно настроен то это дает результаты.

Если мы говорим про php - то не дает. По крайней мере в НАГÐ_УЖЕННОМ сервере pconnect является именно тормозящей частью.

quote:
у меня в результате pconnect заметно увеличение скорости даже "на глазок

Странно, у меня на тестах простой коннекшен открывается в среднем 400 раз за секунду. Персистент до 600. Но вот в реале, база все равно не спевает обработать столько запросов, а незакрытые коннекшены оставляют дополнительно за собой висеть как mysql так и apache процессы.
При условиях, что на сервере несколько проектов используют персистентов, колличество "реиспользованных, но занятых" ресурсов начинает пропрорционально увеличиватся.
В результате можно иметь сотню апачей, столько же mysql тредов, и всего два используемых на текущий момент соединения.

__________________
**censored**
Ð_усский ресурс о PHP

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 15-04-2003 19:10
Нажмите сюда для просмотра профайла Stek Отправить Персональное сообщение Stek Посетить домашнию страничку Stek! Найти сообщения от Stek Добавить Stek в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Stdin
Участник+
Средний рейтинг: 4.6 | Оценок: 5
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Питер
Публикаций: 69
Статус: Stdin в оф-лайне
[сообщение #41305]

Согласен со Stek. pconnect работает в конечном итоге медленнее чем просто connect

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 18-04-2003 15:28
Нажмите сюда для просмотра профайла Stdin Отправить Персональное сообщение Stdin Посетить домашнию страничку Stdin! Найти сообщения от Stdin Добавить Stdin в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Nicky
Участник+
Средний рейтинг: 5 | Оценок: 3
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Jul 2001
Место проживания:
Публикаций: 63
Статус: Nicky в оф-лайне
[сообщение #73325]

pconnect выигрывает по скорости на правильно настроенном сервере, как верно подметил polo. Дело в том, что при постоянных коннектах MySQL при каждом обращении не делает переинициализации прав доступа ко всем таблицам и т.п. А то что сотня апачей - это фигня. У меня их 250 и чего? Гораздо больше скорости можно выиграть отключив к примеру AllowOverride в Apache. И по другому подобно провести "тюнинг" Апача.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 16-12-2004 06:57
Нажмите сюда для просмотра профайла Nicky Отправить Персональное сообщение Nicky Посетить домашнию страничку Nicky! Найти сообщения от Nicky Добавить Nicky в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Bochkarev_D.S.
Модератор
Средний рейтинг: 4.53 | Оценок: 17
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2001
Место проживания: Альметьевск, Татарстан
Публикаций: 480
Статус: Bochkarev_D.S. в оф-лайне
[сообщение #73330]

pconnect работает быстрее чем connect при условии большого количества запросов и настроенном mySQL. Последний месяц был занят экспериментами с folk() и linuxthread в среде mySQL4х на FreeBSD5х с vb3 и постоянной нагрузкой 100-200 человек. На скомпилированном по умолчанию mySQL разница очень существенна, межу p/connect, можно сразу повесить базу даже, а вот на linuxthread на "глаз" плохо видно, т.к. производительность кратно возрастает нагрузка нужна больше значительно. Всем советую:
1. Настраивать mySQL
2. Компилировать с линухтредами в среде FreeBSD
3. Юзать pconnect

Сообщение было отредактировано Bochkarev_D.S. 16-12-2004 в 11:02

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 16-12-2004 11:00
Нажмите сюда для просмотра профайла Bochkarev_D.S. Отправить Персональное сообщение Bochkarev_D.S. Найти сообщения от Bochkarev_D.S. Добавить Bochkarev_D.S. в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Orliha
фраерок на подсосе
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Москва
Публикаций: 653
Статус: Orliha в оф-лайне
[сообщение #73391]

quote:
1. Настраивать mySQL

в этом и загвоздка обычно... нет более детальной информации - что настраивать, какие значение и т.п....

__________________
RTFM (Уважаемые! Читайте документацию!)

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-12-2004 10:16
Нажмите сюда для просмотра профайла Orliha Отправить Персональное сообщение Orliha Посетить домашнию страничку Orliha! Найти сообщения от Orliha Добавить Orliha в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Bochkarev_D.S.
Модератор
Средний рейтинг: 4.53 | Оценок: 17
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2001
Место проживания: Альметьевск, Татарстан
Публикаций: 480
Статус: Bochkarev_D.S. в оф-лайне
[сообщение #73402]

Orliha
Как же так?
В дистрибутиве есть примеры для настроек серверов нескольких типов - от мало до велика. На сайте разработчиков есть описание каждой переменной. В любом случае, помогут, хоть я например. Присылай свою конфигурацию железа и софта, и выкладывай my.cnf

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-12-2004 15:07
Нажмите сюда для просмотра профайла Bochkarev_D.S. Отправить Персональное сообщение Bochkarev_D.S. Найти сообщения от Bochkarev_D.S. Добавить Bochkarev_D.S. в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Orliha
фраерок на подсосе
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Москва
Публикаций: 653
Статус: Orliha в оф-лайне
[сообщение #73468]

P4 - 2.0Ghz - 1 GB RAM
порядка 10к хостов в день, порядка 60к хитов... очень активно юзается mysql...

что под софтом подразумевается??? софт самописный )) пхп+mysql

my.cnf - из дистрибутива (который расчитанн на самые загруженные сервера)...

__________________
RTFM (Уважаемые! Читайте документацию!)

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 23-12-2004 12:28
Нажмите сюда для просмотра профайла Orliha Отправить Персональное сообщение Orliha Посетить домашнию страничку Orliha! Найти сообщения от Orliha Добавить Orliha в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Bochkarev_D.S.
Модератор
Средний рейтинг: 4.53 | Оценок: 17
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2001
Место проживания: Альметьевск, Татарстан
Публикаций: 480
Статус: Bochkarev_D.S. в оф-лайне
[сообщение #73469]

uname -a?
с какими ключами собран mysqld?

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 23-12-2004 12:38
Нажмите сюда для просмотра профайла Bochkarev_D.S. Отправить Персональное сообщение Bochkarev_D.S. Найти сообщения от Bochkarev_D.S. Добавить Bochkarev_D.S. в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Orliha
фраерок на подсосе
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Aug 2002
Место проживания: Москва
Публикаций: 653
Статус: Orliha в оф-лайне
[сообщение #73908]

переменные:
back log 50 50
basedir / /
binlog cache size 32768 32768
bulk insert buffer size 8388608 8388608
character set cp1251 cp1251
character sets latin1 big5 czech euc_kr gb2312 gbk latin1_de sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5 latin1 big5 czech euc_kr gb2312 gbk latin1_de sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5
concurrent insert ON ON
connect timeout 5 5
convert character set
datadir /var/lib/mysql/ /var/lib/mysql/
default week format 0 0
delay key write ON ON
delayed insert limit 100 100
delayed insert timeout 300 300
delayed queue size 1000 1000
flush OFF OFF
flush time 0 0
ft boolean syntax + -><()~*:""&| + -><()~*:""&|
ft min word len 4 4
ft max word len 254 254
ft max word len for sort 20 20
ft stopword file (built-in) (built-in)
have bdb NO NO
have crypt YES YES
have innodb YES YES
have isam YES YES
have raid NO NO
have symlink YES YES
have openssl NO NO
have query cache YES YES
init file
innodb additional mem pool size 1048576 1048576
innodb buffer pool size 8388608 8388608
innodb data file path ibdata1:10M:autoextend ibdata1:10M:autoextend
innodb data home dir
innodb file io threads 4 4
innodb force recovery 0 0
innodb thread concurrency 8 8
innodb flush log at trx commit 1 1
innodb fast shutdown ON ON
innodb flush method
innodb lock wait timeout 50 50
innodb log arch dir ./ ./
innodb log archive OFF OFF
innodb log buffer size 1048576 1048576
innodb log file size 5242880 5242880
innodb log files in group 2 2
innodb log group home dir ./ ./
innodb mirrored log groups 1 1
innodb max dirty pages pct 90 90
innodb max purge lag 0 0
innodb table locks ON ON
interactive timeout 28800 28800
join buffer size 131072 131072
key buffer size 402653184 402653184
language /usr/share/mysql/english/ /usr/share/mysql/english/
large files support ON ON
license GPL GPL
local infile ON ON
locked in memory OFF OFF
log OFF OFF
log update OFF OFF
log bin ON ON
log slave updates OFF OFF
log slow queries OFF OFF
log warnings 1 1
long query time 10 10
low priority updates OFF OFF
lower case file system OFF OFF
lower case table names 0 0
max allowed packet 1047552 1047552
max binlog cache size 4294967295 4294967295
max binlog size 1073741824 1073741824
max connections 100 100
max connect errors 10 10
max delayed threads 20 20
max insert delayed threads 20 20
max heap table size 16777216 16777216
max join size 4294967295 4294967295
max relay log size 0 0
max seeks for key 4294967295 4294967295
max sort length 1024 1024
max user connections 0 0
max tmp tables 32 32
max write lock count 4294967295 4294967295
myisam max extra sort file size 268435456 268435456
myisam max sort file size 2147483647 2147483647
myisam repair threads 1 1
myisam recover options OFF OFF
myisam sort buffer size 67108864 67108864
net buffer length 16384 16384
net read timeout 30 30
net retry count 10 10
net write timeout 60 60
new OFF OFF
open files limit 10000 10000
pid file /var/lib/mysql/dfhjdhjdfgh.ru.pid /var/lib/mysql/dghfhdhjhjsdfgh.ru.pid
log error
port 3306 3306
protocol version 10 10
query alloc block size 8192 8192
query cache limit 1048576 1048576
query cache size 33554432 33554432
query cache type ON ON
query prealloc size 8192 8192
range alloc block size 2048 2048
read buffer size 2093056 2093056
read only OFF OFF
read rnd buffer size 262144 262144
rpl recovery rank 0 0
server id 1 1
slave net timeout 3600 3600
skip external locking ON ON
skip networking OFF OFF
skip show database OFF OFF
slow launch time 2 2
socket /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock
sort buffer size 2097144 2097144
sql mode 0 0
table cache 512 512
table type MYISAM MYISAM
thread cache size 8 8
thread stack 126976 126976
tx isolation REPEATABLE-READ REPEATABLE-READ
timezone MSK MSK
tmp table size 33554432 33554432
tmpdir /tmp/ /tmp/
transaction alloc block size 8192 8192
transaction prealloc size 4096 4096
version 4.0.22-standard-log 4.0.22-standard-log
version comment Official MySQL RPM Official MySQL RPM
version compile os pc-linux pc-linux
wait timeout 28800 28800

__________________
RTFM (Уважаемые! Читайте документацию!)

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 13-01-2005 11:08
Нажмите сюда для просмотра профайла Orliha Отправить Персональное сообщение Orliha Посетить домашнию страничку Orliha! Найти сообщения от Orliha Добавить Orliha в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя



Формат времени GMT. Текущее время 03:58.
Новая тема   Ответить на эту тему [ Версия для печати Печать | Отправить эту страницу другу/знакомому! Отправить | Получать уведомления об обновлении этой темы Подписка ] Предыдущая тема     Следующая тема
Навигация по форуму:
Оценка темы:

Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения.
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
 

Page generated in 0.01413107 seconds (59.97% PHP - 40.03% MySQL) with 26 queries.


  Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
©NetAdmin.ws, 2001-2026.
Powered by: vBulletin
Copyright ©2000, 2001, Jelsoft Enterprises Limited.