Натоварване - хостинг

Firefly

Well-Known Member
Здравейте,
от суперхостинг ме търпяха доста време, но ето, че преди няколко дни ми дойде писмото, в което предупреждават, че натоварването на сървъра е много голямо.

При ограничението от 150 процесорни минути аз ползвам около 250-300, което си е доста. Не става въпрос за толкова много посещения (1500 уникални, 5-8 хиляди импресии), но явно сайтът си товари доста.

Въпросът ми е някой може ли да предложи друга хостинг компания, която да може да ме издържи за горе долу същия бюджет (40-50лв месечно). Godaddy как са? То на всичките пише неограничен, но винаги пискат за това нещо... Другият вариант е някакъв сървър пак от Godaddy, но нямам представа какви параметри да търся, за нямам проблеми с натоварването.
 
Последно редактирано:
За 8к импресии да имаш 300 минути сървърно време при СуперХостинг, това означава че сайтът ти има някакви много лошо написани заявки/скриптове, които товарят излишно. 100% може да се оптимизра и да паднеш на 30 мин.
Наскоро оптимизирах разни заявки към зле направена база и примерно само с добавяне на индекси на няколко места, една заявка от 12 секунди средно време за изпълнение падна на 0,5 сек.
Имай предвид, че смяната на хостинга не е решение, ако смяташ да развиваш сайта още и той да расте. По-добре инвестирай в оптимизация, за да не се окаже след 3 месеца, че трябва да плащаш VPS, а след още 6 да ти трябват още по-сериозни решения. Също така, обикновено подобни проблеми не са линейно обвързани с броя посещения и броя записи в базата, т.е. ако при 8000 импресии и примерно 1000 записа в базата имаш 300 минути процесорно време, то при 16000 импресии и 2000 записа в базата минутите със сигурност няма да са 600, а най-вероятно десетки пъти повече.
 
От: Натоварване - хостинг

Сайтът е на Wordpress и ми е много трудно да хвана кое прави проблем. Дори след спиране на няколко от плъгините, които даваха много заявки към сървъра, нямаше значително подобрение.
 
От: Натоварване - хостинг

Ползваш ли някой кеширащ плъгин? Би ли дал линк към сайта (може и на лс).
 
От: Натоварване - хостинг

Сайтът е iskamdaznam. com. Нямам какво да крия, просто не ми се иска да го спирам и търся начин да го оправя. Ползвам кеширащ плъгин, пробвал съм различни, общо взето все същото. От 2 дена съм спрял половината плъгини, но резултатът е минимален. Мисля да сменя темата с някоя по основна и да го оставя 24 часа така, да видя дали не е и от това, но ме съмнява...
 
Re: От: Натоварване - хостинг

Сайтът е на Wordpress и ми е много трудно да хвана кое прави проблем. Дори след спиране на няколко от плъгините, които даваха много заявки към сървъра, нямаше значително подобрение.
Щом е wordpress, вероятно е някой плъгин. Пробвай за 2-3 дни да ги изключиш всичките.
Някакви други промени по ядрото на wordpress правено ли е? Коя версия ползваш?
И в краен случай, ако не можеш сам да го оптимизираш, може да потърсиш човек с достатъчно познания, който да го направи. Със сигурност има по-добро решение от това да сменяш хоста. Идеята за смяна на хоста ми се струва като наскоро една тема за закупуване на легален уиндоус заради това, че през 2-3 месеца се налагало да се преинсталира. :)
 
От: Натоварване - хостинг

Ами със сигурност трябва да се оптимизира, просто не ми се вярваше наистина чак толкова да е задръстен, но явно е... Ще пробвам различни варианти - мисля и целия сайт да спра за 24 часа и да видя какъв ще е резултата, тъй като имам и други сайтове на хостинга, но те са значително малко в сравнение с този.
 
От: Натоварване - хостинг

