我们有一个使用Yii Framework构build的PHP应用程序,它连接到Oracle数据库,并运行在使用Zend Core For Oracleconfiguration的Apache上。 Apache还在另一个端口上运行另一个应用程序。
我们有一个页面,这使得一个复杂的查询到DB需要大约10分钟运行。 我们正在减less这个查询的时间,但现在这是一个问题。
问题是调用PHP页面后,没有其他页面响应,甚至没有查询数据库。 Apache运行的其他应用程序(不使用Yii并使用不同的数据库)也没有响应。
为什么发生这种情况? 即使一个仍在运行,Apache不能同时处理多个请求吗?
从Apache给出的错误如下,这应该是一个通用的消息与数据库通信失败时给出的错误:
fcgi:无法从D:\ Programmi \ Zend \ Core读取响应对于Oracle \ bin \ php-cgi.exe
我们没有涉及很多默认的Apacheconfiguration,所以maxClients和ServerLimit应该设置为256(默认)
任何想法在哪里寻找问题?
无论如何,问题是,在调用PHP页面后,所有的应用程序“卡住”,没有其他页面响应,即使没有查询数据库
你在那个数据库中使用会话吗? PHP专门locking会话文件,直到脚本完成执行。