Instalarea HHVM și Nginx / Apache pe Ubuntu / Debian / Mint

HHVM , sau mașina virtuală HipHop , este o mașină virtuală pentru PHP dezvoltată de Facebook pentru a îmbunătăți performanțele aplicațiilor PHP. Spre deosebire de timpul de rulare PHP obișnuit, HHVM folosește un compilator just-in-time pentru a converti scripturile în cod de mașină nativ. Drept urmare, valorile de referință ale terților au arătat la fel de mult o reducere a timpului de încărcare de 3x peste PHP-FPM 5.4 pentru sarcini precum încărcarea unui site web Drupal obișnuit.

Un cuvânt de avertizare

Deși este foarte rapid, HHVM este încă în curs de dezvoltare și este posibil să nu execute unele programe în mod corespunzător, sau să nu suporte unele extensii necesare. Continuați cu precauție. Pentru o listă de extensii PHP integrate, acceptate, urmați acest link .

Distribuții acceptate

  • Ubuntu
    • 10.04 (lucid)
    • 12.04 (precis)
    • 14.04 (încredere)
  • Debian
    • 8 (jessie)
    • 7 (Wheezy)
  • Mentă
    • 16 (petra)

Acestea sunt distribuțiile pe care le vor suporta Facebook și întreținătorii HHVM și distribuțiile care sunt încă întreținute activ pentru servere. Deși este posibil să instalați HHVM pe un server Ubuntu 14.10, acest lucru nu este acceptat (la momentul scrierii) de către HHVM și poate duce la întâmplări rele.

cerinţe

  1. Una dintre distribuțiile de mai sus.
  2. Acces rădăcină pentru instalarea pachetelor de configurare.

Instalarea HHVM

Instalarea HHVM în sine este rapidă și nedureroasă, implicând nu mai mult decât configurarea depozitelor și instalarea.

Ubuntu

Doar pentru utilizatorii lucid (10.04) și precis (12.04): Ambele versiuni ale Ubuntu necesită adăugarea de depozite. Pentru a eficientiza procesul, trebuie să ne asigurăm că add-apt-repositorycomanda este gata. Dacă nu utilizați lucid sau precis, treceți peste acest set de comenzi. In caz contrar:

sudo apt-get update
sudo apt-get install python-software-properties

Doar pentru utilizatorii lucid (10.04): HHVM are câteva alte dependențe care nu sunt incluse în sistemul de bază sau în depozite.

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8 g++-4.8 gcc-4.8-base

Numai pentru utilizatori precise (12.04): va trebui să adăugați și un depozit pentru a obține bibliotecile necesare pentru a rula HHVM.

sudo add-apt-repository ppa:mapnik/boost

HHVM necesită, de asemenea, instalarea unei chei GPG pentru depozitul său.

wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -

Odată făcut acest lucru, putem adăuga depozitul HHVM într-un sources.listfișier.

echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list

Asigurați-vă că înlocuiți DISTRIBUTION_VERSIONnumele de cod al versiunii Ubuntu: lucid, precis sau de încredere.

Acum putem instala.

sudo apt-get update
sudo apt-get install hhvm

Și am terminat!

Debian

Instalarea HHVM pe Debian este similară cu Ubuntu, dar mai puțin fragmentată în distribuții. Veți avea nevoie doar de un set de comenzi pentru jessie sau wheezy.

wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
echo deb http://dl.hhvm.com/debian DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list
sudo apt-get update
sudo apt-get install hhvm

Asigurați-vă că înlocuiți DISTRIBUTION_VERSIONpe a doua linie cu numele de cod, jessie sau Wheezy al versiunii dvs. Debian. HHVM ar trebui instalat acum.

Mentă

Instalarea Mint este, de asemenea, foarte asemănătoare cu Debian, prin faptul că este simplificată.

wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
echo deb http://dl.hhvm.com/mint petra main | sudo tee /etc/apt/sources.list.d/hhvm.list
sudo apt-get update
sudo apt-get install hhvm

Deoarece petra este singura distribuție de mentă acceptată în acest moment, asta este!

Configurarea cu Apache / Nginx

Cu HHVM vine un script de configurație extraordinar care configurează automat un handler CGI pentru oricare server.

Dacă utilizați Nginx, asigurați-vă că editați fișierul de configurare al serverului dvs. (implicit /etc/nginx/sites-available/default) pentru a dezactiva procesarea FastCGI. Căutați o secțiune ca cea următoare și asigurați-vă că nu există sau este complet comentat (adăugând #la începutul fiecărei linii din secțiune):

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
#       fastcgi_split_path_info ^(.+\.php)(/.+)$;
#       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
#       # With php5-cgi alone:
#       fastcgi_pass 127.0.0.1:9000;
#       # With php5-fpm:
#       fastcgi_pass unix:/var/run/php5-fpm.sock;
#       fastcgi_index index.php;
#       include fastcgi_params;
#}

Dacă utilizați Apache, nu este nimic specific pentru tine.

După aceea, pur și simplu rulați următorul script.

sudo /usr/share/hhvm/install_fastcgi.sh

Testarea HHVM

Apache sau Nginx ar trebui să fie configurate și repornite automat, iar HHVM ar trebui să fie executat pe serverul dvs. Pentru a-l testa, puteți crea un fișier ca acesta:

<?php phpinfo();

Și căutați „HipHop” sau „HHVM” sau puteți rula un script ca acesta:

<?php if(defined('HHVM_VERSION')) { echo 'HHVM works!'; }

Dacă „HHVM funcționează!” apare, atunci sunteți toate setate!

Lasă un comentariu

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe