LEOnidUKG

LEOnidUKG
Рейтинг
1789
Регистрация
25.11.2006
Должность
PHP
Интересы
Программирование

Да конечно, это не полноценный рандом, если присмотреться. 

Можно использовать вот такой:

SELECT `cms_freepages`.* FROM (SELECT id FROM `cms_freepages` ORDER BY RAND() LIMIT 5 ) AS ids JOIN `cms_freepages` ON `cms_freepages`.id = ids.id;

Но, он будет медленнее 

Запрос занял 0.2970 сек.

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

lutskboy #:

мой вариант

Он ничем не отличается от  ORDER BY RAND() и БД умрёт от этого запроса.

БД 850 000 записей ORDER BY RAND()

Запрос занял 42.9442 сек.

А мой запрос пример:

Запрос занял 0.0007 сек

Дальше думаю сами разберёте, почему решение рандомного вывода это не очень стандартная задача.

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

Не обязательно, можно выбирать рандомные записи, только BY RAND() при этом не использовать.

например такой:

SELECT cat,trans,name FROM `cms_freepages` f JOIN ( SELECT rand() * (SELECT max(id) from `cms_freepages`) AS max_id ) AS m WHERE f.id >= m.max_id ORDER BY f.id ASC LIMIT 20;

Адаптировать думаю можно под DLE
Massimo2223 #:
ORDER BY RAND()?

А потом ко мне сразу, за платной консультацией, почему сайт дико тормозит и БД просто вешается.

Владислав #:
Здравствуйте, ваша ссылка готова. Данные по заказу отправили на указанную почту. Главная страница уже проиндексирована в ПС. 

Данные дропа:

DA = 11

REFERRING DOMAINS = 790 (но там много мусора из-за того что был дропом)

Бэки на дроп тематические в основном.

Ссылка на главной как и обещали. Теперь только процветанию этому дропу и сайту надо.

Место на диске случаем не закончилось?
Что делать с неправильными url? 

Что значит неправильные урлы? ПС отлично разбирают любые урлы, даже без ЧПУ всё отлично понимают.

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

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

Раза два в год, чтобы ядро применилось новое, если конечно они ещё выпускаются под ту ОС, которую вы используете.

Разные версии PHP могут быть и разные OpenSSL, поэтому я рекомендую всегда прописывать: CURLOPT_SSLVERSION

На новых версиях подключение пытается по TSL 1.3, а многие сайты, например Яндекс.Маркет сразу отвергают такое подключение и всё.

Всего: 31648