MySQL is not designed for such a load. It spawns a thread per connection (which is does not scale at all,
For one even allocating an initial stack for every thread (on x86_64) requires 8MB*886 ~ 7GB of RAM.
Using the thread pool plugin [1] (which queues several connections to one thread) can mitigate the problem
(please note: the thread pool plugin is available only in MariaDB and commercial version of MySQL).
However to scale properly OpenStack needs a different storage (something which can scale horizontally,
and most likely this "something is not relational database at all).
> thread_count=886 count=886
> connection_
MySQL is not designed for such a load. It spawns a thread per connection (which is does not scale at all,
For one even allocating an initial stack for every thread (on x86_64) requires 8MB*886 ~ 7GB of RAM.
Using the thread pool plugin [1] (which queues several connections to one thread) can mitigate the problem
(please note: the thread pool plugin is available only in MariaDB and commercial version of MySQL).
However to scale properly OpenStack needs a different storage (something which can scale horizontally,
and most likely this "something is not relational database at all).
[1] https:/ /mariadb. com/kb/ en/mariadb/ thread- pool-in- mariadb