Хранение классов в БД

netklon

Новичок
Хранение классов в БД

Не так давно тут была тема насчет того, что хранение классов в файлах сильно нагружает систему.
А как насчет хранения классов в БД? Скажем написать класс котрый будет подгружать необходимый класс из БД. Конечно это нагрузит базу данных.
Но если код предварительно оптимизироват каким нить энкодером, да и другими способами снизить нагрузку на БД.
В общем хотелось бы услышать Ваши мысли по этому поводу.
 

IntenT

SkyDiver
netklon
Это наверное новое слово в БД - теперь можно писать Объестно-ориентированные запросы
:lol:

А где, если не секрет, такая траффа растет??
 

Yurik

/dev/null
м-даа, оптимизатор вы наш. Сравните
eval() против include() и увидите кто кого нагружает. Да и вобще, писать клас для подгрузки класса - уже противоречие..
 

anight

Новичок
если автор вопроса ставит себе цель "оптимизировать что либо, неизвестно для чего" то не надо спрашивать КАК это делается
 

Tonn

Новичок
Офтопик: предлагаю не тратить время вообще на создание классов.Например, для создания класса многомерной фигуры нужно просто создать класс tochka, в конструкторе которого будет создание более продвинутого класса.
 

netklon

Новичок
anight

Никто и не спрашивает КАК это делается. КАК это сделать додумаю и сам (слава чертям руки растут от плеч).
Спрашиваю, потому что не уверен, даст ли это выгоду и удобно ли это будет. Быть может кто-то уже пробовал такое сделать.
 

tony2001

TeaM PHPClub
netklon
>КАК это сделать додумаю и сам (слава чертям руки растут от плеч)
возьми да проверь, если ты прикинуть без реализации не можешь.
 

fixxxer

К.О.
Партнер клуба
Делается то это просто - [m]serialize[/m].
Но тормозить будет.
 

Crazy

Developer
fixxxer, я до сих пор полагал, что serialize работает не с классами и с объектами. И совершенно не представляю, как ее применить в данном случае...
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Re: Хранение классов в БД

Автор оригинала: netklon
Не так давно тут была тема насчет того, что хранение классов в файлах сильно нагружает систему.
А как насчет хранения классов в БД?
а мысль о том, что БД хранит данные в файлах, в больную голову не пришла?
 

Crazy

Developer
Sad Spirit, мне пришла в голову охренительно извращенная идея: разбивать исходник класса по нескольким записям (например, разнести методы по записям) и использовать where с разными условиями для сборки разных вариантов. Думаю, за часок можно придумать и применения этому извращению. :)

Вот только вряд ли это повысит скорость. :)
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: Crazy
Sad Spirit, мне пришла в голову охренительно извращенная идея: разбивать исходник класса по нескольким записям (например, разнести методы по записям) и использовать where с разными условиями для сборки разных вариантов. Думаю, за часок можно придумать и применения этому извращению. :)
Думал 15 минут, пока безрезультатно.

Серьёзно, если имеется набор готовых методов, что мы выиграем от создания их разнообразных комбинаций? %]

Вот только вряд ли это повысит скорость. :)
Можно было бы и не уточнять... :D
 

Crazy

Developer
Автор оригинала: Sad Spirit
Серьёзно, если имеется набор готовых методов, что мы выиграем от создания их разнообразных комбинаций? %]
Мозговой штурм:

1. Разные реализации методов. Например, одна версия работает с ftp, а другая -- с webdav.
2. Разный состав методов. Включаем в класс только то, к чем имеет право обращаться текущий пользователь.
3. Разные версии методов, т.е. при загрузке говорим, что данный код отлажен с классом версии 1.3 (включает метод foo версии 1.2.1 и метод bar версии 1.4.2 -- как в VisualAge Java) и хочет именно эту версию.

:)
 

lucas

Guest
НИКТО это делать не пробывал
Помнится мне, была какая-то CMS, в которой все: шаблоны, настройки, собственно данные и весь PHP код -- хранилиcь в БД. А выгрузкой всего этого занимался один-единственный файлик типа *_connect/query + eval.
 

Кром

Новичок
>2. Разный состав методов. Включаем в класс только то, к чем имеет право обращаться текущий пользователь.

Тогда придется отслеживать обращения к несуществущим методам класса. :)
 

Crazy

Developer
Обращения к несуществующим методам пусть генерят ошибку. Бизнес-логика и так не должна к ним обращаться. Просто получаем второй уровень защиты. :)
 

Tonn

Новичок
Автор оригинала: Crazy
Мозговой штурм:

1. Разные реализации методов. Например, одна версия работает с ftp, а другая -- с webdav.
2. Разный состав методов. Включаем в класс только то, к чем имеет право обращаться текущий пользователь.
3. Разные версии методов, т.е. при загрузке говорим, что данный код отлажен с классом версии 1.3 (включает метод foo версии 1.2.1 и метод bar версии 1.4.2 -- как в VisualAge Java) и хочет именно эту версию.
Дык это и есть смысл ОО - подхода. :) Правильно спроектированный класс так себя вести и будет.
 
Сверху