我们正在AWS EC2 T2.micro实例上托管管理系统。
管理员是用Angular编写的,并调用PHP文件来检索信息。
我们目前正在遇到太多连接"错误。我不确定我们是否正确构建了这个。我希望我能解释一下我们在做什么,看看你们是否对如何改善/消除这个问题有任何建议。
它的工作方式是我们的管理员将数据发送到PHP文件。 PHP文件创建与数据库的连接,根据传递的数据检索相关信息,以管理员读取的JSON格式回显。
我查看了我们的最大连接数,并将其设置为151.该应用程序拨打了很多号码来调用API'每个用户的PHP文件。例如,它会拨打一个电话来下载用户,另一个用于更新他们的位置,另一个用于下载所有帖子,另一个用于下载他们的图片等。
我刚刚在PHP文件的末尾添加了代码,以便在检索和回显数据后关闭连接。我不确定这是否是最终解决方案?
1。)我可以将我的最大连接设置为多高/是否有一个太高的数字? 2.)有没有一种方法,每个用户只获得一个连接,而不是每次执行API调用时都打开一个新的连接在PHP上使用我们的API? 3.)我们是否应该完全抛弃这种结构?对此更好的解决方案是什么? 4.)请放弃您对此主题的任何智慧/知识!我们现在正在生活,我们的客户正在失去对此的服务:(
我们首先从Angular Admin网站请求信息:
$http.post($rootScope.api_url, data, { headers : { 'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8' } } )
.success(
function(response){
deferred.resolve(response);
}
)
.error(function(data){
deferred.reject();
});
PHP' API'上的连接代码文件:
$this->admin_con = new mysqli($config['admin_dbhost'], $config['admin_dbuser'], $config['admin_dbpassword'], $config['admin_dbname']);
在通过mysql语句汇总所需的所有信息之后,我们就像这样回应:
echo json_encode($this->returnArray);
回显结果后:
mysqli_close($this->admin_con);