- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть много сайтов не обновляемые (но если и обновляемые то путем генерации страниц это обновление можно вносить), какой из вариантов будет меньше всего нагружать сервер?
1. Сложить все HTML-ами
2. Сложить все HTML с отсеченными верхом и низом и подключаемые инклюдом (т.к. из 60 кб HTML в итоге повторяющаяся часть - шапка и подвал занимают 80% кода)
3. Держать все в разных базах и 1н index.php который будет по адресу страницы её генерировать путем 1го запроса к базе (типа селект контакты, селект о нас и т.д.)
4. Держать все в 1й базе, с дополнительным полем идентификатором к какому сайту эта страница относится
(Страниц на сайтах 8-100, на некоторых много графики, посещаемость низкая - 1-50 заходов в сутки на сайт, с учетом роботов)
Как считаете? или это будет все примерно на одном уровне производительности?
Думаю, что простые html будут меньше всего грузить сервер. Но это не удобно, если приходиться менять шаблон (да и просто прикреплять шаблон) и организовывать поиск. Я бы предпочел хранение в базе с последующим кэшированием в виде основного тела страниц и последующим инклюдом. Т.е. рекомендую совместить методы.
MySQL это те же файлы, только работа с ними огранизована достаточно хорошо.
Тут нужно смотреть, смотря как организовывать.
Думаю, что если всё сделать корректно, то mysql может быть быстрее.
Himiko, +1
MySQL всю эту мелочь может в памяти держать и тогда обращений к HDD может не быть вовсе.
НО, с посещаемостью 1-50, думаю, он не станет держать это в памяти )
Я бы выбрал статику, если нет нужды в обновлениях.
Думаю, что если всё сделать корректно, то mysql может быть быстрее.
Тоже так думаю, но пока только сомнения.
А как вы думаете - нужно делать 200 баз (по 8-100 записей) на 200 сайтов (на будущие 1000-2000) на сервер на котором будет 1н диск (возможно даже не серверный) или все это держать в 1й базе на 100 000 записей с индексом по 2м полям (что за страница и что за сайт) чтобы не плодить мелкие файлы.
PS.
И какое количество сайтов такого уровня сможет выдержать сервер на основе 4х ядер + 8ГБ оперативки + 1 HDD (почему-то у меня такое чувство что упираться все будет в жесткий, или я ошибаюсь?)
Планирую сделать аля укоз, но со своим "велосипедом", хотелось бы предвидеть где может быть тонкое место.
MySQL хранит каждую табличку в отдельном файлике (а точнее в нескольких файликах).
И в память грузит таблицу целиком.
Поэтому, мне кажется, целесообразнее делать всё вообще в одной таблице.
100-200 тысяч записей — это вообще копейки, и проц 4-ядерный (даже Core2) будет отлично их лопатить.
Тонкое место тут HDD, поэтому нужно метить, чтобы вся эта табличка умещалась в память.
Если у Вас 50*100*200=1.000.000 запросов в сутки максимум (10 запросов в секунду), вопрос как хранить действительно есть. Нагружать минимально будет, ИМХО, хранение текстовых статических версий и отдача их nginx'ом. Ну или полное кэширование - то есть index.php отдаёт страницу при её наличии на диске в кэше или переделывает и сохраняет в кэш. Надеяться что mysql будет что-то хранить в памяти не стоит, так как запросов маловато и повторяющихся практически не будет.
html + отдача nginx'ом быстрее некуда
mysql это дополнительные грабли на подключение и работу самого демона, проще дать nginx'у больше памяти под буферы.
Куски сайта храню в заранее сгенерированных фрагментах HTML в виде файликов в папках.
Эти куски включаю в код страниц вызовом PHP команды readfile().
readfile() – работает быстрее чем include(), так как readfile() не производит синтаксический анализ содержимого файла.
Когда фрагменты сайта нужно изменить, то запускается скрипт, который на основе данных из mysql генерирует HTML фрагменты.
В некоторых местах скрипт для изменения HTML файлов запускается сразу после внесения изменений в mysql.
А в некоторых местах скрипт запускается по крону. В результате, между изменением mysql и изменением на сайте происходит некоторая задержка.
Такая конструкция работает на сайте с 1,3 миллиона кликов в сутки.
zexis, хранить полностью собранные html файлы слишком накладно по объему? Почему использовалось решение с php, тянущем отдельные фрагменты?
zexis, хранить полностью собранные html файлы слишком накладно по объему? Почему использовалось решение с php, тянущем отдельные фрагменты?
Потому что на страницах есть небольшая динамическая информация, которая генерируется PHP (например текущее время), но основные блоки с долго генерируемыми данными уже заранее записаны в файлы HTML, которые просто подключаются readfile