HipHop dla PHP - HipHop for PHP

Hiphop dla PHP
Deweloper(zy) Facebook, Inc.
Pierwsze wydanie 2 lutego 2010 ; 11 lat temu ( 2010-02-02 )
Wersja ostateczna
Zastąpiony przez HHVM /2013 ; 8 lat temu ( 2013 )
Magazyn
Napisane w C++ , C , PHP
Następca HHVM
Licencja Licencja PHP
Strona internetowa github .com /facebook /hiphop-php Edytuj to na Wikidanych

HipHop for PHP ( HPHPc ) to wycofany transpiler PHP stworzony przez Facebooka . Używając HPHPc jako kompilatora źródła do źródła , kod PHP jest tłumaczony na C++ , kompilowany do postaci binarnej i uruchamiany jako plik wykonywalny , w przeciwieństwie do zwykłej ścieżki wykonania kodu PHP, która jest przekształcana w kody operacyjne i interpretowana . HPHPc składa się głównie z kodów źródłowych C++, C i PHP i jest darmowym oprogramowaniem o otwartym kodzie źródłowym, rozpowszechnianym na licencji PHP .

Pierwotną motywacją HipHop 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 znacznie zwiększyć ogólną szybkość aplikacji PHP. W przypadku Zend PHP zaobserwowano wzrost przepustowości generowania stron internetowych o współczynniki do sześciu . Deklarowanym celem HPHPc było zapewnienie wysokiego poziomu kompatybilności dla Zend PHP, gdzie większość programów PHP opartych na Zend działa bez modyfikacji 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, znanego jako HPHPi ) oraz debugger HipHop (znany jako HPHPd ). Te dodatki umożliwiają programistom uruchamianie kodu PHP za pomocą tej samej logiki dostarczonej przez HPHPc, jednocześnie umożliwiając interaktywne debugowanie kodu PHP poprzez definiowanie zegarków , punktów przerwania itp. Uruchamianie kodu przez HPHPi daje niższą wydajność w porównaniu z HPHPc, ale korzyści dla programistów były , w tym czasie warto było utrzymywać te dwa silniki wykonawcze do produkcji i rozwoju. HPHPi i HPHPd również były otwarte w 2010 roku.

Według wielu kont HPHPc spełniło swoje cele, zwłaszcza w obrębie Facebooka, ponieważ pozwoliło facebook.com działać znacznie szybciej przy mniejszym zużyciu zasobów. Jednak na początku 2013 r. Facebook wycofał HPHPc na rzecz HipHop Virtual Machine (HHVM), która jest opartym na kompilacji just-in-time (JIT) silnikiem wykonawczym dla PHP, również opracowanym przez Facebooka. Powodów było wiele; jednym z nich była spłaszczona krzywa HPHPc dla dalszych ulepszeń wydajności. Ponadto HPHPc nie wspierał w pełni języka PHP, łącznie z konstrukcjami create_function()i eval(), a także wymagał czasochłonnego i czasochłonnego procesu wdrażania, który wymagał skompilowania i rozesłania w krótkim czasie pliku binarnego o rozmiarze większym niż 1 GB na wiele serwerów. Ponadto równoległe utrzymywanie HPHPc i HPHPi (tak jak było to konieczne, aby zapewnić spójność środowisk produkcyjnych i programistycznych) stawało się kłopotliwe. Wreszcie, HPHPc nie był bezpośrednim zamiennikiem Zend, wymagając od zewnętrznych klientów zmiany całego procesu rozwoju i wdrażania w celu korzystania z HPHPc.

Zobacz też

Bibliografia

Zewnętrzne linki