背景:
我有一个MYSQL驱动的自定义CMS网站.连接到数据库以加载网页内容的php脚本.
加载的每个页面使用相同的脚本连接到数据库.
这包括php,js,css文件
连接到db的脚本如下:
$my_link=mysql_connect("localhost",$dbusername,$dbpassword);
@mysql_select_db($database) or databaserror();
Run Code Online (Sandbox Code Playgroud)
其中一个页面内有以下内容
<link href="/administrator/files/master.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="/administrator/files/cbdb-btn.css" />
<link rel="stylesheet" type="text/css" href="/administrator/files/BreadCrumb.css" />
<link rel="stylesheet" type="text/css" href="/administrator/files/prettyPhoto.css" />
<link rel="stylesheet" type="text/css" href="/administrator/files/tabs.css" />
<script src="/administrator/files/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="/administrator/files/context_menu.js"></script>
<script type="text/javascript" src="/administrator/files/jquery.spinner.js"></script>
<script type="text/javascript" src="/administrator/files/jquery.jBreadCrumb.js"></script>
<script type="text/javascript" src="/administrator/files/jquery_upload.js"></script>
<script type="text/javascript" src="/administrator/files/prettyPhoto.js"></script>
<script type="text/javascript" src="/admin/ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="/admin/ckeditor/adapters/jquery.js"></script>
Run Code Online (Sandbox Code Playgroud)
所有以/ administrator/files /开头的文件(包括带有上述信息的文件)都是以mysql驱动的.
上面的文件有一个建立mysql db
$my_link=mysql_connect("localhost",$dbusername,$dbpassword);
Run Code Online (Sandbox Code Playgroud)
然后加载样式表
<link href="/administrator/files/master.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
它再次使用连接到数据库
$my_link=mysql_connect("localhost",$dbusername,$dbpassword);
Run Code Online (Sandbox Code Playgroud)
并重复所有.css和.js文件.
它不会在每次页面刷新时发生,但是我在5页加载中收到错误消息1
(12)Cannot allocate memory: couldn't create child process: /opt/suphp/sbin/suphp
Run Code Online (Sandbox Code Playgroud)
我是否错误地连接到MySQL?
如果我不包含mysql驱动的样式表或js文件没有问题,或者如果我自己加载样式表页面,没有问题.
内存设置为500mb,
当单独加载mysql驱动的页面时,当加载超过1个mysql驱动页面时,内存保持接近0mb,内存被加载到最大值
如果您需要更多信息,请与我们联系.
谢谢
正如我在评论中已经说过的那样,您必须mysql database为每个连接进行连接query,因为这可能会减慢服务器使用更多内存的速度,因此连接mysql db一次并发送您需要的尽可能多的查询,或者您可以尝试increasing memory limit使用下面的代码
ini_set('memory_limit','200M');
Run Code Online (Sandbox Code Playgroud)
20M代表其20 Megabytes. 将上面的代码插入到您的 php 脚本中您想要的位置...
| 归档时间: |
|
| 查看次数: |
7893 次 |
| 最近记录: |