codeigniter restapi登录 db2 0秒以上

eanckbw9  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(283)

我有一个restapi codeigniter服务器,响应非常好。每次通话最多0.02秒。我想启用日志,但当我这样做时,响应需要20秒以上。同样的过程需要20.02秒。
我发现rest\u controller.php文件中的这一行丢失了时间: $this->rest->db = $this->load->database($this->config->item('rest_database_group'), TRUE); 当加载rest db时。
我的数据库文件有如下2个db记录:

$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秒。。。
有什么想法吗?
谢谢你的帮助。大卫。

ztyzrc3y

ztyzrc3y1#

谢谢你的帮助。我找到了解决办法。
我的mysql服务器出现dns问题。仅仅用ip地址交谈是没有意义的。我必须在每台服务器的hosts文件中指定服务器的名称。
20秒的延迟时间是在mysql上,有一个未经验证的用户试图从我的服务器登录。
dns参数出现问题。
再见!

相关问题