Форум Рідного Міста
Ви не ввійшли [Ввійти - Зареєструватися]
Вниз

Версія для друку  
Автор: Тема: Виділення ключових слів (сайтобудування)
Рост
Модератор
*******

Фотографія користувача


Повідомлень: 3709
Зареєстрований: 3-4-2003
Місто: Львів
Нема на форумі

Настрій: є

[*] написано 12-5-2004 у 14:26
Виділення ключових слів (сайтобудування)


Є така собі проблемка.
Аналітичний сайт. Статті. Глосарій. Є потреба виділяти слова з глосарію в статтях у вигляді посилань на той же глосарій. Тобто, виводиться стаття, є слово, що міститься в глосарію - воно перетворюється на посилання.

Так от, щодо реалізації. Добре, якщо глосарій маленький. Тоді при виводі скрипт прокрутить саттю по всіх ключових словах, автоматично виділивши потрібні, вірніше, перетворивши їх на посилання. А якщо глосарій розростеться?
Прокручувати заміну слів статті одноразово, перед публікуванням - тоді не враховується поповнення глосарію.

Може хтось підкаже якийсь вихід, що і враховуватиме поповнення глосарію, і не з`їдатиме ресурси сервера та не гальмуватиме вивід статей?
Переглянути профіль користувача Зайти на домашню сторінку користувача Переглянути всі повідомлення цього користувача
Олексій Мачехін
Модератор
*****

Фотографія користувача


Повідомлень: 4597
Зареєстрований: 31-5-2003
Місто: Київ
Нема на форумі

Настрій: теплий

[*] написано 12-5-2004 у 14:58


Як на мене - або "переформатування" всіх статей після поповнення глосарію (скажімо, в момент найменьшого завантаження серверу серед ночі раз на добу за умови поновлення, або за кожного поновлення, власне, порте треба уважно поставитись аби слова не підмінялись при кожному переформатуванні вдруге і втретє), або оптимізація функції підстановки і робити на льоту.
Переглянути профіль користувача Зайти на домашню сторінку користувача Переглянути всі повідомлення цього користувача
marco
Академік
****

Фотографія користувача


Повідомлень: 752
Зареєстрований: 3-2-2003
Місто: Львів, центр
Нема на форумі

Настрій: стабільний

[*] написано 13-5-2004 у 12:41


Це залежить від інтенсивності наповнення словника та інтенсивності відвідування сайту.
У будь-якому випадку робити заміну "на льоту" нераціонально. Я так розумію що з часом і словник буде розширюватись і кількість статей збільшуватись. Тому краще видавати закешовані сторінки з згенерованими лінками.

Якщо словник поповнюється часто (декілька- десятки слів за день) - то тоді краще це робити перегенерацію статтей раз на добу вночі запускаючи з кронтабу.

Якщо не часто (декілька-десятки за тиждень) то тоді можна при потребі вручну очищати кеш і запускати перегенерацію.





Компанія "ВебМайстерня" - професійна розробка веб-сайтів та впровадження TYPO3 CMS.
Переглянути профіль користувача Зайти на домашню сторінку користувача Переглянути всі повідомлення цього користувача Цей користувач має MSN Messenger
Тарас Сокальський
Почесний Академік
*****



Повідомлень: 1154
Зареєстрований: 25-4-2003
Місто: Чернівці
Нема на форумі

Настрій: Бойовий

[*] написано 23-6-2004 у 19:30


Якщо тема ще актуальна, впхаю своїх 5 копійок.
1. Статті із згенерованими лінками тримаємо в кешах.
2. Ведемо хроніку поповнення/вилучення слів в глосарії.
Кожну подію нумеруємо. Номер = версія глосарію.
3. Тримаємо базу, в якій для кожної статті з кешу
зазначується версія глосарію, під яку вона (стаття)
проіндексована.
4. Оновлення лінків здійснюємо після кожної події п.2
в режимі найнижчого пріорітету. При цьому не перепорпуємо
весь глосарій, а лише враховуємо ті події, які відбулися
після попереднього оновлення, тобто з номерами, більшими
від вказаних в базі(п.3). Після чого, певна річ, коректуємо
версії статей.
5. При зверненнях до закешованих статей звіряємо версії
статті і глосарію, при невідповідності на льоту в алярмовому
порядку доставлюємо лінки на нові слова (не забувши результат
покласти в кеш і підправити версію статті).
6. І, звичайно, додаючи нову статтю, перетрясаємо весь
глосарій і записуємо в кеш статтю із згенерованими лінками.
Хоча цього робити не конче, можна вписати в кеш статтю без
лінків і з нульовою версією глосарію, тоді лінки вставляться
автоматично при першому зверненні до статті(див п.5) або при
наступному поповненні глосарію. Але в першому випадку буде
затримка.
7. Про всяк випадок передбачити перед вставлянням лінку в
статтю перевірку, чи він там вже не стоїть (це може бути в
разі збою при корекції версії статті). Найпростіше перескакувати
слова, які вже є лінками.
Таке от моє чайницьке уявлення, як мінімізувати завантаження
сервера і прискорити обробку запитів.
О, а як бути з розпізнаванням різних відмінкових форм
слів? Певно, треба до кожної статті глосарію додавати
парадигму слова і вишукувати в тексті всі варіанти. Тобто,
роботи при генеруванні лінків додається, і питання оптимізації
постає в усій красі.
Переглянути профіль користувача Переглянути всі повідомлення цього користувача

  Догори

Статичне дзеркало форуму

Львів
Pоwered by XМB
Developed by Avеnture Media & The XМB Group © 2002-2006



Інші проекти:
Наука-Онлайн - Об'єднання українських науковців
Львів - Фотоблог міста
ІБАС. Інформаційна, бібліотечна та архівна справа - Сучасна освітня спеціальність
School review 2600
Реклама: