HHVM and MongoDB
At the start of 2015 we began work on an HHVM driver for MongoDB, as part of our project to renew our PHP driver. Back then, HHVM was in its ascendancy and outperforming PHP 5.6 two to one. With such a huge performance difference it was reasonable to assume that many users would be switching over.
Around the start of 2016 I wrote a series of blog posts when we released the brand new drivers for PHP and HHVM. However, by then, PHP 7.0 had been released. PHP 7's performance is on par with HHVM making it less useful for users to move from PHP to HHVM. HHVM still offers a more strongly typed PHP syntax through Hack, and some other features, but its main attraction, speed, was mostly gone.
Writing an extension for HHVM is very different than doing so for PHP. PHP extensions, of which there are plenty, are written in C. HHVM extensions are written in C++, with very few third party extensions existing. At the same time, although PHP's APIs are not particularly well documented, there is a large group of people to ask for help. PHP also has a clearly defined internal API which is stable across minor versions. HHVM does not have this, and APIs kept changing often, although it wasn't always clear whether we were using an internal API.
Writing an HHVM extension is a very different experience for extension developers compared to PHP extensions. There is even less documentation, and virtually no third party extensions to look at for "inspiration". At the same time, it was much harder to get help from the developers, and much harder to debug as HHVM is many times more complex than PHP.
With PHP 7 released, we saw very little use of the HHVM driver for MongoDB. Some months ago I did a twitter poll, where very few people were indicating that they were using HHVM—and even if they were, they would likely not choose to switch to HHVM given the current climate.
Some of the feedback on the poll was not very assuring either:
With few users, frequent API breaks, and curious bugs we came to the conclusion that supporting the HHVM driver for MongoDB no longer makes good use of our engineering time. With Doctrine and Symfony 4 also no longer supporting HHVM, we have decided to discontinue the MongoDB driver for HHVM.
If anyone is interested in assuming ownership of the HHVM driver, please drop me a line and we can discuss the process in more detail.
Life Line
Staring Me Down
This lovely stag was keeping a keen eye on me walking past in Richmond Park. A lovely day out, but very few birds. Hoping c2c gets their railway sorted soon so I can get to Rainham again.
Grey Wagtail Forraging
This one is often shows around at the Ken Barratt Hide at RSPB Rainham Marshes.
#photography #Birds #BirdPhotography #BirdsOfFediverse #NaturePhotography #wildlife #RSPB #RainhamMarshes
Updated a pub
Updated a toilet; Deleted a toilet
I hiked 16.2km in 5h12m16s
Mary Had Two Little Lambs
#photography #SheepOfMastodon #Defaidodon #DyddDefaidodon #DefaidodonDay
Just Relaxing While Mom Makes Milk
#photography #SheepOfMastodon #Defaidodon #DyddDefaidodon #DefaidodonDay
Grazing on the Cliff Edge
#photography #SheepOfMastodon #Defaidodon #DyddDefaidodon #DefaidodonDay #shetland
I walked 3.7km in 1h15m13s
Survey housenumbers
Specify whether there are cycleways
Specify whether roads have sidewalks
New layout
I walked 7.9km in 1h34m09s
Little Egret Looking Sharp
I always like looking at these birds. They move so gracefully, but are also fun to see catch fish.
#photography #Birds #BirdPhotography #BirdsOfFediverse #NaturePhotography #wildlife #wwt #london
Updated an entrance
I walked 9.1km in 1h44m35s
Iridescent Colours
This Lapwing, one of about a hundred in the flock, nicely stopped to pose for me. The sun was getting lower making its wings shine in iridescent colours. In winter many flock together here at the London Wetland Centre.
#photography #Birds #BirdPhotography #BirdsOfFediverse #NaturePhotography #wildlife #wwt #london
Go with 2026.03
Merged pull request #189
Survey hairdresser's customers
Specify bicycle parkings covers











Shortlink
This article has a short URL available: https://drck.me/hhvm-mongo-da6