ПредишенСледващото

Същността на проблема лежи в това, че сървърът работи, онлайн игра, написана на PHP.
Така вид и мощен сървър и не е писано в тромавите ръце, но сървърът е затаил дъх, още малко и наистина лъже. Невъзможно е да се работи, дори и конзолни спирачки.

Погледнато натоварване, тя се преобърне средно натоварване: 10.54, 10.28, 9.96

Мислех, че, как мога да го оправя. За да се оптимизира работата на този сайт, че е необходимо да се разбере как PHP.

Фактът, че PHP не е просто скрипт с инструкции за дадена програма. Същността му се състои в това, че всеки сценарий преминава през няколко етапа, преди резултатът за връщане:

  1. Сценарият е преведен на байткод
  2. извършва
  3. резултат О сървъра

Вторият и третият курс, но първият е познат на програмистите до по-сложни езикови от PHP. Байткод вече е набор от инструкции, всеки еквивалентен на една или повече инструкции за монтаж. Този код работи в десетки пъти по-бързо от един скрипт, който работи програмата. Само един проблем за превод на сценария в байт код консумира много ресурси за един сценарий, разбира се, това са глупости, но когато има десетки и стотици пътувания до сървъра, че ресурсите на сървъра след това вече започват да се използват в nemerenoe количества.

Има начин. За да не се губи ресурси за постоянно превода сценария в байт код, можете да съхранявате често използваните скриптове вече са в такова състояние, че да намали значително разхода на сървъра ресурс.

За да направите това, има много програми, реших да използвам един от тях - това eAccelerator.

Това е удобно, лесно конфигуриране модул за PHP.

Инсталиране eAccelerator

И така, започнете инсталацията. Свържете се със сървъра чрез SSH добре, или ако има пряк достъп, отворете конзолата.

Аз създадете папка / ЮЕсАр / местни / eAccelerator. , в който работим и да го давате

Отидете до директорията eaccelerator-0.9.5.3:

Вариант -с-eaccelerator споделен-памет е необходима, за да може да се използва API eAccelerator. Пълният списък от опции.

Всъщност сега модулът е готов и инсталира в папката / ЮЕсАр / ИЪ / PHP / модули /. в което са монтирани всички модули на PHP

Сега е време да се свържете модула и го конфигурирате, отколкото току-що.

Файлове за свързване на PHP модули са php.d. папка При изтегляне на Apache, което чете всички фаловете с разширение INI тази папка.

Описание на основната конфигурация атрибути eAccelerator

Размер на кеша общата памет разположен в мегабайта.

Директория за кеша на диска. eAccelerator магазини указаното двоично представяне на кода на сесията и други данни.

Тази опция може да се включва и изключва eAccelerator. Стойността 1 - за, 0 - изключен.

Това показва времето в секунди, след което не се използва за дълъг код, за да бъде изтрита от общата памет при надвишаване на размера на паметта разпределени.

По подразбиране тази опция е изключена, препоръчваме да зададете стойност 60-300 с голям брой файлове и 900-1800 с малък брой файлове.

Когато eAccelerator няма достатъчно налична памет, той се опитва да изтрие информацията от старите, ако предишния опит е направен преди повече "shm_prune_period" секунди. Стойността по подразбиране е "0", в която eAccelerator няма да се опитате да премахнете стари данни от паметта.

Параметрите показват възможните начини за водене eAccelerator кеш.
Възможните стойности са:

  • shm_and_disk - кеш данни в споделена памет и на диска (по подразбиране);
  • SHM - кеш данни в споделена памет или на диск, ако е споделена памет или размер по-голям от данни "eaccelerator.shm_max";
  • shm_only - кеш данни в споделена памет;
  • disk_only - от кеша на диска;
  • никой не се кешират данните.

Сега създадете папка за кеш паметта, която е посочено в eaccelerator.cache_dir на директива - / TMP / eaccelerator и я дава право за записване

Всъщност настройка е завършена, сега рестартирайте Apache:

заключение

Всъщност, това, което го е дал. Аз всъщност наистина не очаквах такъв резултат, но натоварването на сървъра се намалява десетократно.

средно натоварване: 0.91, 0.88, 0.72

Свързани статии

Подкрепете проекта - споделете линка, благодаря!