mongo-php-library 和 MongoDB 驱动有什么区别? 它们在性能和功能方面有何不同?有什么好处和坏处?
我们目前在生产中使用“mongo-php-library”,如下所示:
$connection = (new MongoDB\Client("mongodb://user:password@mongo:27017"));
$client = $connection->selectDatabase("the_database");
$collection_users = $client->selectCollection('users');
像这样连接到数据库有什么好处或坏处吗?
最佳答案
mongo-php-library (用 PHP 编写)是对较低级别 MongoDB PHP driver (mongodb extension) 的高级抽象。 . MongoDB 驱动程序 mongodb 是用 C 编写的,只为核心驱动程序功能提供了一个最小的 API:命令、查询、写入、连接管理和 BSON 序列化。因此 PHP 开发人员将需要 mongo-php-library 来提供易于使用的高级 API,例如查询构建器、单独的命令辅助方法和 GridFS。
mongo-php-library 由 MongoDB 正式支持。它的性能和功能没有问题或担忧,因为它是唯一的选择,除非您决定自己开发一个定制/优化的库,否则最终可能会重新发明相同的轮子。
以前 the legacy MongoDB PHP driver而是提供高级 API,但 MongoDB 决定用当前的 mongodb 扩展取代它,因此旧版驱动程序仅支持 PHP 5.6 和 MongoDB 3.0。原因未知,但我们猜测 MongoDB 想要将 MongoDB PHP 驱动程序保持在低级别,并在此基础上开发了一个 PHP 库,以方便他们对 PHP 7 和后续 PHP 升级的支持。
关于php - mongo-php-library 和 MongoDB 驱动程序有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52794743/