Оптимизировать скрипт (уменьшить нагрузку).

Аладдин16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
22.09.2010

От исполнителей хочу видеть цену и сроки на реализацию задачи.

На высоко посещаемом сайте имеется блок, который выводит список похожих объявлений.

Скрипт, вызывающий этот блок, слишком грузит сервер. Нужно оптимизировать или создать с нуля набор функций, которые можно было бы вставить вместо существующих, чтобы значительно сократить нагрузку на сервер.

Задача скрипта:

1. Взять в качестве поисковой фразы заголовок текущего объявления.

2. Найти в том же разделе объявления, содержащие в своем заголовке или тексте ключевые слова из заголовка текущего объявления. За вычетом ненужных слов, букв и знаков: 'quot',

'Продаю ', ' продаю ', 'ПРОДАЮ ',

'Высокая ', ' высокая ', ' ВЫСОКАЯ ',

'Высокий ', ' высокий ', ' ВЫСОКИЙ ',

'Высокое ', ' высокое ', ' ВЫСОКОЕ ',

'Высокие ', ' высокие ', ' ВЫСОКИЕ ',

'Низкая ', ' низкая ', ' НИЗКАЯ ',

'Низкий ', ' низкий ', ' НИЗКИЙ ',

'Низкое ', ' низкое ', ' НИЗКОЕ ',

'Низкие ', ' низкие ', ' НИЗКИЕ ',

'Лучшая ', ' лучшая ', ' ЛУЧШАЯ ',

'Лучший ', ' лучший ', ' ЛУЧШИЙ ',

'Лучшее ', ' лучшее ', ' ЛУЧШЕЕ ',

'Лучшие ', ' лучшие ', ' ЛУЧШИЕ ',

'Самая ', ' самая ', ' САМАЯ ',

'Самый ', ' самый ', ' САМЫЙ ',

'Самое ', ' самое ', ' САМОЕ ',

'Самые ', ' самые ', ' САМЫЕ ',

'Город ', ' город ', ' ГОРОД ',

'Городе ', ' городе ', ' ГОРОДЕ ',

'Стоимость ', ' стоимость ', ' СТОИМОСТЬ ',

'Стоимости ', ' стоимости ', ' СТОИМОСТИ ',

'Цена ', ' цена ', ' ЦЕНА ',

'Цене ', ' цене ', ' ЦЕНЕ ',

'Киев ', ' киев ', ' КИЕВ ', ' київ ', ' києв ', ' kiev ', ' kyiv ', ' киів ', 'Київ ', 'Києв ', 'Kiev ', 'Kyiv ',

'Киів ', ' КИЇВ ', ' КИЄВ ', ' KIEV ', ' KYIV ', ' КИІВ ',

' ваш ', ' мой ', ' твой ', ' наш ', ' вашего ', ' моего ', ' твоего ', ' нашего ', ' вашу ', ' мою ', ' твою ', ' нашу ', ' вашим ', ' моим ', ' твоим ', ' нашим ',

' вашем ', ' нашем ', ' твоем ', ' моем ', ' вашему ', ' моему ', ' твоему ', ' нашему ',

' Ваш ', ' Мой ', ' Твой ', ' Наш ', ' Вашего ', ' Моего ', ' Твоего ', ' Нашего ', ' Вашу ', ' Мою ', ' Твою ', ' Нашу ', ' Вашим ', ' Моим ', ' Твоим ', ' Нашим ',

' Вашем ', ' Нашем ', ' Твоем ', ' Моем ', ' Вашему ', ' Моему ', ' Твоему ', ' Нашему ',

' ВАШ ', ' МОЙ ', ' ТВОЙ ', ' НАШ ', ' ВАШЕГО ', ' МОЕГО ', ' ТВОЕГО ', ' НАШЕГО ', ' ВАШУ ', ' МОЮ ', ' ТВОЮ ', ' НАШУ ', ' ВАШИМ ', ' МОИМ ', ' ТВОИМ ', ' НАШИМ ',

' ВАШЕМ ', ' НАШЕМ ', ' ТВОЕМ ', ' МОЕМ ', ' ВАШЕМУ ', ' МОЕМУ ', ' ТВОЕМУ ', ' НАШЕМУ ',

' пр ',' кг ',' мм ',' км ',' л ',' г ',' гр ',' ч ',

'купим','продадим','покупаем','продаем','купит','продаст','купят','покупают','продают','продадут',

'КУПИМ','ПРОДАДИМ','ПОКУПАЕМ','ПРОДАЕМ','КУПИТ','ПРОДАСТ','КУПЯТ','ПОКУПАЮТ','ПРОДАЮТ','ПРОДАДУТ',

'Купим','Продадим','Покупаем','Продаем','Купит','Продаст','Купят','Покупают','Продают','Продадут',

'продам','куплю','Продам','Куплю','ПРОДАМ','КУПЛЮ',' за ',' под ',' из ',' от ',' в ',' на ',' над ',' быть ',' буду ',' вот ',' где ',' для ',' по ',' через ',' когда ',

' лишь ',' только ',' пока ',

' едва ',' потому ',' что ',' как ',' будто ',' словно ',' точно ',' зачем ',' после ',' нет ',' да ',' вдоль ',' поперек ',' грн ',' USD ',' кв ',' м ',' все ',

' или ',' другие ',' от ',' я ',' так ',' при ',' к ',' возле ',' не ',' их ',' его ',' со ',' ЗА ',' ПОД ',' ИЗ ',' ОТ ',' В ',' НА ',' НАД ',' БЫТЬ ',' БУДУ ',' ВОТ ',' ГДЕ ',

' ДЛЯ ',' ПО ',' ЧЕРЕЗ ',' КОГДА ',' ЛИШЬ ',' ТОЛЬКО ',' ПОКА ',

' ЕДВА ',' ПОТОМУ ',' ЧТО ',' КАК ',' БУДТО ',' СЛОВНО ',' ТОЧНО ',' ЗАЧЕМ ',' ПОСЛЕ ',' НЕТ ',' ДА ',' ВДОЛЬ ',' ПОПЕРЕК ',' ГРН ',' USD ',' КВ ',' М ',' ВСЕ ',

' ИЛИ ',' ДРУГИЕ ',' ОТ ',' Я ',' ТАК ',' ПРИ ',' К ',' ВОЗЛЕ ',' НЕ ',' ИХ ',' ЕГО ',' СО ',' За ',' Под ',' Из ',' От ',' В ',' На ',' Над ',' Быть ',' Буду ',' Вот ',' Где ',' Для ',' По ',' Через ',' Когда ',' Лишь ',' Только ',' Пока ',

' Едва ',' Потому ',' Что ',' Как ',' Будто ',' Словно ',' Точно ',' Зачем ',' После ',' Нет ',' Да ',' Вдоль ',' Поперек ',' Грн ',' Usd ',' Кв ',' М ',' Все ',

' Или ',' Другие ',' От ',' Я ',' Так ',' При ',' К ',' Возле ',' Не ',' Их ',' Его ',' Со ','\\','\'','"','\"',' ','&','

':',';','!','\\\n','\\\r','

','\n','\r','"','#','№','$','&','^','*','+','=','[',']','{','}','~','`','(',')','?',' and ',' or ','-',' и ',' і ',' та ','/','.'

3. Выделить найденные ключевые слова визуально. Откусить по 150 символов слева и справа от найденного ключевого слова. Вывести списком.

Вот пример вживую: yarma.kiev.ua/_продаю_молодняк_птицы_и_яйца_0_133458_board_206_1.html

Набор функций, делающих эту задачу сейчас, прикрепляю.

Заявки фрилансеров