Поддержка Проблемы и решения Каков нормальный лимит потребления RAM?

  • Проблема такая: в статистике сайта показывает постоянное превышение лимита RAM (раньше ругался на превышение процессорного времени, но потом поменялся интерфейс панели управления и вся статистика). По договору хостинга лимит — 128 Мб, но потом хостер (Хостинг Центр, дочка RU-CENTER) поднял его до 384 Мб. А у меня постоянно на уровне 500 Мб, хотя посещаемость сайта почти нулевая.

    Вопрос: каково нормальное потребление RAM у сайта с визитами на уровне нескольких десятков человек в день?

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

    Мне тут рекомендовали поменять хостера, но я бы все-таки хотел понять — насколько нормально потребление 500 Мб моим скромным бложиком? Скачал логи ошибок, но я в них ничего не понимаю — может кто-нибудь подскажет?

    Вот фрагменты из сегодняшних записей:

    [Wed Oct 17 10:39:27.455697 2018] [:error] [pid 59756] [client 54.165.59.7:48550] PHP Warning:  parse_url(/wp-json/oembed/1.0/embed?url=http://gadgets-news.ru/anonsirovany-huawei-p10-p10-plus-i-watch-2/&format=xml) [<a href='function.parse-url'>function.parse-url</a>]: Unable to parse URL in /home/u2953907/gadgets-news.ru/docs/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-process-renamed-login-page.php on line 130
    
    [Wed Oct 17 10:39:44.731613 2018] [:error] [pid 59756] [client 54.165.59.7:48550] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/u2953907/gadgets-news.ru/docs/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-process-renamed-login-page.php:130) in /home/u2953907/gadgets-news.ru/docs/wp-includes/rest-api/class-wp-rest-server.php on line 1248
    
    [Wed Oct 17 12:30:40.587498 2018] [:error] [pid 60348] [client 220.243.136.16:50694] PHP Warning:  mysqli_query() [<a href='function.mysqli-query'>function.mysqli-query</a>]: (HY000/2013): Lost connection to MySQL server during query in /home/u2953907/gadgets-news.ru/docs/wp-includes/wp-db.php on line 1924

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 15 ответов — с 16 по 30 (всего 37)
  • Просто включите кэширование и оставьте настройки по умолчанию. Там есть тест кэширования, тест проходит? Дополнительные плагины я не устанавливал.

    Модератор Yui

    (@fierevere)

    永子

    я бы не назвала кеш плагин панацеей, хотя для новостного сайта, где люди приходят почитать записи и нечасто совершают какие-то персонализирующие их действия (оставление комментариев, выбор товаров в корзину итп) страничное кеширование реально помогает снижать нагрузку, как минимум на базу данных и время генерации страниц. На память может не снижать, если используется apache mod_php без проксирования статики на nginx (или его аналог)

    Server	nginx/1.12.2
    Transfer-Encoding	chunked
    Vary	Accept-Encoding,Cookie
    X-Powered-By	PHP/5.2.17

    хотя на хостинге в принципе видно nginx и древнюю как позавчерашний завтрак мамонта версию PHP, с такой версией вполне можно получить проблемы с сайтом при использовании многих плагинов. Лучше по возможности обновить PHP. В идеале до версии 7.0 или 7.1
    https://ru.wordpress.org/support/upgrade-php/

    Из плагинов кеширования могу посоветовать самый простой и практически без настроек, от него практически невозможно получить какие-то проблемы
    https://ru.wordpress.org/plugins/simple-cache/

    И стоит ли воспользоваться дополнительными рекомендациями плагина — Jetpack, Yahoo! Yslow или библиотеки Google, WP Control?

    зависит от того, как вы ими воспользуетесь. Лучше воспринимать скептически,
    есть явные проблемы, которые стоит устранять, есть рекомендации-придирки, следование которым приносит только проблемы и замедление реальной работы сайта.

    Модератор Yui

    (@fierevere)

    永子

    https://www.webpagetest.org/result/181019_WS_609c5b5ad46cf4126dbbd0fc1a9d3c45/

    вот у вас плохо, для статических ресурсов не установлено время кеширования
    https://www.webpagetest.org/performance_optimization.php?test=181019_WS_609c5b5ad46cf4126dbbd0fc1a9d3c45&run=2#cache_static_content

    можете в .htaccess (в начало файла, до правил WordPress) добавить:

    
    <IfModule mod_headers.c>
        <FilesMatch "\.(js|css|xml|gz)$">
            Header append Vary Accept-Encoding
        </FilesMatch>
        <FilesMatch "\.(ico|jpe?g|png|gif|swf)$">  
            Header set Cache-Control "public"  
        </FilesMatch>  
        <FilesMatch "\.(css)$">  
            Header set Cache-Control "public"  
        </FilesMatch>  
        <FilesMatch "\.(js)$">  
            Header set Cache-Control "private"  
        </FilesMatch>  
        <FilesMatch "\.(x?html?|php)$">  
            Header set Cache-Control "private, must-revalidate"  
        </FilesMatch>
    </IfModule>
    
    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresDefault "access plus 10 days"
        ExpiresByType text/css "access plus 1 week"
        ExpiresByType text/plain "access plus 1 month"
        ExpiresByType image/gif "access plus 1 month"
        ExpiresByType image/png "access plus 1 month"
        ExpiresByType image/jpeg "access plus 1 month"
        ExpiresByType application/x-javascript "access plus 1 month"
        ExpiresByType application/javascript "access plus 1 week"
        ExpiresByType application/x-icon "access plus 1 year"
    </IfModule>
    
    <ifModule mod_gzip.c>
    mod_gzip_on Yes                                                                                                                                                 
    mod_gzip_dechunk Yes                                                                                                                                            
    mod_gzip_item_include file .(html?|txt|css|js|php|pl|woff|woff2|ttf|eot)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
    </ifModule>

    в остальном или терпимо или вы что-то изменить не в силах 😉

    Yui, я честно говоря не уверен, что этот простой плагин, который не обновлялся 5 месяцев и с открытым исходным кодом лучший вариант. Главное предназначение плагина кэширования — создание статических htm страниц из динамических страниц, которые создает wordpress. Выполняет ли этот плагин эту функцию — точно неизвестно. А в плагине с миллионом установок, который я посоветовал, точно эта функция есть в настройках по умолчанию. Хотя, Вы правы, если в хостинге версия php 5.2 неизвестно как будет работать любой плагин.

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

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

    Модератор Yui

    (@fierevere)

    永子

    Yui, я честно говоря не уверен, что этот простой плагин, который не обновлялся 5 месяцев

    это всего лишь значит, что он работает как надо, там нечему обновляться.

    Главное предназначение плагина кэширования — создание статических htm страниц из динамических страниц, которые создает wordpress.

    плагина кеширования в статические страницы. См совет SeVlad почитать о кешировании, кеширование в статический html — далеко не единственный вариант.

    Выполняет ли этот плагин эту функцию — точно неизвестно

    прекрасно выполняет.

    А в плагине с миллионом установок, который я посоветовал, точно эта функция есть в настройках по умолчанию

    число установок — не показатель. Я посоветовала Simple Cache из-за его простоты в настройках, по-настоящему плагин для тех, кому лень разбираться со всеми галочками в настройках других плагинов. А так кеширующих в статику плагинов полно, так что не нужно холиварить.

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

    Модератор Yui

    (@fierevere)

    永子

    то что он с открытым исходным кодом уже не есть хорошо

    сами то поняли что сморозили?
    Весь официальный каталог плагинов и тем, включая и сам WordPress — с открытым исходным кодом

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

    некоторым надо чтобы просто работало. с минимумом настроек. сразу.
    А если есть желание и понимание, то вполне можно написать и свое собственное решение, например на основе fastcgi кеширования nginx

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

    Вы к нам из какой параллельной вселенной прибыли?
    а за что вас от туда выперли?

    В этой вселенной лучше 🙂 tuxfighter объясните, если открытый код это хорошо, почему большинство плагинов не с открытым кодом? Сам WordPress конечно тоже с открытым исходным кодом, но там есть ядро разработчиков, программистов, которые координируют работу между собой не возникает проблем с обнввлением, безопасностью и т.д. А если возникают, то оперативно решают.

    Модератор Yuri

    (@yube)

    почему большинство плагинов не с открытым кодом?

    Ткните пальцем в такой плагин из оф.каталога.

    Модератор Yui

    (@fierevere)

    永子

    alexander70, давайте не заоффтопливать чужую тему с вопросом.
    Если хотите обсуждать — создайте тему в разделе «Разное»

    у любого плагина есть «ядро разработчиков», как минимум из 1 человека, который и решает какие патчи от сообщества войдут в продукт.

    почему большинство плагинов не с открытым кодом?

    ВСЕ плагины в оф. каталоге с открытым кодом.
    я вам даже больше скажу: ВСЕ коммерческие плагины, тоже обязаны выходить под лицензией GPL

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Каждый может туда вносить изменения и потом концов не найдешь.

    В официальном каталоге изменения может вносить только автор или одобренные им разработчики. Благодаря открытому коду можно за пару кликов посмотреть все изменения любого плагина и принять меры, если кто-то вдруг продал плагин спамерам.

    А если скачивать плагины откуда попало — тут проблема уже не в открытом коде 🙂

    Anonymous User 15434590

    (@anonymized-15434590)

    Поддерживаю Yui. Я бы начал с перехода на PHP 7.

Просмотр 15 ответов — с 16 по 30 (всего 37)
  • Тема «Каков нормальный лимит потребления RAM?» закрыта для новых ответов.