protected static function get_read_connection_random() { $connection_rates = array(); $db_configs = \Config::get('db'); foreach ($db_configs as $db => $config) { if (!static::check_is_db_config($config)) { continue; } $connection_rates[$db] = 1; if (isset($config['connection_rate'])) { $connection_rates[$db] = $config['connection_rate']; } } return \Util_Array::rand_weighted($connection_rates); }