La API del plugin del controlador nativo MySQL es una funcionalidad
del controlador nativo MySQL, o mysqlnd.
El plugin Mysqlnd opera en la capa entre
las aplicaciones PHP y el servidor MySQL. Es comparable
a un proxy MySQL. Un proxy MySQL opera en una capa entre todas
las aplicaciones cliente MySQL, por ejemplo, una aplicación PHP
y un servidor MySQL. El plugin Mysqlnd
puede realizar tareas típicas de proxy MySQL como
el equilibrio de carga, así como el seguimiento y la optimización
de las prestaciones. Debido a una arquitectura y una localización
diferente, el plugin mysqlnd no tiene todos los
inconvenientes de un proxy MySQL. Por ejemplo, con el plugin, no
hay un único punto de fallo, no hay un servidor proxy dedicado
que desplegar, y no hay un nuevo lenguaje que aprender (Lua).
Un plugin mysqlnd puede ejecutarse como una extensión
a mysqlnd. Un plugin puede interceptar la mayoría de
las funciones mysqlnd. Las funciones mysqlnd
son llamadas por la extensión PHP MySQL como
ext/mysql, ext/mysqli, y
PDO_MYSQL. Como resultado, es posible para un
plugin mysqlnd interceptar todas las llamadas realizadas
por estas extensiones desde una aplicación cliente.
Las llamadas a las funciones internas mysqlnd pueden
también ser interceptadas o reemplazadas. No hay ninguna restricción
sobre la manipulación de las tablas de funciones internas mysqlnd.
Es posible definir acciones para que cuando
ciertas funciones mysqlnd sean llamadas
por la extensión que utiliza mysqlnd, la llamada
sea redirigida hacia la función apropiada del plugin
mysqlnd. La posibilidad de manipular las tablas
de funciones internas mysqlnd de este modo permite
un máximo de flexibilidad.
El plugin Mysqlnd es, en realidad, una extensión PHP,
escrita en C, que utiliza la API del plugin mysqlnd
(que está compilada en el controlador nativo MySQL, mysqlnd).
El plugin puede ser 100% transparente para las aplicaciones PHP. No se requiere
ninguna modificación a las aplicaciones ya que el plugin opera
en una capa diferente. El plugin mysqlnd
puede ser utilizado en una capa por debajo de mysqlnd.
La lista siguiente representa algunas aplicaciones posibles
del plugin mysqlnd.
Plugins del controlador nativo MySQL disponibles
Ya hay varios plugins mysqlnd disponibles.