✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Kuinka asentaa HHVM Ubuntu VPS:ään?

5

Alkuperäisessä VPS :ssäni (Virtual Private Server) oli vain 512M RAM, 1 ydin ja 10G HDD. Myöhemmin päivitin 2 ytimeen, 1G RAM:iin ja 20G HDD:hen muistin loppumisen vuoksi. Muutama päivä sitten liikenne kuitenkin kasvaa (suurin osa niistä tulee boteilta ), VPS tuskin selvisi ja siksi päivitin taas 3 ytimeen ja 2 Gt RAM:iin.

VPS:n PHP-versio on 5.5, joten siinä on sisäänrakennettu kiihdytin, OpCache, joka tallentaa PHP-käyttökoodin välimuistiin. Opcache esitellään korvaamaan APC (Another PHP Cache), joka on avoimen lähdekoodin projekti, jota käytetään pääasiassa PHP-koodin nopeuttamiseen ennen versiota 5.4.x tai aiempia versioita. HHVM toimii samalla tavalla. Se kääntää PHP-koodin kokoonpanoksi ensimmäisellä kerralla ja sitten kokoonpanokoodi, jos se löytyy ja on edelleen voimassa, suoritetaan tulkitsematta samaa PHP-koodia uudelleen. Tämä idea on hyvin samanlainen kuin .NET-alusta, jossa .NET-kielet, kuten C#, käännetään ja käännetään alkuperäiseen koodiin ajonaikaisessa (JIT = Just In Time) -kääntäjässä. Tästä syystä .NET-sovellukset toimivat aluksi hitaasti, mutta yleensä nopeutuvat myöhemmin, koska ne käännetään ajon aikana alkuperäiseen koodiin ja tallennetaan välimuistiin.

Tietysti on muitakin uusia ominaisuuksia. Uusi kieli [Hack] perustuu PHP:hen. Tiedämme, että PHP-kieli on löyhätyyppinen kieli, mikä tarkoittaa, että sinun ei tarvitse määrittää tyyppiä (itse asiassa ei ole mitään tapoja tehdä sitä erikseen) millekään muuttujalle. Tyyppejä käytetään, kun niitä tarvitaan. Hack-kieli on asteittainen kieli, joka tarkoittaa, että kun määrität tyypin ensimmäisen kerran, tyyppiä ei voi muuttaa. Tämä auttaa edistämään vankkaa koodia ja parantamaan kehitystehokkuutta. Tämä on melko iso aihe, joka pitäisi esitellä erillisessä postauksessa.

HHVM:n asennus Linuxiin (minun tapauksessani Ubuntuun) on melko yksinkertaista.

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

Voit joko ladata valmiiksi käännetyt binaarit tai lähdekoodin ja kääntää sen paikallisesti. Seuraavat asennukset valmiiksi käännetystä binaarisesta arkistosta.

wget -O -

Voit sitten suorittaa seuraavan komennon määrittääksesi apache- tai ngix-palvelimen.

/usr/share/hhvm/install_fastcgi.sh

Itse asiassa hhvm:n asentamisen jälkeen voit käyttää sitä komentorivillä PHP-lähdekoodin suorittamiseen seuraavasti:

hhvm hello-world.php

HHVM-komentoriviparametrit

Voimme poistaa Apache-palvelimen väliaikaisesti käytöstä:

sudo service apache2 stop

Ja suorita hhvm-palvelin kuuntelemalla porttia 80 (joten sinun on pysäytettävä muut palvelimet, jotka kuuntelevat samaa porttia):

hhvm -m server

Ja sitten voit testata PHP-koodia selaimessa, joka välitetään HHVM-palvelimelle.

Jos saat 404 ei löydy -virheen asennuksen ja määrityksen jälkeen, sinun on luultavasti lisättävä seuraava rivi tiedostoon /etc/hhvm/server.ini

hhvm.server.fix_path_info = true

Ja käynnistä hhvm uudelleen käyttämällä sudo-palvelua hhvm restart.

Olen testannut ja seurannut palvelinta jonkin aikaa ja rehellisesti sanottuna en nähnyt mitään eroa luultavasti huomaamattoman liikenteen takia. Kuitenkin komennolla htop luetellut prosessit muuttuivat apache2 -k startista hhvm: ksi

Voimme myös luoda PHP-tiedoston, jossa on seuraava sisältö ja testata, toimiiko HHVM selaimessa:

WordPress-sivustoja voidaan käyttää HHVM:llä, mutta HHVM ei näytä tukevan GB2312-koodausta (ja ehkä muitakin), koska se sotkee ​​merkkejä. Kuvagallerian PHP – koodi näytti tyhjän sivun HHVM:llä, enkä ole vieläkään selvittänyt syytä.

Päätin silti päästä eroon HHVM:stä, nykyinen paketti: Apache2 + PHP5.5 + Mysql toimii melko hyvin. Ehkä tuon HHVM:n takaisin tulevaisuudessa, jos VPS kokee jälleen valtavaa liikennettä.

sudo service hhvm stop sudo apt-get remove hhvm

Meidän on palautettava apache2-asetukset HHVM-asennuksen poistamisen jälkeen.

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

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja