Μια προειδοποίηση
Υποστηριζόμενες Διανομές
Απαιτήσεις
Εγκατάσταση HHVM
Διαμόρφωση με Apache/Nginx
Δοκιμή HHVM
Το HHVM , ή το HipHop Virtual Machine , είναι μια εικονική μηχανή για PHP που αναπτύχθηκε από το Facebook για τη βελτίωση της απόδοσης των εφαρμογών PHP. Σε αντίθεση με τον κανονικό χρόνο εκτέλεσης της PHP, το HHVM χρησιμοποιεί έναν μεταγλωττιστή just-in-time για να μετατρέψει σενάρια σε εγγενή κώδικα μηχανής. Ως αποτέλεσμα, τα σημεία αναφοράς τρίτων έχουν δείξει έως και 3 φορές μείωση του χρόνου φόρτωσης σε σχέση με το PHP-FPM 5.4 για εργασίες όπως η φόρτωση ενός κανονικού ιστότοπου Drupal.
Μια προειδοποίηση
Αν και είναι πολύ γρήγορο, το HHVM είναι επίσης υπό ανάπτυξη και ενδέχεται να μην εκτελεί σωστά κάποιο λογισμικό ή μπορεί να μην υποστηρίζει ορισμένες απαραίτητες επεκτάσεις. Προχωρήστε με προσοχή. Για μια λίστα με τις υποστηριζόμενες, ενσωματωμένες επεκτάσεις PHP, ακολουθήστε αυτόν τον σύνδεσμο .
Υποστηριζόμενες Διανομές
- Ubuntu
- 10.04 (διαυγές)
- 12.04 (ακριβής)
- 14.04 (έμπιστος)
- Debian
- Μέντα
Αυτές είναι οι διανομές που θα υποστηρίξουν το Facebook και οι συντηρητές HHVM, καθώς και οι διανομές που εξακολουθούν να διατηρούνται ενεργά για διακομιστές. Αν και είναι δυνατό να εγκαταστήσετε το HHVM σε διακομιστή Ubuntu 14.10, αυτό δεν υποστηρίζεται (τη στιγμή της σύνταξης) από το HHVM και μπορεί να οδηγήσει σε κακά πράγματα.
Απαιτήσεις
- Μία από τις παραπάνω διανομές.
- Πρόσβαση ρίζας για διαμόρφωση εγκατάστασης πακέτων.
Εγκατάσταση HHVM
Η εγκατάσταση του ίδιου του HHVM είναι γρήγορη και ανώδυνη, δεν περιλαμβάνει πολλά περισσότερα από τη διαμόρφωση των αποθετηρίων και την εγκατάσταση.
Ubuntu
Μόνο για διαυγείς (10.04) και ακριβείς (12.04) χρήστες: Και οι δύο εκδόσεις του Ubuntu απαιτούν την προσθήκη αποθετηρίων. Για να απλοποιήσουμε τη διαδικασία, πρέπει να βεβαιωθούμε ότι η add-apt-repository
εντολή είναι έτοιμη. Εάν δεν χρησιμοποιείτε διαυγή ή ακριβή, παραλείψτε αυτό το σύνολο εντολών. Σε διαφορετική περίπτωση:
sudo apt-get update
sudo apt-get install python-software-properties
Μόνο για χρήστες διαυγούς (10.04): Το HHVM έχει μερικές ακόμη εξαρτήσεις που δεν περιλαμβάνονται στο βασικό σύστημα ή στα αποθετήρια.
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
Μόνο για ακριβείς (12.04) χρήστες: Θα χρειαστεί επίσης να προσθέσετε ένα αποθετήριο για να αποκτήσετε βιβλιοθήκες που απαιτούνται για την εκτέλεση του HHVM.
sudo add-apt-repository ppa:mapnik/boost
Το HHVM απαιτεί επίσης την εγκατάσταση ενός κλειδιού GPG για το αποθετήριο του.
wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
Μόλις γίνει αυτό, μπορούμε να προσθέσουμε το αποθετήριο του HHVM σε ένα sources.list
αρχείο.
echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list
Βεβαιωθείτε ότι έχετε αντικαταστήσει DISTRIBUTION_VERSION
με το κωδικό όνομα της έκδοσης του Ubuntu: διαυγές, ακριβές ή αξιόπιστο.
Τώρα μπορούμε να εγκαταστήσουμε.
sudo apt-get update
sudo apt-get install hhvm
Και τελειώσαμε!
Debian
Η εγκατάσταση HHVM στο Debian είναι παρόμοια με το Ubuntu, αλλά λιγότερο κατακερματισμένη στις διανομές. Θα χρειαστείτε μόνο ένα σύνολο εντολών για jessie ή 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
Φροντίστε να αντικαταστήσετε DISTRIBUTION_VERSION
στη δεύτερη γραμμή με το κωδικό όνομα, jessie ή wheezy της έκδοσης του Debian. Το HHVM θα πρέπει τώρα να εγκατασταθεί.
Μέντα
Η εγκατάσταση Mint είναι επίσης πολύ παρόμοια με το Debian στο ότι είναι απλοποιημένη.
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
Δεδομένου ότι το petra είναι η μόνη υποστηριζόμενη διανομή Mint αυτή τη στιγμή, αυτό είναι!
Διαμόρφωση με Apache/Nginx
Με το HHVM έρχεται ένα εξαιρετικό σενάριο διαμόρφωσης που ρυθμίζει αυτόματα έναν χειριστή CGI για οποιονδήποτε διακομιστή.
Εάν χρησιμοποιείτε το Nginx, φροντίστε να επεξεργαστείτε το αρχείο διαμόρφωσης του διακομιστή σας (από προεπιλογή /etc/nginx/sites-available/default
) για να απενεργοποιήσετε την επεξεργασία FastCGI. Αναζητήστε μια ενότητα όπως η παρακάτω και βεβαιωθείτε ότι είτε δεν υπάρχει είτε είναι πλήρως σχολιασμένη (προσθέτοντας #
στην αρχή κάθε γραμμής της ενότητας):
# 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;
#}
Εάν χρησιμοποιείτε Apache, δεν υπάρχει τίποτα συγκεκριμένο για να κάνετε.
Μετά από αυτό, απλώς εκτελέστε το ακόλουθο σενάριο.
sudo /usr/share/hhvm/install_fastcgi.sh
Δοκιμή HHVM
Το Apache ή το Nginx θα πρέπει να ρυθμιστούν και να επανεκκινηθούν αυτόματα και το HHVM θα πρέπει τώρα να εκτελείται στον διακομιστή σας. Για να το δοκιμάσετε, μπορείτε είτε να δημιουργήσετε ένα αρχείο όπως αυτό:
<?php phpinfo();
Και αναζητήστε "HipHop" ή "HHVM", ή μπορείτε να εκτελέσετε ένα σενάριο όπως αυτό:
<?php if(defined('HHVM_VERSION')) { echo 'HHVM works!'; }
Εάν το "HHVM λειτουργεί!" εμφανίζεται, τότε είστε έτοιμοι!