Обзор архитектуры

В этом разделе объясняется, как различные части PHP-драйвера сочетаются друг с другом, от базовых системных библиотек, через PHP-модули и до PHP-библиотек на самом верху.


     Схема архитектуры PHP-драйвера.
     Самый низкий уровень драйвера — это системные модули: libmongoc, libbson и libmongocrypt.
     Средний уровень — это PHP-модуль MongoDB, написанный на языке Си.
     Верхний уровень — это пользовательское окружение PHP,
     PHP-модуль MongoDB и высокоуровневые пакеты: фреймворки и приложения.

Наверху стека расположена » библиотека PHP, которая распространяется в виде » пакета Composer. Эта библиотека предоставит API, согласованный с другими » драйверами MongoDB, и реализует междрайверные » спецификации. Хотя модуль можно использовать напрямую, библиотека даёт минимальные накладные расходы и должна быть общей зависимостью для большей части приложений, построенных с MongoDB.

На уровень ниже библиотеки располагается PHP-модуль, который распространяется через репозиторий » PECL. Модуль образует связующую прослойку между PHP и системными библиотеками (» libmongoc, » libbson и » libmongocrypt). Этот публичный API предлагает только самую базовую функциональность:

  • Управление соединением
  • BSON кодирование и декодирование
  • Сериализация документа объекта (для поддержки библиотек ODM)
  • Выполнение команд, запросы и запись операций
  • Обработка курсоров для команд и результатов запроса

Исходный код драйвера и проекты JIRA
Проект GitHub JIRA
PHP библиотека » mongodb/mongo-php-library » PHPLIB
PHP-модуль » mongodb/mongo-php-driver » PHPC

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top