Виждам, че ползваш w3 total cache, което мислех и аз да ти препоръчам.
Съветвам те да премахнеш search unleashed. Тествал съм го на продуктивен сайт с 10к уникални посетители и близо 20к ползвания на търсачката, като средното 15 минутно натоварване на процесора без този плъгин беше 2.40, а с него скачаше на 6. Има голяма вероятност именно той да е основния проблем, защото ровичка доста интензивно в mysql-а.
Също така, може да добавиш и wp widget cache, който значително намалява заявките при джаджите, като в твоя случай ми се струва, че по-голямата част от проблемите идват точно от джаджите.
Пробвай с тези две неща и кажи какъв е резултата след ден.
Ако отново няма промяна или тя е прекалено малка, ще ти се наложи да търсиш друга алтернатива - аутсорсване от програмист или най-вероятно ще е прехвърляне на VPS, но предвид месечния бюджет обявен по-горе, това едва ли ще ти е спънка, защото в момента преспокойно, може да намериш страхотни машинки на цена 15-25 долара.

Едит: Забравих да попитам - gzip компресията в w3 total cache включена ли е? Ако е - спри я.

П.П. Разцъках из сайтчето, има доста полезна и интересна информация. Не дей обмисля варианта да го спираш - има бъдеще, а и е доста интересно, поне за мен.
 
Последно редактирано:
Е, спирането на сайта как ще ти помогне за решаването на проблема? Да си представим, че след спирането му, виждаш процесорно време 10 мин. от другите ти сайтове и какво от това? Не си струва подобен експеримент, защото не ти носи никаква полезна информация...
 
От: Натоварване - хостинг

Най добре си хвани човек да ти оправи нещата! Аз имах една джумла, която правеше по 10 000 уникални и 120 000 импресии дневно. Точно на суперхостинг. Тъй като имаше перспектива в сайта, направо си платих за нов скрипт с текущия дизайн! Резултата беше впечатляващ - 50-60 минути от 300-350, при същата натовареност! При тебе като гледам, ако нещата се направят както трябва ще си минеш на най-ниския план.
 
От: Натоварване - хостинг

аз отворих една страница
iskamdaznam.com/web/5899
151 requests
2.8 MB (2.6 MB from cache)
възможно ли е по принцип големите снимки да товарят хостинга

