首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我的网络服务器上应该有多少空闲内存?

我的网络服务器上应该有多少空闲内存?
EN

Server Fault用户
提问于 2013-11-08 20:08:39
回答 1查看 19K关注 0票数 9

我有一个and服务器,目前托管两个Wordpress站点和一些基于java的协作软件。服务器拥有2G内存,目前正在使用大约1.8G可用内存。现在,这里正在进行的是一个几乎可以忽略不计流量的试点项目,所以我认为很明显,我需要更多的内存。

我想知道,如果我要发布它,我将如何预测我的记忆需求,根据它得到的流量。我在谷歌( Google )上闲逛过,我发现的东西有点脆弱。在计算服务器上的基本(无通信量)负载的函数时,是否应该使用一个很好的启发式方法?

作为参考,free -m的输出如下:

代码语言:javascript
复制
             total       used       free     shared    buffers     cached
Mem:          2048       1832        215          0          0          0
-/+ buffers/cache:       1832        215
Swap:            0          0          0

在我看来,这看起来像实际使用的内存,而不是缓存或其他任何东西造成的幻觉。

我认为我的协作软件的需求需要进行实验测试,所以这里是free -m,没有运行该软件:

代码语言:javascript
复制
             total       used       free     shared    buffers     cached                                     
Mem:          2048       1109        938          0          0          0                                     
-/+ buffers/cache:       1109        938                                                                      
Swap:            0          0          0   

我的计划B来解决这个问题,就是给服务器增加一堆交换空间,给它一些流量,并根据交换使用的数量进行调整。我只是想知道,如果我想的是疯狂的话,是否有人有一个很好的经验法则来估计我应该在advance...or中规划多少内存。

事先非常感谢(我对此非常陌生)。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2013-11-08 20:51:47

答案基本上是:视情况而定。在您的具体情况下,您安装的站点的质量和效率可能会受到质疑。

例如,这周我在处理一台流量相对比较适中的服务器,但是占用了4GB的内存。在进行了代码审查之后--整个站点都在使用一个现成的CMS,类似于WordPress,但通过定制--我们发现了一个主要的瓶颈。一旦我们重新处理了这个问题,服务器现在平均每天使用大约2GB的RAM。内存使用量下降了50%!

我不建议像拆分服务器一样使用Ngnix和Apache。就用阿帕奇。平衡两台不同服务器的信任是不值得的。阿帕奇很好。但话虽如此,您应该在同一个框中考虑您的WordPress PHP站点与Java与MySQL的对比。根据我的经验,你应该做以下几件事:

  1. 正确配置Apache: Apache是一个很好的软件,但它是一个内存占优势。例如,我认为默认情况是每秒允许255个连接?我可以向你保证,在一个美好的日子里,大多数简单的站点几乎没有每秒获得40个连接。因此,调整Apache以适应您的流量将有帮助。另外,在Apache中有一个KeepAlive设置,非常好用!但是,我认为它的MaxKeepAliveRequests设置为100,这是相当疯狂的。我通常将它设置为大约30个连接,使用一个2到3秒的小KeepAliveTimeout。关键是要让KeepAliveTimeout与速度相匹配,下载一个平均页面所需的速度与开销/慢度有一点空间。因此,如果页面在1秒内加载,则执行2秒的KeepAliveTimeout
  2. 检查WordPress站点的代码,找出潜在的瓶颈:专注于PHP &尽可能清除。注意过多的MySQL调用&文件系统调用。这是你可以让应用程序飞起来的地方!此外,检查memory_limit在您的php.ini,并确保它不高于必要。缺省值为6400万,但在许多情况下可以降低到3200万。
  3. MySQL调优或将其移到自己的服务器上:在上面写了关于MySQL的文章之后,我意识到您可能将MySQL实例托管在同一个框中。通过运行像MySQL这样的脚本来优化MySQL调谐底漆性能。如果不进行调优,MySQL将消耗所有资源&将系统放大。通过调优,MySQL将运行得更好/更快&可以为其他目的释放资源。另外,考虑将MySQL DB移动到独立服务器。您可能需要学习如何正确地网络&防火墙服务器,允许您的服务器访问,但防止黑客攻击,但性能的好处将是巨大的。
  4. 考虑将Java应用程序移动到另一个服务器:我的经验法则是每个服务器都有一个主要的Java应用程序。一般来说,与WordPress这样的PHP设置相比,Java应用程序可能会占用内存。通过将自己的服务器提供给Java应用程序,WordPress站点将更加快乐。

关于MySQL调优,这需要几个星期的时间才能在一开始就确定下来。调优脚本的原因是基于实际通信量,MySQL查看。因此,您基本上可以让您的站点面向世界,等待2天(至少),运行调优脚本&然后再等几天再调一些。一周左右之后,您应该能够对MySQL进行调优,以尽可能好地使用您的设置。

票数 18
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/551727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档