Автор Тема: Решение проблемы урезания данных!  (Прочитано 9899 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Решение проблемы урезания данных!
« Ответ #15 : 07 Февраля 2004, 19:58:22 »
ОК, проехали.
Если кто ещё не понял предмет обсуждения (ну мало ли?), мы говорили о рациональности хранения и отображения данных.
В идеале, данные в базе данных должны храниться в чистом виде - без html-тегов, без html-энтайтисов (как на русский перевести нормально, не подскажите?), без всякого рода прочих модификаций типа [p]wordwrap[/p]. А обрабатывать данные нужно непосредственно при их запросе и отображении.
Но есть и исключения: например, ресайзинг изображений нужно делать во время аплоада этого изображения, а не во время его отображения.
Чтобы определить, как поступить в той или иной ситуации, лучше лишний раз провести тесты на производительность, оценить расходы ресурсов на решение вашей конкретной задачи, учесть пиковую загруженность сервера и только после этого выбрать один из двух вариантов.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Решение проблемы урезания данных!
« Ответ #16 : 07 Февраля 2004, 20:15:07 »
Цитировать
FreeSpace:
В идеале, данные в базе данных должны храниться в чистом виде

совершенно неправильное утверждение.

вообще ты не в те степь ушел.

картинку, если она не нужна в большом виде - бессмысленно хранить.
в этом смысле, если содержимое  текстового поля совершенно точно не будет редактироваться, то его тоже можно

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Решение проблемы урезания данных!
« Ответ #17 : 07 Февраля 2004, 20:49:34 »
Рома, я же так и написал:
Цитировать
Но есть и исключения: например, ресайзинг изображений нужно делать во время аплоада этого изображения, а не во время его отображения.

Я имел в виду ресайзить на этапе аплоада и хранить уже ресайзнутую картинку.

Если есть 100% уверенность в том, что данные не нужно будет изменять, то да, ты прав, можно один раз их обработать и хранить в БД обработанную версию. Но на практике такое бывает очень редко, имхо.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Решение проблемы урезания данных!
« Ответ #18 : 07 Февраля 2004, 20:53:49 »
Цитировать
D1g174LM4n14c:
а если я вывожу кучу новостей на страницу?
к каждой при каждой генерации странице применять htmlspecialchars???

Цитировать
D1g174LM4n14c:
а я про все думаю. даже про самое мелкое...


тогда как ты будешь делать редактирование существующих новостей ? Или предложишь админу редактировать новости с кучей & nbsp; и т.д.

Я уверен, что htmlspecialchars не будет самым узким местом в твоем скрипте (в отличие от примера с генерированием превьюшек ).
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Решение проблемы урезания данных!
« Ответ #19 : 07 Февраля 2004, 21:33:38 »
FreeSpace
я понял.
ты путаешь
ВО!
дошло.
хранить надо именно в том виде, который нужен.
ты же делаешь тексту трим при получении его из формы?
это тебе твой первичный ресайз, понимаешь?

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Решение проблемы урезания данных!
« Ответ #20 : 07 Февраля 2004, 22:32:12 »
Да, с таким аргументом спорить не возьмусь :)
Но всё же согласись, эта грань весьма размыта.
Ведь если на тысячу запросов на просмотр будет один запрос на редактирование, то проще сделать [p]html_entity_decode[/p] один раз, чем [p]htmlspecialchars[/p] тысячу...
Хотя, ты меня убедил, ты прав.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Решение проблемы урезания данных!
« Ответ #21 : 07 Февраля 2004, 22:43:59 »
а при чем здесь ентити?
это же принцип.
в от в этом форуме бб код а не хтмл.
и редактирование нужно часто.

если так уж парит вопрос производительности, то решаем стандартно - через объем, храним исходник и результат.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Решение проблемы урезания данных!
« Ответ #22 : 07 Февраля 2004, 22:48:10 »
редактирование - не единственная задача.
есть еще вывод в шаблонах, со стрип тагсом, есть текст в принтер версии и так далее.

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Решение проблемы урезания данных!
« Ответ #23 : 07 Февраля 2004, 23:19:06 »
Да я не спорю ведь - есть куча разных задач и столько же разных решений.
Как ты сказал, можно хранить и исходник, и результат - тогда у нас будет кэширование. Вроде бы всё хорошо, но объем БД примерно в два раза больше. Так что тут нужно смотреть, что дороже - объем БД или процессорное время. В третьем вбуллетне (если уже мы заговорили о форумах) поступили умнее и скомбинировали эти два подхода: там можно задать время кэширования отпарсенных постов (в которых ббкод уже обработан и коротые хранятся в базе данных в виде хтмл), или при желании вообще его отключить.
Про стрип тагс и версию для печати - опять же, решение нужно искать под конкретную задачу. Я лишь рассмотрел самые общие варианты с их плюсами и минусами.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28