Възможно е, да и за това доста хора препоръчват ползването на nginx като load balancer и статичния контент като картинки/джава скриптове/флаш файлове да минават през него, а php заявките през апачето. Проблема идва от това, че даден apache child процес е задържан за обработка на тази информация, т.е. изпращането му и ако даден потребител използва да речем интернет който е в порядъка на 100 кб/с (не, че вярвам, че все още има такива, но знаеш ли), това означава, че процеса ще обработва тази заявка в продължение на 25 секунди, а останалите заявки ще минават към друг child process.
Наистина не погледнах каква е големината на изпращания от сървъра материал. firefly, смъкни цялата си папка wp-content/uploads/* и с помощта на някой mass picture editor смъкни качеството на картинките на 60% да речем.
 
От: Натоварване - хостинг

Ами първо и аз това си помислих, но от суперхостинг казаха, че в момента не това бил проблемът, а имало много заявки към сървъра от php скриптовете. Насочиха ме да видя статистиката за най-активните файлове и спрях някои плъгини, които видях, че се извикват често.

Сега направих това, което каза ktomov и ще чакам резултата на следващото отчитане.
 
От: Натоварване - хостинг

Най добре си хвани човек да ти оправи нещата! Аз имах една джумла, която правеше по 10 000 уникални и 120 000 импресии дневно. Точно на суперхостинг. Тъй като имаше перспектива в сайта, направо си платих за нов скрипт с текущия дизайн! Резултата беше впечатляващ - 50-60 минути от 300-350, при същата натовареност! При тебе като гледам, ако нещата се направят както трябва ще си минеш на най-ниския план.

т.е махна джумлата ли или само преработиха скрипта
 
От: Натоварване - хостинг

т.е махна джумлата ли или само преработиха скрипта

Цялата джумла махнах, като запазих дизайна. Потребителите даже не забелязаха разликата.
 
Последно редактирано:
От: Натоварване - хостинг

аз имам побен проблем с една джумла на впс. Лоад както е на 2-3 изведнъж скача на над 50 за секунди и впса направо умира. Мислех, че е някой кофти бот и сложих капан за ботове, но продължи (може и да не го засича). от подръжката вдигнаха и рам и увеличиха и кеширането, но продължи. интересноте е, че не се получаваше само в пиков час, в последните дни имам увеличение на трафика, но и след 5- 6 часа. последно в петък правиха подобрения с сървъра и днес беше ок, но май ще си проличи през седмицата. Ако имате някакви идеи за локализация на проблема, които както казах се появява изведнъж и за секунди както работи в нормални граници направо умира.
 
От: Натоварване - хостинг

Откриването на подобно нещо винаги е трудоемка задача. Минавал съм през подобно изпитание и моя проблем беше ddos от някой от конкурентите.
На първо време може да изследваш лог файловете на апачето, като се опиташ да отделиш ip адресите които правят най-много хитове. Графично и с точна статистика - awstats, ще ти даде някаква представа. В последствие пък може да провериш тези адреси, кои страници са посещавали. Напълно възможно е някой "добре" написан скрипт да вкарва потребителя/бота в безкраен цикъл и заради това да се получава подобно натоварване.
След това може да инсталираш едно приложение (което поне на мен ми е сред любимите когато става дума за следене на връзките) tcptrack. Предполагам ползваш CentOS, та процедурата е следната:
Код:
yum install tcptrack
- пакета се инсталира
Код:
tcptrack -i venet0 -r 5 port 80
- venet0 е интерфейса който се ползва поне при мен. За да разбереш в твоя случай кой е, ползвай /sbin/ifconfig. -r 5, ще чака 5 секунди преди да изтрие затворената връзка, което е полезно когато някой паяк обикаля сайта и набързо приключва операцията, а порт 80 - ясно е.
Остава ти да седиш и да гледаш кое ip това в дадения момент в който натоварването започне да се покачва.
Ако ползваш дебиан, убунту сървър или някой от дебиан дериватите, командите са същите, само заменяш yum с apt-get, а при гентоо emerge tcptrack.
До тук с лесната част. Идва ред и на малко по-сложната. Изследвай дали проблема не идва от неправилна заявка към базата данни, като за целта добавиш следните редове в my.cnf:
Код:
log-slow-queries = /var/log/mysql-slow.log
long_query_time = 3
Като направи това, преди да рестартираш mysqld демона, напиши следното в конзолата:
Код:
touch /var/log/mysql-slow.log
(това ще създаде празен файл, иначе mysqld ще ти плюе грешка).
Код:
chmod 777 /var/log/mysql-slow.log
(това ще промени правата на файла, за да може спокойно да се пишат грешките)
След като премине аварията (голямото натоварване), отвори този файл и виж дали има записи в него и коя е била заявката.
Друго важно нещо е да прегледаш как ти е настроено апачето. Keepalive включен ли е? Ако да какъв е периода преди тайм аута? Ако е повече от 3/5 секунди има голяма вероятност процесите ти да увисват.

Абе замислил съм да направя няколко how to видео урока/текстови такива за форума, но съм претрупан с работа и не ми остава време за това. Иначе скоро ще пусна няколко теми с полезни съвети как да се оптимизира работата на впс-а, за да се избегнат подобни деликатни ситуации. Е оптимизация, освен ако самия скрипт не гърми :)

Аз мога да говоря само когато въпроса упре до wordpress, а ти може да се консултираш с Иво Апостолов, защото е напълно възможно някоя добавка (компонент мисля беше в джумла) да прави проблем.
 
От: Натоварване - хостинг

Ето част от статистиката. Аз не знам и какво точно да гледам, понеже не разбирам чак толкова много от тези неща. Тази нощ отново отбеляза покачване на процесорното време на 245, при положние, че от 2 дни са спрени голяма част от плъгините.
awstats2.jpgawstats1.jpgawstars3.jpg
pencil.png
 
От: Натоварване - хостинг

чел съм, че снимките които се оразмеряват динамично примерно тук
iskamdaznam.com/web/6090
доста товарели
спри и фейсбук кутията бави излишно сайта

Дали пък и клиповете не пречат малко
 

Горе