文章目录:
服务器老是“虚拟内存不足”是怎么回事?以前没出现这种情况
1:应该是由于你运行太多的程序了。
2:虚拟内存设置方面,是有最小值和最大值之分的,如果你最小值太小,最大值再大也没用,它一样提示你不够,因为它开机时是按你最小值来分配的,当最小值不够用时,就提示你,然后自动扩大,但一般不会超过最大值。所以建议你把最小值设到150甚至200M,最大值保持在576没关系了,但可用空间够的话,设大点也没关系,因为它是按需分配,不是一下子分配到最大值的
怎么避免出现服务器内存不足的问题?
每个人都会遇到这个问题,操作系统物理内存使用率过高。原因非常的简单,计算机上运行的程序占用内存过多,就会导致计算机的卡和慢;也有实际物理内存太低,也就是我们的内存条的容量太低的原因。
怎么解决这个问题?首先,我们要了解怎么看内存的使用情况。云帮手实时展示监控系统内存使用率,让用户可以及时了解内存的使用情况,做出正确的判断。一般情况下加根内存条,电脑运行的速度就会快很多。
虚拟主机内存不足,怎么回事
一般情况下虚拟主机都会分配一定的内存资源用于网站程序运行,有时候站长会遇到虚拟主机内存使用量过高的问题,主因其实还是在于网站程序的选择和访问情况。
几种占用内存比较多的情况
1:伪静态、动态、静态
在这三种形式中,伪静态会相对更吃虚拟主机的内存,动态次之,静态吃内存最少(静态生成的方式是直接从硬盘中读取,可以比较节约服务器资源,也是目前进行SEO优化大多数站长比较喜欢的方式),也就是说如果在其他因素完全一致的情况下,伪静态会占用更多内存。
伪静态原理:
脚本程序通过服务器CPU运算,读取数据库,将动态页面临时存储在RAM内存中,同时通过URL重写方式映射一个静态页面的地址,传送至浏览器。
2:程序运行及访问量
实际上访客的每一次访问都会激发一次这样的过程,当有较多访客的时候,数据库就要多次读取,数据库读取、动态页面、URL重写,这个三个过程中都需要使用到RAM内存。
(1)频繁读取数据库
如果访问一个网页,程序运行过程中造成数据库频繁读取,也会造成内存使用率偏高的情况,这种情况建议对数据库读取的代码进行优化,以减少读取频率。
这种情况比较容易产生的是DZ一类的论坛程序,网上有很多站长反应这个情况,某个站长采用了2核4G的虚拟主机,没有任何访问量的情况下按说正常运行没问题,但是一开站就满载死机,最后分析找到了原因,其实是因为开了DZ的某个插件,这个插件对数据库进行比较频繁的读取,关闭这个插件后网站可以正常运行了。
(2)程序运行
服务器脚本程序运行某些任务的时候也会有内存过高的情况,你可以将服务器脚本运行当做你电脑的某个软件运行,比如3D、制图软件肯定是要比只听个音乐所需要的内存少,虽然动态页面的程序在大多数站长看来只是网页格式,但是这种脚本程序也如同我们电脑上的软件一样操作着服务器本身的运算、运行。
所以,建议在进行网站程序设计的时候建议能考虑到对服务器资源的使用,一个网页程序的功能越复杂也就意味着对服务器资源消耗越大。
比如图片在线制作类的网站,虽然操作端口在浏览器,但是进行数据处理和数据临时保存的确是在服务器端,如果所需要处理的图片复杂且元素较多,那么肯定是会占用更大的内存资源的。
(3)网络访问及超大文件上传
通常在虚拟主机上都有一个IIS的数据,你可以理解为1个IIS就是打开一个网页的在线状态,每开一个IIS就会多一点内存的使用,当访问强度达到一定量的时候虚拟主机的内存就会比较紧张,特别对于动态页面、伪静态页面的影响更大。
比如:某个DZ系统在运行的时候,就有可能出现一个人打开10多个页面,在进行大图片上传的过程中很容易造成虚拟主机内存使用过高,所以对于这类程序一般都要设置文件上传限制,禁止一些超大图片的上传,以及一些站内多媒体文件的访问。
优化方案
1:设置页面缓存
可以通过设置页面缓存的方式让浏览器端访问一次网站后将一些通用文件进行缓存,降低多次读取访问对服务器形成的访问压力。
举例说明:Dz一类的程序是有页面缓存设置选项的,织梦cms后台也有关于缓存设置的性能选项(系统-性能选项-需缓存内容全局缓存时间),可以 通过后台进行优化配置;另外一些国内的免费CDN服务也有提供缓存机制,通过CDN方式本身也相当于设置了网页缓存机制,通过CDN也能降低虚拟主机本身的运行压力。
2:内存优化
可以通过优化配置网站的一些文件来实现网站对虚拟主机内存使用情况的优化。
举例说明:Dz类的程序后台有提供内存优化的文件说明,具体可以按照后台的说明进行操作。
3:服务器优化
原理与页面缓存有点类似,主要可以通过禁用页面刷新功能等来降低页面多次加载造成的内存占用过多,一般来说有些服务器是有设置了虚拟主机页面刷新的机制,只要过快刷新页面就会出现阻挡页面,但是有些CMS的后台也有这样的防护机制可以设置。
举例说明:Dz类程序后台的服务器优化配置里有相应的配置,可以参考下图
总结
目前所有关于虚拟主机内存占用过高的原因就是这些,需要指出的是如果使用伪静态或者动态页面遇到网页端的DDOS攻击也会出现内存使用过高的情况,所以具体问题具体分析,原理已告知,对于程序方面的具体优化至少有个概念了。同时考虑到大多数站长对于网站程序本身没有什么优化能力,建议在挑选CMS的时候选择能生成静态页面的这一类程序,这类程序对于内存的需求相对较低,也更利于SEO。
参考资料:虚拟主机内存高什么原因
我的服务器总是提示虚拟内存不够,请问该怎么处理。
1、感染病毒
有些病毒发作时会占用大量内存空间,导致系统出现内存不足的问题。赶快去杀毒,升级病毒库,然后把防毒措施做好!
2、虚拟内存设置不当
最好设置大一点啊,一般来说最小768mb,最大1024mb,如果你要玩游戏并且还有很多硬盘空间的话,设置最小1g,最大1.5g也行
设置方法:
默认状态下,是让系统管理虚拟内存的,但是系统默认设置的管理方式通常比较保守,在自动调节时会造成页面文件不连续,而降低读写效率,工作效率就显得不高,于是经常会出现“内存不足”这样的提示,下面就让我们自已动手来设置它吧。
①用右键点击桌面上的“我的电脑”图标,在出现的右键菜单中选择“属性”选项打开“系统属性”窗口。在窗口中点击“高级”选项卡,出现高级设置的对话框
②点击“性能”区域的“设置”按钮,在出现的“性能选项”窗口中选择“高级”选项卡,打开其对话框。
③在该对话框中可看到关于虚拟内存的区域,点击“更改”按钮进入“虚拟内存”的设置窗口。选择一个有较大空闲容量的分区,勾选“自定义大小”前的复选框,将具体数值填入“初始大小”、“最大值”栏中,而后依次点击“设置→确定”按钮即可,最后重新启动计算机使虚拟内存设置生效。
以上是Windows
XP操作系统中虚拟内存的设置方法,笔者在此也简单提一下在Windows
98操作系统中的设置:
在Windows
98系统中依次进入“开始→设置→控制面板→系统→性能→虚拟内存”,在弹出的对话框中选中“用户自己指定虚拟内存设置”选项,将虚拟内存的位置设在合适的分区中,并设定好虚拟内存的最小值与最大值,最后点击“确定”按钮完成。
建议:可以划分出一个小分区专门提供给虚拟内存、IE临时文件存储等使用,以后可以对该分区定期进行磁盘整理,从而能更好提高计算机的工作效率。
以WinXP为例,右键点击“我的电脑”,选择“属性”,然后在“高级”标签页,点击“性能”框中的“设置”按钮,切换到“高级”标签页,然后在“虚拟内存”框中点击“更改”按钮,接着重新设置虚拟内存大小,完成后重新启动系统就好了。
3、系统空间不足
虚拟内存文件默认是在系统盘中,如WinXP的虚拟内存文件名为“pagefile.sys”,如果系统盘剩余空间过小,导致虚拟内存不足,也会出现内存不足的问题。系统盘至少要保留300MB剩余空间,当然这个数值要根据用户的实际需要而定。用户尽量不要把各种应用软件安装在系统盘中,保证有足够的空间供虚拟内存文件使用,而且最好把虚拟内存文件安放到非系统盘中。
4、因为SYSTEM用户权限设置不当
基于NT内核的Windows系统启动时,SYSTEM用户会为系统创建虚拟内存文件。有些用户为了系统的安全,采用NTFS文件系统,但却取消了SYSTEM用户在系统盘“写入”和“修改”的权限,这样就无法为系统创建虚拟内存文件,运行大型程序时,也会出现内存不足的问题。问题很好解决,只要重新赋予SYSTEM用户“写入”和“修改”的权限即可,不过这个仅限于使用NTFS文件系统的用户。
有较多访客的时候,数据库就要多次读取,数据库读取、动态页面、URL重写,这个三个过程中都需要使用到RAM内存。(1)频繁读取数据库如果访问一个网页,程序运行过程中造成数据库频繁读取,也会造成内存使用率偏高的情况,这种情况建议对数据库读取的代码进
缓存内容全局缓存时间),可以 通过后台进行优化配置;另外一些国内的免费CDN服务也有提供缓存机制,通过CDN方式本身也相当于设置了网页缓存机制,通过CDN也能降低虚拟主机本身的运行压力。2:内存优化可以通过优化配置网站的一些文件来实现网站对虚拟主机内存使
务器内存不足的问题?每个人都会遇到这个问题,操作系统物理内存使用率过高。原因非常的简单,计算机上运行的程序占用内存过多,就会导致计算机的卡和慢;也有实际物理内存