Python中国架构重组,整站改版方案

作者:老老仙  Email:xieaotian@163.com
Python中国已经临近一周岁了,慢上就会爬了,所以打算把整体的网站进行整改。
因为服务器只有一台,所以只能考虑尽量做到优化的效果。
服务器只要考虑使用nginx,因为现在nginx还是比较流行的,phpchina在用,豆瓣网,新浪等的一些国内站点也在用。
之前我也了解过这款webserver,也对比了下webserver 之王的apache,无论是速率和负载方便,nginx的确做的很好
相关数据大家可以自己动手压力测试或是参考一些业界名人测试效果等。。。。
程序方面,当然是研究什么就做什么了,本身我们也是自主推广python,当然这次网站整改所用语言定位python.
好了,废话少说,一下罗列了下本站所用技术与整体架构。
单台服务器:
系统:LINUX(ubuntu.04)
编程语言: Python2.5++
框架:Django
Webserver: Nginx (Best new)
数据库:Mysql 5.x
缓存方式与软件:内存缓存;Memcached
基本就是以上简单配置,毕竟服务器只有一台,没办法,大型架构没法搭建……

数据方面,我是这样计划的:
分为三部分:
1:自己偶尔手工录入信息到数据库
2:BBS里会员录入
3:系统自动抓取,使用python在后端进行定时抓取信息入库

程序方面计划:
就是前台首先读取memcache,如果已经缓存的话,直接读取,否则就进入数据库进行读取数据,并且入memcache,
以便下次直接读取memcache.(其实这个思路相当于discuz原理一样,定期执行,但是都是前端用户在执行的,定时检测新数据,更新缓存
,当然你也可以考虑linux自动更新memcache)

搜索引擎方面:
搜索引擎方面我打算尝试喜悦村站长推荐的"Sphinx全文检索系统",不知道好使不好使,但是网上一致好评(当然也有缺点,比如分词方面没做到
不知道将来新版本里会不会有所改革,目前不怕,我们可以利用第三方插件来补充)
如果不考虑全文检索的话,把DB表建好索引,初期库表散列等优化办法以外可考虑以下搜索优化思路:(这个思路是我一个金山的朋友提供的,本人
在此特别感谢他,谢谢你的帮助!)

首先用C来连接DB并取得数据,数据库表引擎用bdb(有个前提,就是DBD表尽量用作少写多读),然后再用C写一个服务器提供给前端的PYTHON
在用PYTHON来直接向C服务索取资料即可,经多方高手探讨,结果是查询速率肯定会有所提高的。未经试验,只是给大家的一个思路。
好了,基本架构如此如此就写到这里了,以下是架构模型例图:

 

 

 

您有什么好的建议或意见请到python中国与我交流探讨或是在此回复均可,谢谢拍砖。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值