|
|
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
Добрый день, Хотел бы поделится своими сомнениями со знающими людьми. В своих проектах для подключения и обработки информации в базах данныx я использую объектно ориентированный подход. Т.е. у меня есть некий класс php_mysql_in у которого есть стандартные методы такие как: open(dbname, username, password, <etc>) - открыть соединение close() - закрыть соединение query(sql_query) - запустить запрос fetchAssoc() - извлечение результатов запроса ну и соответственно есть и конструктор/деструктор класса :). Насколько оптимально использовать такой класс? Например если я использую сразу несколько экземпляров данного класса на одной странице получаю следующее: создать экземпляр класса открыть бд запрос печать результата на веб странице закрыть бд уничтожить экземпляр класса ..... и так несколько раз Оптимальный ли это подход? Может быть кто то знает другое более оптимальное решение ? Заранее вам благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 13:46 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
http://rsdn.ru/article/philosophy/Optimization.xml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 13:53 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
не оптимален, сделаешь так 10 раз коннект дисконнект на каждой странице и сервак у хостера завалится... делай 1 коннект, потом выполняй со своим классом все что угодно, а в конце скрипта дисконнект, или вообще дисконнект не делай, он и так отвалится, а вот если нужно к 2-м разным базам, тогда естественно 2 коннекта, и передаешь link на конкретное соединение в каждом запросе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 13:54 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
А зачем вообще создавать несколько экземпляров класса, когда можно пользоваться одним? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 13:54 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
Экземпляр класса php_mysql_in следует создавать в начале работы скрипта уничтожать только непосредственно перед возвратом результата клиенту. ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 16:58 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
и используй mysql_pconnect ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:01 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
2 Viktor Bartel Если вы сможете правильно ответить на вопрос господина звездочки, то вы поймете, что недопонимаете ООП. ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:17 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
maXmoи используй mysql_pconnect Зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:18 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
там написано, при этом будет меньше актов коннекта к базе. В идеале - один (навсегда). ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:42 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
maXmoтам написано, при этом будет меньше актов коннекта к базе. В идеале - один (навсегда). ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm Не так, один - это если один клиент будет в 1 момент времени и не больше. И они не постоянно висят, просто ждут некоторое время, если будут желающие поработать - подключаться, не будет таких - умрет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 18:42 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
maXmoтам написано, при этом будет меньше актов коннекта к базе. В идеале - один (навсегда).А вы не читали там же , почему их лучше никогда не использовать? Ну так почитайте на досуге. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 21:09 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
*А зачем вообще создавать несколько экземпляров класса, когда можно пользоваться одним? Хорошо я с вами согласен, но как например сделать следующее: 1. Я создаю экземпляр класса php_mysql_in при вызове модуля module1.php 2. Класс открывает подключение к базе данных. Я использую модуль function.php что бы "хранить" функции проекта. Допустим там имеется функция prntTable1() как передать ей ссылку на экземпляр вышесозданного класса php_mysql_in что бы не создавать новый экзепляр класса внутри даной функции, ведь насколько я знаю понятие pointer в php сильно искажено? Как это сделать в php. Те структура проекта примерно такова: module1.php | |call function | function.php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 22:51 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
Viktor BartelДопустим там имеется функция prntTable1() как передать ей ссылку на экземпляр вышесозданного класса php_mysql_in что бы не создавать новый экзепляр класса внутри даной функции, ведь насколько я знаю понятие pointer в php сильно искажено? Как это сделать в php.Вот видите, как оказывается на самом деле должен был звучать ваш вопрос :) Читайте раздел Ссылки для начала. Не поймёте - спросите, что не поняли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2005, 10:42 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
Да я понял, но я не знал как правильно сформулировать вопрос, и именно вы, и именно в ходе этой дискуссии мне это удалось. Спасибо большое я сейчас посмотрю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2005, 11:12 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
*А вы не читали там же , почему их лучше никогда не использовать? Ну так почитайте на досуге.креатифф не про то, почему их лучше никогда не использовать, а про то, как это работает и про возможные косяки. Не более. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 16:57 |
|
||
|
(PHP) Оптимальный подход
|
|||
|---|---|---|---|
|
#18+
maXmo *А вы не читали там же , почему их лучше никогда не использовать? Ну так почитайте на досуге.креатифф не про то, почему их лучше никогда не использовать, а про то, как это работает и про возможные косяки. Не более. Более того, допустим в Oracle создание коннекции - трудоемкая задача, создается серверный процесс с памятью PGA. Для web-приложений варианта два - pconnect или режим Shared Server ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 09:18 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=33373643&tid=1477235]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
173ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 462ms |

| 0 / 0 |
