Seravo / wordpress

The WordPress project layout used by many of Seravo's customers, suitable also for local development with Vagrant and git deployment
https://seravo.com
GNU General Public License v3.0
104 stars 54 forks source link

Enable MongoDB extension for PHP (Enhancement) #184

Closed joonamakinen closed 2 years ago

joonamakinen commented 3 years ago

Made a migration script that mix and matches MySQL queries with MongoDB queries for pre-formatting and utilizing bazillions of rows. Even though the final end product is purely MySQL that could potentially be migrated, the relationships with JOIN and whatnot are not my forte. I'd like to just run the same PHP endpoint with mongodb.so on.

This would probably benefit other WordPress sites with complementary Node applications running.

Could this perhaps be part of upcoming PHP 8.1 build at Seravo? I'll approach my current problem differently for now.

https://docs.mongodb.com/drivers/php/

trajche commented 3 years ago

+1 on this. We have a plugin that does archiving to MongoDB and we are unable to use it on Seravo for now.

ypcs commented 3 years ago

Hi, thanks for the feedback. For the record we're considering adding support for this module. We will first execute some performance testing etc.

Like previously, if we decide to enable this module, we will add it only for the latest PHP version, which would be PHP8.1 like @joonamakinen already suggested. Release for PHP8.1 is scheduled for November 2021, so if our internal tests succeed and we decide to add this module, it will be available in November, at earliest.

joonamakinen commented 2 years ago

Even when enabling PHP 8.1 from nginx configs, composer (php-cli) won't run PHP 8.1 with ext-mongodb enabled. MongoDB requires both the extension and module mongodb/mongodb to be loaded.

https://packagist.org/packages/mongodb/

cd data/wordpress
composer require mongodb/mongodb
...
Package mongodb/mongodb has requirements incompatible with your PHP version, PHP extensions and Composer version:  
    - mongodb/mongodb 1.12.0 requires ext-mongodb ^1.13.0 but it is not present.   

image

php -v reveals that php-cli is in fact 8.1, ext-mongodb is just missing.

php -v
PHP 8.1.4 (cli) (built: Apr  4 2022 13:30:00) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.4, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.4, Copyright (c), by Zend Technologies
ypcs commented 2 years ago

Hi, sorry for delay in response. This feature is slowly rolling out to all customers, if there is specific sites that need feature now, please contact our customer support (help@seravo.com), we can push this to specific sites faster if needed. :)

joonamakinen commented 2 years ago

Now that a module list of PHP 8.1 lists mongodb on my other issue I think this can also be closed now @ypcs

https://github.com/Seravo/wordpress/issues/199