HipHop dla PHP

HipHop dla PHP
Deweloperzy Facebook, Inc.
Pierwsze wydanie 2 lutego 2010 ; 13 lat temu ( 2010-02-02 )
Ostateczne wydanie
Zastąpiony przez HHVM / 2013 ; 10 lat temu ( 2013 )
Magazyn
Napisane w C++ , C , PHP
Następca HHVM
Licencja Licencja PHP
Strona internetowa github.com/facebook/hiphop-php _ _ _  Edit this on Wikidata

HipHop for PHP ( HPHPc ) to wycofany transpilator PHP stworzony przez Facebooka . Używając HPHPc jako kompilatora źródło-źródło , kod PHP jest tłumaczony na C++ , kompilowany do pliku binarnego i uruchamiany jako plik wykonywalny , w przeciwieństwie do zwykłej ścieżki wykonywania kodu PHP, który jest przekształcany w kody operacji i interpretowany . HPHPc składa się głównie z kodów źródłowych C++, C i PHP i jest darmowym oprogramowaniem typu open source rozpowszechniane na licencji PHP .

Pierwotną motywacją stojącą za HipHopem było oszczędzanie zasobów na serwerach Facebooka, biorąc pod uwagę dużą bazę kodu PHP facebook.com. Wraz z postępem rozwoju HipHop zdano sobie sprawę, że HipHop może ogólnie znacznie zwiększyć szybkość aplikacji PHP. Wzrost przepustowości generowania stron internetowych nawet sześciokrotnie zaobserwowano w Zend PHP. Deklarowanym celem HPHPc było zapewnienie wysokiego poziomu kompatybilności dla Zend PHP, gdzie większość programów PHP opartych na Zend działa niezmodyfikowana na HPHPc. HPHPc był pierwotnie open source na początku 2010 roku.

Jako dodatek do HPHPc, inżynierowie Facebooka stworzyli także „tryb programisty” HipHop (zinterpretowana wersja silnika wykonawczego PHP, znana jako HPHPi ) oraz debugger HipHop (znany jako HPHPd ). Te dodatki pozwalają programistom uruchamiać kod PHP za pomocą tej samej logiki, którą zapewnia HPHPc, jednocześnie umożliwiając interaktywne debugowanie kodu PHP poprzez definiowanie zegarków , punktów przerwania , itp. Uruchomienie kodu przez HPHPi daje niższą wydajność w porównaniu z HPHPc, ale korzyści dla programistów były w tamtym czasie warte utrzymywania tych dwóch silników wykonawczych do produkcji i programowania. HPHPi i HPHPd były również otwarte w 2010 roku.

Według wielu opinii HPHPc spełniło swoje cele, zwłaszcza na Facebooku, ponieważ pozwoliło facebook.com działać znacznie szybciej przy mniejszym zużyciu zasobów. Jednak na początku 2013 r. Facebook zrezygnował z HPHPc na rzecz HipHop Virtual Machine (HHVM), która jest silnikiem wykonawczym opartym na kompilacji just-in-time (JIT) dla PHP, również opracowanym przez Facebooka. Było ku temu wiele powodów; jednym z nich była spłaszczona krzywa HPHPc w celu dalszej poprawy wydajności. Ponadto HPHPc nie obsługiwał w pełni języka PHP, w tym funkcji create_function() i eval() konstrukcjom i wymagało to określonego, czasochłonnego i pochłaniającego zasoby procesu wdrażania, który wymagał skompilowania pliku binarnego większego niż 1 GB i rozprowadzenia go na wielu serwerach w krótkim czasie. Ponadto równoległe utrzymywanie HPHPc i HPHPi (co było konieczne ze względu na spójność środowiska produkcyjnego i programistycznego) stawało się uciążliwe. Wreszcie, HPHPc nie był bezpośrednim zamiennikiem Zend, wymagając od zewnętrznych klientów zmiany całego procesu programowania i wdrażania, aby używać HPHPc.

Zobacz też

Linki zewnętrzne