SD2.0-大型网站架构讨论沙龙
在这个SD2.0大会的沙龙中,请到了几位重要的人物:王文彬(淘宝网首席架构师)、汤道生(腾讯岩发副总裁,产品有腾讯空间等)、雷鸣(酷我网站创始人,前baidu首席架构师,北大天网作者)、钱宏武(脉网技术合作人,前sohu互动产品开发主管,产品有sohu体育直播室),主持人是CSDN的曾登高(CSDN社区平台和服务的总架构师)。
讨论的内容很泛泛,大概纪录了一下:
1、网站流量影响整个网站架构的设计
2、网站架构的设计是一种平衡的设计,没有完美的架构,架构的设计要简单灵活,便于扩充,因此找出平衡点是关键
3、网站架构的设计不要过渡,考虑到1~2年内的用户需求即可
4、小网站与大网站的区别在于,当数据量达到一定级别,小问题会变成大问题
5、大的网站架构不适合做小事情,小架构也做不了大事情
6、即使通过硬件的扩充,架构的负荷已经超过设计负荷的5~10倍,就要考虑重新设计系统的架构,举例来说就是一个研发团队是10个人以内,可以采用家长式管理,而到100人以内,管理方式必须变化,因此架构也要根据负荷情况不断变化
7、要通过网站的监控分析,来找到系统瓶颈的临界点
8、任何一个网站的开发都会是从集中式-分布式-高级分布式的方向过渡
9、Google可以通过机器的扩充来达到网站扩展的要求,依赖的是系统架构设计中的线性可扩展性
10、中国的网站架构和运营要考虑自身的网络运营环境如网通和电信网络的区别
11、网站架构的设计也要考虑运营成本的问题,能得到的资源往往比预期的要少
12、架构的设计要考虑安全性和恶意客户的攻击
13、网站的负载要通过测试来验证,并通过监控系统进行分析,并且要做好风险的应对,系统的负载永远不要超过80%
14、架构的设计中无时无刻不存在折中的情况,痛苦的取舍是必须作出的抉择
15、架构设计中要充分考虑团队、领导和用户间的沟通,龙的那片不能动的鳞也要有策略的动一动
16、架构设计要充分分析数据的特性,读和写哪个更重要,例如Google的搜索根本不用数据库,甚至连文件系统都进行重写,以达到最快的数据读取效果
17、网站架构的设计要考虑API接口的开放性
补充1:
1、网站架构是一门平衡艺术,永远在性能和需求之间寻求平衡
2、Taobao在生态圈上考虑了很久,很有可能会推出重量级的OpenAPI,具体是什么,值得期待
3、腾讯产品在产品稳定性要求很高,单组服务产品的压力测试非常严格,最终把大访问问题转化为添加服务器问题
4、完美的缓存机制需要考虑稳定性、事务处理和分布式,memCache是其中较简单的实现
5、监控程序实时报警,比如同期超过5%的正常波动
6、产品经理要溶入技术团队,避免过度设计
7、用户每上一个台阶,架构设计将迥然不同
补充部分来自:http://blog.csdn.net/zdg/archive/2007/12/02/1911813.aspx
二毛五:Web架构设计经验分享
钱宏武谈架构设计视频:http://211.100.26.82/CSDN_Live/140/qhw.flv
PlentyOfFish网站架构学习:http://www.dbanotes.net/arch/plentyoffish_arch.html