我没有用python写过web,但可以给点其他建议。
1.以20w的pv(你确定是pv而不是uv?)来算,平均每秒200000/3600/24=2.3个pv,这个量级的代码随便写都可以,更不用提架构了。
2.我这里的一台测试服务器(8G内存,双核2.2G CPU),可轻松应付一天500w pv的请求。
3.如果以20w的uv来算,算一个用户平均触发50个请求,pv大概在1000w。数据库的用户数大概也会在1000w这样。业界常用的django等框架,再加缓存(比如memcached),数据库使用mysql,都没有问题。
总结:刚开始流量小,不用对架构太苛刻。如果考虑到以后的扩展,尽量使用一些分布式的工具和应用。像本地缓存就不适合以后多台机器的部署。
回复话题修改:
要对“吃力”有个量的衡量,要改哪里,首先要找出问题在哪里。
从浏览器客户端:
首先保证自己的网络没问题,使用安装firebug的firefox访问网站,看看这2个参数:等待响应时间和接受数据时间。等待响应是等待服务器的响应,如果这个时间过长,基本就是服务器处理请求吃力了。如果接受数据时间过长,也就是网站的js、图片等文件过大,就如您说的放在amazon会好一些。
从服务器:
能进入到服务器查看系统状态吗?吃力的时候,cpu是多少,内存占用多少,apache启动了几个进程。如果连接不多,但cpu占用很高,基本就是代码的设计问题了。建议先优化自己的代码。
您描述的访问量一般服务器都能应付,首先还是看看自己的代码能不能再优化一下吧。业务逻辑太复杂、数据库联表查询太多都会造成请求过慢。
登录 | 立即注册