我目前在我的网站上使用 CentOS(512 RAM,双核 CPU)。规格如下:
- Django 1.3.1
- Python 2.7.2
- 带有 mod_wsgi 3.3 的 Apache 2
- MySQL 5(约 5,000 条记录)
- Memcached(运行需要 120 MB)
- Nginx 用于提供静态内容
当我的网站同时有 2,000 名访客时,CPU 使用率达到总使用率的 40% 左右。当访客数量达到 10,000 人时,CPU 使用率达到 90%-100%。网站速度非常慢。我尝试过在数据库中缓存,但没有用。
我可以迁移到新的更大的服务器,但那会很浪费。因为我的网站一周 1-2 天就能达到这么大的数量。
对此有什么想法吗?谢谢!
答案1
您是否考虑过使用uWSGI?
根据我的经验和本网站,当在 nginx 后面进行代理时,它胜过所有其他设置。
有很多博客文章介绍了如何在 nginx 后面设置 uWSGI,例如 http://www.jeremybowers.com/blog/post/5/django-nginx-and-uwsgi-production-serving-millions-page-views/