Кошмар ... три седмици или нещо повече. Снощи сънувах списъка с процеси на горната команда на Linux. Apache поглъщаше все повече и повече памет. Като консумира, той консумира ядрото на Linux и се превръща в ядрото на Windows. И не знам защо, преди да се събудя в студена пот, се появи Бил Гейтс, смачкан от сополи. Боже, какъв образ! Не мога да изляза от главата си.
През това време се научих да "опитвам" да оптимизирам както VPS, така и WordPress, за да намаля консумацията на памет. Въпреки че направих някои подобрения (малко за съжаление) Apache продължава да се срива; но ще започна в началото:
Защо VPS?
- За цената: Видях VPS горе-долу на същата цена като хостинг и приложих поговорката „разходка с голямо магаре или не“.
- Чрез учене: Никога не бях опитвал VPS и исках да знам как да го управлявам, какво мога да направя с него. Не бъркате толкова много неща, колкото със специално предназначено и до един момент имате по-малко отговорност и е много по-евтино. И това е логичната стъпка преди управлението на специална такава, в която вие сте напълно сами.
- За обединяване на моите уеб проекти: Имам пет домейна. За всеки имам планове да създам уебсайт с тях или в някои случаи той вече е създаден и онлайн, в друг изчаквам да видя какво ще се случи с VPS, а други се прогнозират само. Наличието на всички уебсайтове на един сървър, тъй като те нямат много посещения, е много, много удобно, както и икономично.
- За спестяване на разходи: Пет домейна, пет хостинга. Въпреки че има много евтини (от едно евро), те винаги ограничават нещо и не ме убеждават.
- За свобода: Възможността да правя и отменям, както ми харесва, накратко, контролът върху (виртуалната) машина е радост.
VPS функции
- RAM: 256 MB
- Дисково пространство: 5 GB
- Месечен трансфер: 150 GB
- Операционна система: CentOS 5
- Контролен панел: Плеск
- И очевидно останалите обичайни функции: Perl, PHP, MySQL и т.н., и т.н. и т.н.
Началото
Когато наех този VPS, бях шибано невеж, така че, разбира се, не знаех много неща за управлението на сървъра, неговата оптимизация и най-вече характеристиките, които трябваше внимателно да се спазват, преди да се наеме нещо (във VPS. В хостинга, Имам достатъчно идея). За щастие беше най-евтиният xD.
От третия или четвъртия ден Apache започна да се проваля. Данните, които получавах както от Plesk, така и от Virtuozzo, ми казваха, че паметта се насища и услугите спират. Разбира се, като невеж създадох билет за доставчика. Отговорът беше бърз (и сега най-логичният) „надстройте вашия VPS до по-висок“. Не разбрах как могат да ми кажат това. Че това е само блог! Че деня, когато достигне 100 посещения, организирам бащиното парти! По дяволите, това не е Digg, нито Светът! Как може да стане така, че само с достъп до главната административна страница (таблото за управление на WordPress), Apache вече да се срине? Как беше възможно?.
В главата ми имаше само една идея: „Тези хостинг искат да получат повече пари от мен“ (Виждайки го сега, в известен смисъл той беше прав). Но тази идея не решава проблема, въпреки че упоритостта ми го превърна в мантра и както при стартирането на Apache или рестартирането на контейнера всичко работеше отново, така остана в продължение на месеци.
Първи опити
Не съм човек, който се отказва лесно. Винаги казвам, че в изчисленията няма нищо невъзможно, но малко бюджет. Така започнах да уча за VPS, WordPress, Apache и т.н. Моят браузър може да потвърди това (използвам Opera), че в момента имам отворени около 50 раздела.
Първото нещо беше да намерим начин да разберем колко памет отнема WordPress. Намерих следния код:
$ memory_used = round (memory_get_usage (1)/1024,1);
echo 'Използвана памет:'. кръгъл (memory_get_usage ()/1024,1). „KB на“. $ memory_used. 'KB';
Този код показва паметта, която е била преди изпълнението на скрипта (която се съхранява в променливата $ memory_used и се поставя в началото на файла) и паметта, консумирана след изпълнението на скрипта (която е поставена в края). Местните данни, които получих, бяха следните:
9 приставки: Използвана памет: 27462 KB от 67,1 KB
Без приставки: Използвана памет: 20468,8 KB от 67,2 KB
Актуализиране на темата: Използвана памет: 21049,1 KB от 67,1 KB (Използване на темата, която в момента имам в блога, замяна на темата по подразбиране)
За съжаление нямам VPS данни, но те не се различават много. В момента консумира 29,5 MB с осем активни приставки (те не са същите приставки, които са променили оттогава) плюс темата.
Тестовете бяха проведени с WordPress 3.0.1 с базата данни, както е инсталирана, под Windows с костюм AppServ без модификации.
Когато видях цифрите, бях изумен: Wordpress консумира почти 20,5 MB! Направих тестове с други версии на WordPress, за да проверя, че случаят е такъв, тоест да проверя, че с преминаването на версиите консумацията на памет се е увеличила. Че това не беше моето нещо, но че е това издънка. Въпреки че тук консумацията на памет може да варира в зависимост от правилата на Apache mod_rewrite, как PHP и MySQL се оптимизират и т.н. Единственият виновник не е WordPress, но е гадно.
Виждайки видяното, беше време да действаме.
WordPress на диета
Знаех, че има няколко приставки, които ви позволяват да кеширате страниците на блоговете и да намалите консумацията на памет и процесор, но винаги съм го виждал в блогове с хиляди посещения, а не в кофти с безплатна тема, която не достига до сто посещения на ден (тъжно, но вярно).
Първият, който се активира в блога, wp-cache, отне ми малко време да го инсталирам, повече поради неопитността ми с кешовете, отколкото нещо друго (вижте колко проста е приставката). В крайна сметка не знам какво ми се случи, не помня, че го деактивирах. Потърсих друг.
WP Super Cache, тези, които говорят добре за него, не лъжат, работи чудесно, малко по-сложно е да конфигурирате от wp-cache, но резултатът е великолепен. Но блогът все още консумира почти 30 MB памет и Apache се срива. Подобри малко стабилността на блога, поне за самия посетител. Но все пак имах същия проблем: веднага щом влязох в Apache Desktop, той щеше да започне.
Преди това тествах всеки от плъгините, за да видя кой причинява срив на Apache веднага щом влязох в администрацията на блога. WordPress.com Stats беше виновникът, стабилността се подобри значително с деактивирането на този плъгин. Няколко дни мислех, че проблемът е решен, нищо не може да бъде по-далеч от истината. Въпреки че блогът консумира по-малко памет, веднага щом направи нещо, което изисква повече усилия от RAM, Apache ще се срине. Просто като влезете няколко пъти в работния плот на блога или активирате приставка, Apache ще се срине. Беше разочароващо.
Един плъгин, за който не знаех, е DB Cache Reloaded. Както показва името му, той ви позволява да кеширате заявките към базата данни, като ви пречи да се свързвате с базата данни всеки път, когато има заявка към нея. Намалете консумацията на ресурси. Добре. Той е активиран и работи чудесно, въпреки че в момента не завършва кеширането на всички заявки. Ще трябва да погледна защо.
Но проблемът продължи, Apache се сриваше. Трябваше да влезете в сървъра.
SSH
Трябва да призная, че никога не съм се свързвал с друг компютър чрез SSH, да чрез VNC и VPN.
Работя предимно с Windows XP SP3, но не отвращавам дистрибуциите на Linux, а точно обратното: във VirtualBox имам инсталирани Debian, CentOS, Ubuntu и ChromeOS и с изключение на проблема с конфигурирането на графичната карта, който все още не съм постигнал ( Мисля, че VirtualBox е този, който не го разпознава и по някаква причина изпраща съвместима графична карта към операционната система с тази, която имам, но ме принуждава да имам разделителна способност 800 × 600).
Е, защо броим това? В допълнение към това защо исках да кажа на някого xD, защото по този начин ще разберете, че след няколко опита за свързване към сървъра с различни програми на Windows, виртуална машина ще започне да се свързва чрез конзолата linux. Благословен да си !. Докато не открих, че това, което ме проваля, е достъпът до пристанището. Невежеството носи щастие!.
Веднъж свързан със сървъра, първото нещо, което направих, беше горната част на машината, за да знам потреблението на RAM (не мляко) в реално време.
Той посочва, че има 512 MB обща RAM и консумираната памет се колебае между 170 и 220 MB, въпреки че в някои може да достигне 270 MB. Проблемът е, че VPS няма 512 MB RAM, а 256 MB; останалите 256 са споделена памет, така че не мога да разчитам, че ще извърши изчислението.
Направих и безплатен -m, за да проверя паметта, но отгоре ми дава повече данни.
Забелязах, че когато сървърът бъде помолен за страница на Apache, той изпълнява четири процеса от себе си, като в различни случаи консумира 12 процента RAM. 10 процента нормално.
Отидете за Apache
Оптимизирайте Apache. Отне ми яйце и половина, за да намеря местоположението на конфигурационните файлове, но когато катастрофирам ... (/ etc/httpd/conf на CentOS). Е, прочетох, че извършването на определени модификации на файла httpd.conf на Apache може да намали консумацията на памет. По подразбиране конфигурацията на Apache е следната:
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
StartServers 5
MinSpareServers 5
MaxSpareServers 10
ServerLimit 30
MaxClients 30
MaxRequestsPerChild 40000
Това не реши много или поне аз не го забелязах. Също така намалих още няколко параметъра, като времето, което Apache чака да затвори постоянна връзка и т.н.
Това все още не се подобри. Нека опитаме базата данни
MySQL
Малко оптимизация направих тук, наистина. Току-що добавих конфигурацията, за да активирам кеша на DB, но не направи много. Възможно е също така, защото приставката WordPress, която кешира заявките, вече го прави. Не знам. Конфигурацията е следната:
query_cache_type = 1
query_cache_limit = 1M
query_cache_size = 8M
PHP
За да оптимизирам PHP, трябваше да инсталирам Eaccelerator и Zend Optimizer на VPS, няколкото ми опита ме накараха да мисля, че не мога да инсталирам нищо друго освен чрез Plesk или което се нуждае от командата yum. Следователно от днес PHP не е оптимизиран, ще трябва да изпратим билет, за да видим дали ми го инсталират ...
Vps
CentOS консумира памет, както всички операционни системи, времената, в които успях да видя консумацията на памет без Apache, беше между 60 и 80 MB. Но не само операционната система консумира RAM, Plesk консумира и своя собствена (около 50 MB), деактивирах антивируса, който консумира 70 MB при всяко стартиране. Но въпреки че VPS се стабилизира, има моменти, когато Apache има четири отворени процеса по 50-60 MB всеки (според най-горната команда). Прекалено.
Опитах се да създам SWAP файл, но командата на swapon не е разрешена, поне от SSH.
ЗАКЛЮЧЕНИЯ
- Продължавам да оценявам различни опции по отношение на оптимизацията на VPS, в момента най-добрият ми актив е Eaccelerator и че те го инсталират във VPS, за да намалят паметта.
- Ще продължа да тествам с някои WordPress плъгини, за да видя как работи.
- Ако се интересувате от наемане на VPS, следете RAM.
- Дори съм обмислял да променя VPS или да го разширя със същата компания или да отида в друга, това ще се види през септември.
- Най-доброто от всичко това: това, което сте научили по пътя. Не само познавам Linux системи малко по-добре, но също така и Apache, PHP, MySQL и Plesk и тяхното администриране.
- Е, какво ще кажете за вас? Какъв опит сте имали с VPS? Какъв съвет можете да ми дадете? или просто какво мислите? Коментарите са ваши ... стига Apache да позволява xD.
ВРЪЗКИ
Оставям ви няколко връзки и по този начин освобождавам браузъра от зареждане, лошо.
- Рисковете от последната мания в кучешката храна, така че те да се хранят здравословно
- Невролингвистично програмиране за отслабване
- Бедност „Лових гълъби, зайци и крадя от овощни градини, за да оцелея“ кошмарът на бездомните
- Почистване на водопроводни тръби за оптимизиране на здравето на птиците -aviNews
- Представяне на книгата; Последната ви диета; Farmaventas - Новини за фармацията и фармацевтите