使用4000个并发用户进行负载测试

时间:2017-10-12 13:48:59

标签: php mysql codeigniter-3 rds

我正在使用CodeIgniter来实现我的API。请查找使用的服务器资源和技术如下:

概要

Framework : CodeIgniter

Database : MySQL (Hosted on RDS)

Hosting :  AWS t2.Micro

Web Server  : Nginx

我按照以下链接使用2个Slaves和1个主数据库

CodeIgniter configure different IP for READ and WRITE MySQL data

我在每个控制器中使用以下内容来建立数据库连接。

$DB1_READ = $this->load->database('READ', TRUE);

$DB2_READ = $this->load->database('READ', TRUE);

$DB3_WRITE = $this->load->database('WRITE', TRUE);

我也在Database.php文件中使用不同的READ和WRITE连接:

2个READ SERVERS和1个WRITE SERVER(MASTER)

问题

当我在控制器中加载数据库时,当我只调用我的READ数据库时,它正在与WRITE服务器进行WRITE连接。

我应该在哪里调用$this->load->database,这样如果我只是从READ数据库执行READ查询,那么它就不应该转到WRITE服务器,导致WRITE服务器失败。

它正在WRITE打开一个不需要的连接,这反过来增加了我的主数据库上的负载。根据AWS RDS,我只能拥有1个Master,所以这对我来说是一个巨大的问题,因为我的MASTER每次都会死掉。

0 个答案:

没有答案
相关问题