mysql - CodeIgniter REST Api 登录分离的数据库 20 秒以上

标签 mysql database codeigniter

我有一个响应非常好的 REST Api Codeigniter 服务器。每次通话最多 0.02 秒。 我想启用日志,但是当我这样做时,响应需要多花 20 秒。因此,对于同一进程,需要 20.02 秒。

我发现时间在 REST_Controller.php 文件中的这一行丢失了: $this->rest->db = $this->load->database($this->config->item('rest_database_group'), TRUE); 加载其余数据库时。

我的数据库文件有 2 个这样的数据库记录:

$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
    //'dsn' => '',
    'hostname' => 'X.X.X.X',
    'username' => 'my_user',
    'password' => 'my_pass',
    'database' => 'my_database',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

$db['rest'] = array(
    //'dsn' => '',
    'hostname' => 'X.X.X.X',
    'username' => 'my_user',
    'password' => 'my_pass',
    'database' => 'my_database',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

我的配置文件有 $config['rest_database_group'] = 'rest';

日志行写入rest数据库没有任何问题但是比没有日志多了20秒...

有什么想法吗?

感谢您的帮助。 大卫。

最佳答案

感谢您的帮助。我找到了解决方案。

我的 MySQL 服务器出现 DNS 问题。仅仅谈论 IP 地址是不够的。我必须在每台服务器的主机文件中指定我的服务器名称。

20 秒的滞后时间是在 MySQL SQL 上,有一个未经身份验证的用户尝试从我的服务器登录。

DNS 参数问题已解决。

再见!

关于mysql - CodeIgniter REST Api 登录分离的数据库 20 秒以上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50702661/

相关文章:

MySql : Convert Column data to row

java - 列计数与第 1 行的值计数不匹配 - Java SQL

asp.net - 将用户配置文件数据存储在用户表或单独的配置文件表中?

数据库中所有列表的mongodb总长度

php - Codeigniter 使用验证回调来更改提交的值

mysql - 在一行中加入列

php - foreach 不返回单个值

mysql - 找出哪个 Unicode

php - 如何自定义smarty中的错误处理?

php - 在 codeigniter 中的两个日期之间提取数据时出错