mysql оптимизация

12
N0
На сайте с 12.11.2007
Offline
45
1175

доброго времени суток,

есть сайт с большим трафиком.. при получении инфы на сайте к одной и той же таблице идут частые обращения.

таблица содержит описания продуктов, где одно поле, содержащие собственно описание, сериализировано

владелец требует оптимизировать приложение и предлагает вместо этой таблицы использовать временную, где сериализированные данные

будут уже unserialized и разнесены по полям

вопрос: оптимально ли такое решение? какой максимальный "позволительный " размер временной таблицы? какие еще лучшие способы оптимизации?

Пластиковые окна Москва (http://vse-plastikovie-okna.ru) Стеклопакеты Москва (http://e-steklopaketi.ru)
N
На сайте с 06.05.2007
Offline
419
#1

Если владелец такой умный, то почему сам не напишет?

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

Кнопка вызова админа ()
N0
На сайте с 12.11.2007
Offline
45
#2

так вот и жду совета, с какого конца подойти

Петр Елагин
На сайте с 21.03.2007
Offline
197
#3
nat000:
так вот и жду совета, с какого конца подойти

без сериализации никак ? я бы сделал подтаблицу с связкой Наименование : Значение, и привязал это к товару, это и искать удобней и фильтр удобней строить и быстрее будет, так как парсить стрингу это сложней по любому.!

N
На сайте с 06.05.2007
Offline
419
#4

1. Найти узкое место.

2. Устранить.

3. Перейти к пункту 1.

OReIlly.High.Performance.MySQL.Second.Edition.Jun.2008.eBook-DDU.pdf

OReilly.High.Performance.Web.Sites.Sep.2007.pdf

На русском можно найти кусочки-советы, но нигде они не сложены в одну книжку.

Понимаю, что звучит издевательски, но тут либо вы платите, либо теряете время изучая литературу и практические приемы. Вы сейчас источник нагрузки даже не локализовали. Большинство советов будут бесполезны.

Петр Елагин
На сайте с 21.03.2007
Offline
197
#5
netwind:
1. Найти узкое место.
2. Устранить.
3. Перейти к пункту 1.

OReIlly.High.Performance.MySQL.Second.Edition.Jun.2008.eBook-DDU.pdf
OReilly.High.Performance.Web.Sites.Sep.2007.pdf
На русском можно найти кусочки-советы, но нигде они не сложены в одну книжку.

Понимаю, что звучит издевательски, но тут либо вы платите, либо теряете время изучая литературу и практические приемы. Вы сейчас источник нагрузки даже не локализовали. Большинство советов будут бесполезны.

"нагрузки даже не локализовали" = тут и так все понятно ! они стрингу парсят!, когда можно просто запросом.

N0
На сайте с 12.11.2007
Offline
45
#6
AlienZzzz:
без сериализации никак ? я бы сделал подтаблицу с связкой Наименование : Значение, и привязал это к товару, это и искать удобней и фильтр удобней строить и быстрее будет, так как парсить стрингу это сложней по любому.!

сайт мультиязычный

в принципе сериализацию можно убрать, но нужно разбить одну большую таблицу по языкам

например один товар имеет 20 записей на разных языках

вопрос - что лучше использовать 20 временных таблиц для каждого языка и обновлять их как cron job периодически (как предлагает владелец), или все-таки обычные таблицы (не временные)

[Удален]
#7

А не проще ли прикрутить обычное кеширование, чтоб вообще не дергало мускул?

Петр Елагин
На сайте с 21.03.2007
Offline
197
#8
nat000:
сайт мультиязычный
в принципе сериализацию можно убрать, но нужно разбить одну большую таблицу по языкам
например один товар имеет 20 записей на разных языках
вопрос - что лучше использовать 20 временных таблиц для каждого языка и обновлять их как cron job периодически (как предлагает владелец), или все-таки обычные таблицы (не временные)

Тип записи - язык сделайте просто и все.

AlienZzzz добавил 11.03.2009 в 16:00

FOXI.BY:
А не проще ли прикрутить обычное кеширование, чтоб вообще не дергало мускул?

Мем кеш норма я думаю . но не кашерно . при изменении товата например.

N0
На сайте с 12.11.2007
Offline
45
#9
AlienZzzz:
Тип записи - язык сделайте просто и все.

сейчас именно так и есть

например товар А имеет 20 записей в таблице, каждая соответствует языку

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

[Удален]
#10
AlienZzzz:

Мем кеш норма я думаю . но не кашерно . при изменении товата например.

Недавно делали кеширование для интернет магазина, прикрутили простейшее кеширование на php для страниц списка товара, нагрузка на сервер упала очень сильно, собственно vds падал намертво (5к товаров, почти 10к просмотров в сутки было), после прикрутки кеширования нагрузка упала до нуля. А при смене товара - не проблема обнулять кеширование.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий