We improved the connection rate of mysqld for both non-ssl and ssl-connections. We got a 2.5X improvement in improving connection rate non-SSL, and a 1.7X improvement on connection accept rate for SSL connections. We also ended up benchmarking and understanding the different SSL libraries and versions (OpenSSL 1.0, OpenSSL 1.1 and BoringSSL ). This improvement is deployed at scale at Facebook, and uses shared locking pattern to significantly reduce contention in mysqld global datastructures. It also uses advanced kernel features like SO_REUSEPORT to achieve these improvements. Implementing this has helped us handle connection surges in FB mysql tiers, more gracefully.
Anirban works in the mysql team of Facebook, where he is currently focusing on CPU optimizations in mysqld, and exploring operational techniques like balancing shard placement for better CPU usage in the cluster. Anirban's interests are in databases, distributed systems and linux.