Cm_Mongo
NOTE: This is NOT a drop-in replacement for MySQL. It is intended only for use in implementing new models on MongoDb.
NOTE: PHP 7 Support
PHP 7 is not supported by the legacy 'mongo' extension and I currently have no plans to update this to use the new 'mongodb' extension which is not API compatible. I will happily accept a pull rquest though! :)
Description
This Magento extension is primarily two things:
-
An abstraction layer for MongoDb. Like the MySQL abstraction layer included in Magento, it provides classes that extend
Mage_Core_Model_Abstract
andVarien_Data_Collection
. It also includes support for .js upgrade scripts, an indexer to automatically index fields in other collections, and a schema defined by XML files. -
An atomic job queue. The job queue can be run by the Magento cron or by a separate script and supports future execution dates, automatic retry intervals, disabling jobs by name or group name, and priorities.
See mongo.xml.sample and Job.php for more information.
Unit Testing
Cm_Mongo can be used with EcomDev_PhpUnit, but needs to override one of it's classes for fixtures with mongo collections to work. Add a module dependency on EcomDev_PhpUnit to Cm_Mongo.xml when using with EcomDev_PhpUnit.
License
Please see the terms defined in LICENSE.txt