Visão geral da arquitetura

Este artigo explica como todos os diferentes componentes do driver PHP se encaixam, desde as bibliotecas básicas do sistema, passando pela extensão, até as bibliotecas PHP superiores.


     Diagrama de arquitetura do driver MongoDB PHP. O nível mais baixo do driver são
     nossas bibliotecas de sistema: libmongoc, libbson e libmongocrypt. O nível
     intermediário é a extensão MongoDB PHP. O nível superior é a área de usuário do PHP e
     inclui a biblioteca MongoDB PHP e pacotes de nível superior, como
     integrações de estrutura e aplicações.

No topo desta pilha está uma » biblioteca PHP, que é distribuída como um » Pacote Composer. Esta biblioteca fornece uma API consistente com outros » drivers do MongoDB e implementa várias »  especificações de drivers cruzados. Embora a extensão possa ser usada diretamente, a biblioteca tem sobrecarga mínima e deve ser uma dependência comum para a maioria das aplicações criadas com MongoDB.

Abaixo dessa biblioteca está uma extensão PHP, que é distribuída através de » PECL. A extensão forma a ligação entre o PHP e nossas bibliotecas de sistema (» libmongoc, » libbson e » libmongocrypt). Sua API pública fornece apenas as funcionalidades mais essenciais:

  • Gerenciamento de conexões
  • Codificação e decodificação BSON
  • Serialização de documentos de objetos (para suportar bibliotecas ODM)
  • Executar comandos, consultas e operações de gravação
  • Manipulação de cursores para resultados de comandos e consultas

ódigo-fonte do driver e projetos JIRA
Projeto GitHub JIRA
Biblioteca PHP » mongodb/mongo-php-library » PHPLIB
Extensão PHP » mongodb/mongo-php-driver » PHPC