Performance Yii2 Oracle性能
我经常使用Yii2,但通常使用MySQL。这是我第一次在Oracle中使用它。不过我觉得表演很差。我在谷歌上搜索了一下,发现虽然使用Yii2+Oracle似乎并不常见,但似乎有人说它相当慢 我想知道可以采用哪些建议/技巧/流程/包来提高性能 我正在装一张很小的桌子。它有8行,整个表有4列。它们是使用6.4MB数据的27 DB呼叫,运行大约需要3秒钟。看着日志,我看到了很多我不太理解的东西:Performance Yii2 Oracle性能,performance,oracle11g,yii2,Performance,Oracle11g,Yii2,我经常使用Yii2,但通常使用MySQL。这是我第一次在Oracle中使用它。不过我觉得表演很差。我在谷歌上搜索了一下,发现虽然使用Yii2+Oracle似乎并不常见,但似乎有人说它相当慢 我想知道可以采用哪些建议/技巧/流程/包来提高性能 我正在装一张很小的桌子。它有8行,整个表有4列。它们是使用6.4MB数据的27 DB呼叫,运行大约需要3秒钟。看着日志,我看到了很多我不太理解的东西: SELECT D.CONSTRAINT_NAME, D.CONSTRAINT_TYPE, C.COLUM
SELECT D.CONSTRAINT_NAME, D.CONSTRAINT_TYPE, C.COLUMN_NAME, C.POSITION, D.R_CONSTRAINT_NAME, E.TABLE_NAME AS TABLE_REF, F.COLUMN_NAME AS COLUMN_REF, C.TABLE_NAME
FROM
ALL_CONS_COLUMNS C
INNER JOIN ALL_CONSTRAINTS D ON D.OWNER = C.OWNER AND D.CONSTRAINT_NAME = C.CONSTRAINT_NAME
LEFT JOIN ALL_CONSTRAINTS E ON E.OWNER = D.R_OWNER AND E.CONSTRAINT_NAME = D.R_CONSTRAINT_NAME
LEFT JOIN ALL_CONS_COLUMNS F ON F.OWNER = E.OWNER AND F.CONSTRAINT_NAME = E.CONSTRAINT_NAME AND F.POSITION = C.POSITION
及
然后是关于触发器的更多内容
当我尝试使用诸如
Model::find()->with('relationName')->all()代码>
我明白了
'ORA-01795:列表中表达式的最大数量为1000个错误
这些表总共有大约17k行。一个表中大约有11k,另一个表中大约有7k是链接的
我正在使用fk约束作为表中的引用。在数据库配置中添加/使用以下设置
'schemaCacheDuration' => 7200,
'schemaCache' => 'cache',
'enableSchemaCache' => true,
及
将yiu-DEBUG
从true
更改为false
,yiu-ENV
从dev
更改为prod
这将减少不必要的SQL执行。上述查询请求有关数据库架构的信息。我从未使用过yii2,也不知道它为什么需要这些信息。
'schemaCacheDuration' => 7200,
'schemaCache' => 'cache',
'enableSchemaCache' => true,