HHVM (HipHop Virtual Machine) vs PHP-FPM

Need advice about which tool to choose?Ask the StackShare community!

HHVM (HipHop Virtual Machine)

148
136
+ 1
95
PHP-FPM

112
119
+ 1
0
Add tool

HHVM (HipHop Virtual Machine) vs PHP-FPM: What are the differences?

Key Differences between HHVM and PHP-FPM

HHVM (HipHop Virtual Machine) and PHP-FPM are both alternative execution engines for PHP-based applications. While they serve similar purposes, there are several key differences between the two.

  1. Performance: One of the significant differences between HHVM and PHP-FPM is performance. HHVM, developed by Facebook, is known for its superior performance and efficiency. It accomplishes this by using a just-in-time (JIT) compilation technique that converts PHP code into optimized machine code, resulting in faster execution. In contrast, PHP-FPM, which stands for PHP FastCGI Process Manager, relies on the standard PHP interpreter, making it comparatively slower.

  2. Compatibility: Another difference lies in compatibility. PHP-FPM is highly compatible with the vast majority of PHP applications and frameworks. It can run almost any PHP-based application without any significant issues. On the other hand, HHVM, although compatible with many PHP applications, may require modifications and adjustments to function correctly. Some PHP extensions and libraries may not be compatible with HHVM, leading to potential compatibility issues.

  3. Language Features: HHVM and PHP-FPM also differ in the language features they support. PHP-FPM supports the full range of PHP language features, including the latest PHP versions and language enhancements. HHVM, however, has evolved to introduce its own set of additional language features, called Hack. Hack supports features like strict typing, asynchronous programming, and various other modern language constructs. These language enhancements can provide developers with more flexibility and productivity, but they also require learning and adopting the Hack-specific syntax.

  4. Community and Support: The community and support for HHVM and PHP-FPM also differ. PHP-FPM benefits from being the default and widely-used PHP interpreter, making it more popular and having an extensive support network. Numerous online resources, forums, and communities are available for PHP-FPM, providing ample assistance to developers. While HHVM also has a community and support base, it is comparatively smaller and more niche. Finding specific help for HHVM-related issues might be more challenging.

  5. Development Activity: The development activity and updates for HHVM and PHP-FPM differ significantly. PHP-FPM is actively developed as part of the PHP project and benefits from the continuous updates and improvements of the PHP language. HHVM, however, has seen a decline in development and popularity in recent years. Facebook, the primary contributor to HHVM, has shifted focus to other projects, resulting in a slower pace of development and fewer updates.

  6. Operating System Support: HHVM and PHP-FPM also differ in terms of operating system support. PHP-FPM has widespread support for various operating systems, including Linux, Windows, macOS, and others. It can be easily integrated with popular web servers like Apache and Nginx. In contrast, HHVM has limited operating system support and is primarily designed and optimized for running on Linux systems. While it can be used on other platforms, the experience and performance might not be as optimal.

In summary, HHVM and PHP-FPM differ in terms of performance, compatibility, language features, community and support, development activity, and operating system support. These differences should be considered when choosing between the two for a specific project.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of HHVM (HipHop Virtual Machine)
Pros of PHP-FPM
  • 30
    Very fast
  • 24
    Drop-in PHP replacement
  • 14
    Works well with nginx
  • 14
    Backed by Facebook
  • 12
    Open source
  • 1
    Statically checked, typed language
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    No Stats
    - No public GitHub repository available -

    What is HHVM (HipHop Virtual Machine)?

    HHVM uses a just-in-time (JIT) compilation approach to achieve superior performance while maintaining the flexibility that PHP developers are accustomed to. To date, HHVM (and its predecessor HPHPc before it) has realized over a 9x increase in web request throughput and over a 5x reduction in memory consumption for Facebook compared with the PHP 5.2 engine + APC.

    What is PHP-FPM?

    It is an alternative PHP FastCGI implementation with some additional features useful for sites of any size, especially busier sites. It includes Adaptive process spawning, Advanced process management with graceful stop/start, Emergency restart in case of accidental opcode cache destruction etc.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use HHVM (HipHop Virtual Machine)?
    What companies use PHP-FPM?
    See which teams inside your own company are using HHVM (HipHop Virtual Machine) or PHP-FPM.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with HHVM (HipHop Virtual Machine)?
    What tools integrate with PHP-FPM?
      No integrations found

      Sign up to get full access to all the tool integrationsMake informed product decisions

      What are some alternatives to HHVM (HipHop Virtual Machine) and PHP-FPM?
      Laravel Homestead
      Laravel Homestead is an official, pre-packaged Vagrant "box" that provides you a wonderful development environment without requiring you to install PHP, HHVM, a web server, and any other server software on your local machine. Homestead runs on any Windows, Mac, or Linux system, and includes the Nginx web server, PHP 5.6, MySQL, Postgres, Redis, Memcached, and all of the other goodies you need to develop amazing Laravel applications.
      Azure Virtual Machines
      You can create Linux and Windows virtual machines. It gives you the flexibility of virtualization for a wide range of computing solutions—development and testing, running applications, and extending your datacenter. It’s the freedom of open-source software configured the way you need it.
      GraalVM
      An ecosystem and shared runtime offering performance advantages not only to JVM-based languages such as Java, Scala, Groovy, and Kotlin, but also to programming languages as JavaScript, Ruby, Python, and R. Additionally, it enables the execution of native code on the JVM via LLVM front-end.
      Multipass
      It's a system that orchestrates the creation, management and maintenance of virtual machines and associated Ubuntu images to simplify development.
      OpenvSwitch
      Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license.
      See all alternatives