Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » PHP+MYSQL

Ответить
Настройки темы
PHP+MYSQL
pauluss


Сообщения: n/a

Профиль | Цитировать


Скажите, надо ли закрывать соединение после каждой страницы? Поясняю: Допустим есть страница, которая отображает че-то из БД, на ней кнопочки всякие, по которым функции работы с БД вызываются. Вопрос, надо ли закрывать соединение в конце работы скрипта, если потом скорее всего (но не 100%) последует вызов другой страницы, которая тоже работает с той же БД.

Отправлено: 09:39, 08-07-2004

 
mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


Цитата:
если потом скорее всего (но не 100%) последует вызов другой страницы, которая тоже работает с той же БД.
Про HTTP-протокол помним? каждый вызов (даже той же самой страницы) с точки зрения сервера - это новый вызов. Иными словами - сервер отдал страницу и забыл о ней и о пользователе навсегда.
А вот незакрытое соединение с базой данных скорее всего закроется серверами, но я бы эксперементировать не стала, поскольку холостые висящие коннекты ни к чему хорошему не приведут, а к замедлению работы - точно.  

Отправлено: 10:00, 08-07-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Для постоянного конекта к базе данных можно использовать данную функцию-mysql_pconnect, то есть с этой функцией не надо вызывать на каждой странице соединение заново (так как, как уже сказала mar, скорей всего соединение закроется при полной загрузки страницы-хотя с другой стороны   чего только не бывает )
Я к тому веду, что надо самому полностью управлять этими соединениями, не надо полагатся на сервер, если нужно постоянное соединение, то используется функция, которую я дал, а лучше всё таки каждому скрипту делеть свой mysql_connect и mysql_close, писать не много, но зато всё будет под моим управлением, а к чему могут привести висящие коннекты один умный человек до меня уже сказал

-------
Fortes fortuna adiuvat


Отправлено: 13:22, 08-07-2004 | #3


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


в документации к Апачь сказано что сервер может и не закрыть соединение и вызывать функцию закрытия соединения не обязательно!

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 18:21, 08-07-2004 | #4


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Vlad Drakula
Не понял
Цитата:
в документации к Апачь сказано что сервер может и не закрыть соединение
Так в этом случае надо закрывать самому соединение, чтобы не было "висяков"
а ты пишешь
Цитата:
вызывать функцию закрытия соединения не обязательно!

-------
Fortes fortuna adiuvat


Отправлено: 23:15, 08-07-2004 | #5


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


vadimiron
если сайт постоянно устнавливает одни и теже соединения то апачь может из не закрывать и оставлять после окончания скрипта, это позволяет ускорить работу т.к. не нужно постоянно открывать соединение!

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 23:55, 08-07-2004 | #6


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


так mar говорила же, что висящие соединения не есть хорошо

Я считаю, что надо полностью самому управлять данным процессом, и не доверять в этом плане апачу, тем более новый вызов mysql_connect не занимает много времени, если вызов производится с теми же параметрами, что и уже висящий коннект, то запрос не обрабатывается и возвращается идентификатор раннее открытого коннекта, то есть заново не будет производится соединение, поэтому и времени будет не много тратися, а полагаться только на апач, что он там решил не закрывать коннект, так как он часто вызывается, я бы не советовал
В мануале ПХП чётко стоит
Цитата:
Ссылка на сервер будет закрыта сразу по окончании работы скрипта, если не будет закрыта до этого явным вызовом mysql_close().
Так что я исхожу из этого

-------
Fortes fortuna adiuvat


Отправлено: 22:46, 09-07-2004 | #7



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » PHP+MYSQL

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
php + mysql Аlchemist Программирование в *nix 10 04-09-2008 17:49
[решено] Apache 2.2.8 + Php 5.2.6 + MySQL 5.0.51b (win) - не работает php v0f41k Вебмастеру 4 11-05-2008 22:08
PHP and MySql Andrey V2003 Вебмастеру 2 10-10-2003 14:55
PHP+MySQL GhostBuster Программирование и базы данных 7 21-08-2003 21:07
php и mysql ZDemon Программное обеспечение Linux и FreeBSD 7 08-02-2003 03:33




 
Переход