Forum Webscript.Ru

Программирование => PHP => Тема начата: Xander от 17 Сентября 2002, 00:21:58

Название: десериализация объектов и ее скорость...
Отправлено: Xander от 17 Сентября 2002, 00:21:58
Задача стоит так: решить, нужно ли кешировать объекты с помощью сериализации, или нет. Объекты эти в основном хранилища данных, практичнски без методов. Собираются на основе данных, взятых из базы.

Проделал несколько тестов, получается вот что:
когда объекты имеют условные размеры, то сборка из массивов
$qq = new Test($q[0],$q[1],$q[2],$q[3],$q[4],$q[5],$q[6]);
оказывается быстрее. Когда они становятся больше, то быстрее десериализация.

Итак, вопрос гуру (если таковые имеются):
что будет быстрее, если данных несколько десятков килобайт:
создать объект один раз, сериализовать, и дальше десериализовывать по мере надобности, или каждый раз создавать заново?
Название: десериализация объектов и ее скорость...
Отправлено: Макс от 17 Сентября 2002, 02:33:13
Цитировать
что будет быстрее, если данных несколько десятков килобайт:
создать объект один раз, сериализовать, и дальше десериализовывать по мере надобности, или каждый раз создавать заново?
Насколько я понял ты сам некоторые тесты уже сделал. А что помешало тебе сделать тест с данными в несклько десятков Кб? Протести и нам потом раскажешь :)

Цитировать
или каждый раз создавать заново?
то есть вытаскивать из БД? Кеширование конечно будет побыстрее, только вот уверен ли ты что оно вообще здесь нужно. У тебя сильно сайт нагружен?
Название: десериализация объектов и ее скорость...
Отправлено: Доктор от 17 Сентября 2002, 05:44:09
Лучше делать так, как удобнее. Выигрыш в несколько миллисекунд некритичен. Разве что у тебя объектов таких сотни-тысячи.
Название: десериализация объектов и ее скорость...
Отправлено: Xander от 17 Сентября 2002, 12:57:18
Я движок пишу. Вот, думал, имеет смысл кешировать наиболее употребительные объекты, или нет.
Название: десериализация объектов и ее скорость...
Отправлено: Макс от 17 Сентября 2002, 13:06:36
Xander
а почему (раз уж ты решил кешировать) не кешировать весь вывод, например с помощью PEAR=>Cache_Lite=>Cache_Lite_Output.php
(название примерное, на cvs.php.net найдешь)
Название: десериализация объектов и ее скорость...
Отправлено: Xander от 17 Сентября 2002, 13:17:56
Потому что моя ПХП хорошо не знать %)
спасибо, посмотрю.