我需要一些Django服务器架构方面的指导。
我目前基于django的web应用统计(在两周内达到-运行在一个VPS w/Apache, mod_wsgi, mysql):
- 10000用户总数
- 20平均请求/用户/天 <
- 200000请求/天/gh>
- 每天8000用户访问网站
应用程序可能到达的地方(我会感到恐慌-这假设近似线性增长):
- 200,000用户总数
- 20平均请求/用户/天 <
- 4000000请求/天/gh>
- 每天16万用户访问
这里的问题实际上只是处理页面请求。我只存储基于文本的数据的短字符串,所以数据库大小不应该是一个问题。
从硬件和软件的角度来看,我应该设置什么样的服务器架构?我需要考虑缓存,负载平衡,多个处理服务器,多个DB服务器等,但不知道从哪里开始。您预计的~45/请求/秒的增长真的不是那么密集。我认为在你的web服务器前使用一个标准的nginx负载均衡器可以处理一切。如果你的数据库访问不是很密集,你可能只需要1个数据库就可以了。
我真的认为最重要的是不要做任何过早的优化。问题来了就处理,否则你可能会浪费很多时间。
有大量的缓存、多服务器配置和负载平衡教程。
谷歌是一个很好的开始。
流量增长是一个标准问题,关于这些事情不乏教程。