IntroductionThe mysqlnd multiplexing plugin (mysqlnd_mux) multiplexes MySQL connections established by all PHP MySQL extensions that use the MySQL native driver (mysqlnd) for PHP. The MySQL native driver for PHP features an internal C API for plugins, such as the connection multiplexing plugin, which can extend the functionality of mysqlnd. See the mysqlnd for additional details about its benefits over the MySQL Client Library libmysqlclient. Mysqlnd plugins like mysqlnd_mux operate, for the most part, transparently from a user perspective. The connection multiplexing plugin supports all PHP applications, and all MySQL PHP extensions. It does not change existing APIs. Therefore, it can easily be used with existing PHP applications.
Key FeaturesThe key features of mysqlnd_mux are as follows:
LimitationsThe proof-of-concept does not support unbuffered queries, prepared statements, and asynchronous queries. The connection pool is using a combination of the transport method and hostname as keys. As a consequence, two connections to the same host using the same transport method (TCP/IP, Unix socket, Windows named pipe) will be linked to the same pooled connection even if username and password differ. Be aware of the possible security implications. The proof-of-concept is transaction agnostic. It does not know about SQL transactions.
About the name mysqlnd_muxThe shortcut mysqlnd_mux stands for mysqlnd connection multiplexing plugin. |