2014-03-24 9 views
5

나는 HipHop Virtual Machine에 관한 독서로 나를 안내하는 Facebook의 Hack에 대해 읽었습니다. 나는 이것을 더 잘 이해하기를 원했고 명확한 정의를 찾을 수 없었다. Wikipedia에서는 다음과 같이 정의합니다. HipHop for PHP (HipHop로 단축)는 Facebook에서 만든 일련의 PHP 실행 엔진 및 개선점을 설명합니다. 나는 PHP 엔진이 무엇인지 이해하지 못한다 ...HHVM 및/또는 PHP 실행 엔진은 정확히 무엇입니까?

그래서 내 질문은 다음과 같다. 정확하게 "PHP 실행 엔진"은 무엇인가? 그리고 PHP 응용 프로그램의 이점을 정확히 알고 있습니까?

감사합니다.

답변

9

php.net에서 다운로드 한 표준 (젠드) 엔진으로 PHP 코드를 실행할 수 있습니다. WAMP, MAMP 또는 기타 사전 패키지 된 PHP & MySQL을 운영 체제 패키지로 다운로드하는 경우 이것이 사용자가 얻는 것입니다.

PHP 코드를 HipHop으로 실행할 수 있습니다 ([1] 대부분).

사용중인 것은 최종 사용자에게는 효과적으로 보이지 않아야합니다. 개발자와 운영 팀은 알아야 할 것입니다.

트래픽이 많은 사이트를 운영하는 경우 HipHop을 사용할 수 있습니다. HipHop은 PHP의 모든 기능을 지원하지는 않지만 더 빨리 실행됩니다. 또한 주요 PHP 배포판에서 사용할 수없는 몇 가지 새로운 기능이 유형 힌팅과 관련되어 있습니다. 이것들은 버그를 검사하는 코드를 읽는 데 꽤 매력적인 도구를 제공합니다.

이유는 당신이 힙합을 사용할 수 있습니다 :

  • 성능 힙합 사용할 정적 분석 도구가 팀에 힙합에
  • 새로운 기능을 심각한 가치가 당신
  • 에 대한 큰 문제이지만, Zend PHP가 아니라 귀하의 팀에게 매력적입니다.

이유는 젠드 PHP 당신은 힙합을 사용할 수 없습니다 확장이 필요

  • 을 사용할 수 있습니다 (생각, 거기에 확장 많이있다 : GD, 컬, 이미지 매직 등 많은 사용할 수 있습니다 지금 HipHop, 많은 것은 아닙니다).
  • 코드 또는 프레임 워크에서 지원되지 않는 기능을 사용하고 있습니다.
  • 현재 웹 서버 & PHP 스택을 호스팅하는 데 많은 전문 지식이 있으며 처음부터 시작하고 싶지는 않습니다.

이 포스팅은 해킹의 차이 대 일부 HHVM로 전환하고, 아래로 좋은 실행 제공 : http://www.marco.org/2014/03/21/hack

[1] 회원님이 일반 PHP 엔진을 실행할 수있는 모든 코드는 현재 힙합에서 작동합니다. 그들은 대부분의 문제에 대해 노력하고 있습니다. 일부는 수정하지 않기로 결정했습니다. 변수 변수는 예를 들어 $$ var의 예일 수 있습니다.

+0

우수 답변, 감사합니다. – rambossa

+2

Re [1] - HHVM은 표준 PHP 언어와 해킹 언어 모두를위한 런타임입니다. Hack은 해킹 코드에서 $$ var와 같은 PHP의 특정 기능을 금지하지만 HHVM은 PHP 코드 실행시 해당 기능을 허용합니다. –