实际上我需要提高使用 Yii 2 .0 框架开发的 Web 应用程序的性能速度
我使用 Yii2 框架制作了一个 CRM,其中包含一个大型数据库,在该数据库中名为 Employee
的特定表包含20,000条员工记录,因此在执行查询以从表中检索数据时,执行需要时间。
这让我使用这个应用程序很麻烦。
已更新 代码:
public function actionLists($id)
{
$countClaimprocess = Employee::find()
->where(['id' => $id])
->count();
$claimprocess1 = Employee::find()
->select('employee_id')
->where(['id' => $id])
->one();
$claimprocess2 = Employee::find()
->select('importcompany_id')
->where(['id' => $id])
->one();
$claim2 = $claimprocess2->importcompany_id;
$claim = $claimprocess1->employee_id;
$claimprocess = Employee::find()
->where("employee_id = '$claim' and importcompany_id = $claim2")
->andwhere(" status != 'Deleted' ")
->all();
}
以上代码用于依赖下拉列表,这意味着如果管理员选择 company_name
, 它会显示依赖 employee_code
属于那个company
,然后管理员再次选择 employee_code
, 它将显示从属 employee_name
和他们的 family
成员(member)姓名。
最佳答案
从记录您的查询开始 (described here)。
如果您已经有了 SQL 格式的查询,请转到您的数据库管理应用程序(例如 phpmyadmin)并执行 EXPLAIN [query_body];
它会显示您的表是否有正确的索引。如果没有使用索引或者您没有任何索引,您应该通过添加一个或编写更准确的查询来修复它。我敢打赌这不是 yii2 特定问题,甚至不是 php,而是您的数据库系统。
应该在 employee
表中建立索引的列是:employee_id
、importcompany_id
和 status
还要考虑将 status
列更改为某个枚举整数值(由于它的大小,很难正确索引字符串)。
关于php - 如何加速使用 Yii 2.0 框架开发的 Web 应用程序的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31935037/