使用 Nginx、Gunicorn、Django 运行论坛需要多少内存?

Rob*_*ith 2 memory nginx swap amazon-ec2 gunicorn

我启动了一个 ec2 实例(微型)来测试我可用于运行网站的内存量,但我希望有更多的内存。所以我的问题是:使用 Django、Nginx 和 Gunicorn 运行一个站点需要多少内存。这是我发现的:

启动 Ubuntu 12.04 实例消耗:

             total       used       free     shared    buffers     cached
Mem:           590        235        354          0          7        182
-/+ buffers/cache:         45        544
Swap:            0          0          0
Run Code Online (Sandbox Code Playgroud)

运行 Gunicorn 后:

             total       used       free     shared    buffers     cached
Mem:           590        195        394          0          9         73
-/+ buffers/cache:        112        477
Swap:            0          0          0
Run Code Online (Sandbox Code Playgroud)

所以我有 394MB 可用空间,尽管我忘记创建交换卷。这足以运行一个每月访问 3000-4000 次的论坛吗?我也很感激有关配置交换的正确方法的一些评论。

非常感谢

Far*_*han 5

使用的内存是 45MB,而不是 235MB。要知道这一点,您需要转到此处获取详细信息,以检查如何使用此命令了解实际内存使用情况以及内存去了哪里。

http://www.linuxatemyram.com/

  1. 立即创建一个交换分区,至少 2GB 或更多,因为在任何情况下服务器耗尽 RAM,然后 SWAP 将用作内存使用,这会降低服务器的速度,但至少不会使其崩溃。

  2. 要了解实际使用量,根据您拥有的用户数量,您需要使用来负载测试工具,该工具将测试您的网站有 1、10、20、50、1000-4000 个用户,并基于什么您给每个用户的请求类型。例如,基于该软件,您可以记录用户登录站点、浏览某些页面和注销,该软件将针对您提供的用户数运行相同的场景。因此,对于每个用户数量,您可以检查使用的 RAM 量,这将使您了解您的站点需要多少 RAM。一些负载测试工具是:

http://loadimpact.com/

http://www.webresourcesdepot.com/15-free-functionality-and-load-testing-tools-for-web-applications/

http://www.webperformance.com/

/sf/ask/35537841/

http://jcrawler.sourceforge.net/

  1. 不要在 Micro 实例上运行测试,因为它的 CPU 被限制不能用于实际使用,并且由于 CPU 限制,您可能会得到错误的结果。当您要执行测试时,至少使用 Amazon SMALL 服务器。