|
|
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. У меня тут возникли небольшие трудности с выполнением скрпита, который вытаскивает дату и имя пользователя последнего поста в теме. Т.е. сортировка тем форума по дате последнего поста: выводим название форума, дата последнего поста, имя автора последнего поста. Код: plaintext 1. 2. 3. 4. 5. 6. 7. Что к чему относиться интуинтивно понятно, так что расписывать переменные не буду. Структуру таблицу опишу ниже. Так вот в чем вопрос. Раньше когда постов было не очень много, скрипт работал удовлетворительно, но теперь их стало больше, и он начинает заметно тормозить (9-15 сек) на локалке, сколько в сети не буду говорить, но долго. Теперь вопрос: Можно ли данный запрос оптимизировать? Решения: 1. может стоит оптимизировать запрос, возможно он написан неверно. 2. сделать запросы в цикле по каждому последнему посту в данной теме 3. добавить в таблицу тем, новую колонку и при каждом добалении поста, изменять дату в ней. Но как же быть с администрированием, ведь надо будет это учитывать. Что подскажите??? Какой выбрать? На другом форуме, мне сказали, что нужно применять индексы. у меня их не было. EXPLAIN выдавал вот это до определения инвексов. Код: plaintext 1. 2. 3. 4. после определения индексов Код: plaintext 1. 2. 3. 4. Помогите советом. Заранее спасибо. С уважением, Rodent ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 14:48:03 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Зачем изобратеть велосипед: phpbb - очень даже функционально и бесплатно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2006, 13:05:21 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Ну собственно, добавленные индексы уже сократили время исполнения запроса на пару порядков. Вероятно, неплохо было бы добавить нужный индекс и в t3, но без описания таблиц чего-то конкретное советовать не представляется возможным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2006, 13:36:25 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Отвечу на вопросы: 1. to imscoc зачем я изобретаю велосипед? да просто хочется своего, чтобы знать откуда ручки да ножки ростут, да и с этим опыта набираешься в программировании в связке апаче, пхп, мускл. Хотя и напрягаю народ своими нерочень умными вопросамири, но для этого форму и создавался. 2. to DocAl Структура таблиц. Таблица постов Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Индексы к ней Код: plaintext 1. 2. 3. 4. 5. 6. Таблица тем Код: plaintext 1. 2. 3. 4. 5. 6. 7. Индексы к ней. Код: plaintext 1. 2. 3. Заранее спасибо за совет и помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2006, 22:34:29 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Посоветуйте что-нибудь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2006, 18:57:03 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
RodentПосоветуйте что-нибудь. я обычно учусь на хороших примерах, чего и Вам советую ;) самый лучший форум - fudforum.org - в исходниках -- Dmitry ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2006, 19:03:27 |
|
||
|
Проектирование форума
|
|||
|---|---|---|---|
|
#18+
Я тут просмотрел исходники других форумов. Так вот там в таблице тем (forum), постоянно обновляется номер, дата, и автор последнего поста. А именно от этого я и хотел уйти. :-(( А тут получается, что при добавлении каждого нового поста . нужно обновлять инфу в самой таблице названия соответсвующей темы! Неужели это единственный выход, для быстрой работы форума? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 21:40:22 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=33483405&tid=1853156]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
358ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 191ms |
| total: | 641ms |

| 0 / 0 |
