✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kuidas seadistada HHVM-i Ubuntu VPS-is?

6

Minu esialgsel VPS -il (virtuaalne privaatserver) oli ainult 512M RAM, 1 tuum ja 10G HDD. Hiljem täiendasin mälu tühjenemise tõttu 2-tuumalisele, 1G RAM-ile ja 20G HDD-le. Paar päeva tagasi aga liiklus kasvab (suurem osa neist on robotitelt ), VPS sai vaevu hakkama ja seetõttu uuendasin uuesti 3 tuuma ja 2GB RAM-i peale.

VPS-i PHP versioon on 5.5 ja seega on sellel sisseehitatud kiirendi OpCache, mis salvestab PHP opkoodi vahemällu. Opcache võetakse kasutusele, et asendada APC (Another PHP Cache), mis on avatud lähtekoodiga projekt, mida kasutatakse peamiselt PHP koodi kiirendamiseks enne versiooni 5.4.x või varasemaid versioone. HHVM töötab sarnaselt . See kompileerib PHP-koodi esmalt komplektiks ja seejärel käivitatakse koostekood, kui see leitakse ja endiselt kehtib, ilma sama PHP-koodi uuesti tõlgendamata. See idee on väga sarnane .NET-platvormiga, kus .NET-i keeled, nagu C#, tõlgitakse ja kompileeritakse käitusajal (JIT = Just In Time) kompilaatoris. Seetõttu töötavad .NET-i rakendused alguses aeglaselt, kuid kipuvad hiljem kiirenema, kuna need kompileeritakse käitusajal algkoodiks ja salvestatakse vahemällu.

Muidugi on ka muid uusi funktsioone. Uus keel [Hack] põhineb PHP-l. Teame, et PHP keel on lõdvalt tüüpi keel, mis tähendab, et te ei pea ühegi muutuja jaoks tüüpi määrama (tegelikult ei saa seda selgesõnaliselt teha). Tüüpe kasutatakse siis, kui see on vajalik. Häkkimiskeel on järkjärguline tüüp, mis tähendab, et esimest korda tüübi määratlemisel ei saa tüüpi muuta. See aitab edendada tugevat koodi ja parandab arenduse tõhusust. See on pigem suur teema, mida tuleks eraldi postituses tutvustada.

HHVM-i installimine Linuxile (minu puhul Ubuntule) on üsna lihtne.

root@uploadbeta:/var/www/helloacm.com/htdocs/hhvm# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description:    Ubuntu 14.04.1 LTS Release:        14.04 Codename:       trusty

Võite alla laadida eelnevalt kompileeritud binaarfailid või lähtekoodi ja kompileerida selle kohapeal. Järgmised installid eelkompileeritud binaarhoidlast.

wget -O -

Seejärel saate apache- või ngix-serveri konfigureerimiseks käivitada järgmise käsu.

/usr/share/hhvm/install_fastcgi.sh

Tegelikult saate pärast hhvmi installimist kasutada seda käsureal PHP lähtekoodi käivitamiseks, näiteks järgmiselt:

hhvm hello-world.php

HHVM käsurea parameetrid

Saame Apache serveri ajutiselt keelata:

sudo service apache2 stop

Ja käivitage hhvm-server, kuulates pordi 80 kaudu (nii et peate peatama teised serverid, mis kuulavad sama porti):

hhvm -m server

Seejärel saate brauseris testida PHP koodi, mis edastatakse HHVM serverile.

Kui pärast installimist ja seadistamist ilmneb tõrge 404 ei leitud, peate tõenäoliselt lisama faili /etc/hhvm/server.ini järgmise rea

hhvm.server.fix_path_info = true

Ja taaskäivitage hhvm, kasutades sudo teenust hhvm restart.

Olen serverit mõnda aega testinud ja jälginud ning ausalt öeldes ei näinud mingit vahet ilmselt märkamatu liikluse tõttu. Käsuga htop loetletud protsessid aga muutusid apache2 -k start asemel hhvm -iks

Samuti saame luua järgmise sisuga PHP-faili ja testida, kas HHVM brauseris töötab:

WordPressi saite saab kasutada HHVM-iga, kuid näib, et HHVM ei toeta GB2312 kodeeringut (ja võib-olla ka teisi), kuna see ajab tähemärkidega sassi. Fotogalerii PHP kood näitas HHVM -i kasutades tühja lehte ja ma pole siiani põhjust välja selgitanud.

Otsustasin siiski HHVM-ist lahti saada, praegune pakett: Apache2 + PHP5.5 + Mysql töötab päris hästi. Võib-olla toon tulevikus HHVM-i tagasi, kui VPS kogeb taas tohutut liiklust.

sudo service hhvm stop sudo apt-get remove hhvm

Peame pärast HHVM-i desinstallimist taastama apache2 sätted.

sudo a2dismod proxy_fcgi sudo a2dismod proxy rm /etc/apache2/mods-enable/hhvm*.conf sudo service apache2 restart

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem