记得在大学里不止一次关注网站架构方面的东西了,但每次都是泛泛了解,也没有着重记录,一段时间后对各种架构的思想也就模糊了。这几天不知怎么的又
心血来潮(可能是快毕业了冲动了)想深入了解一下网站架构方面的知识,并想通过这次来总结一下网站架构,记录一点东西供自己以后翻阅,也给那些希望了解这
方面知识的朋友提供一点点有用的信息,下面是我这次学习的总结笔记,有什么写得不妥的地方还请大家指出,还有希望这篇随笔能抛砖引玉,大家各抒己见。
1、MySpace架构
回顾了MySpace的成长史,真是让人惊叹,他的架构基本经历了五个里程碑,每个阶段都是显得那么仓促,那么无奈,那么坎坷,又是那么的精彩,网
站为了生存只能想尽一切办法去优化系统架构,让用户满意。他给我们后人的启示是要尽早发现系统的瓶颈,设计师在设计时要有前瞻思想,否则今后有可能也要这
样仓促的升级你的产品。
这里是“五个里程碑”
的具体介绍。
2、Flickr网站架构总结
Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给Windows Vista拍摄壁纸的Hamad Darwish吗?他就是将照片上传到Flickr,后而被微软看中成为Vista壁纸御用摄影师。
--Pair of ServerIron's做负载均衡
--Squid做html和照片的缓存
--Memcached做数据缓存
--尤其是mysql数据库采用master-slave和shards技术实现了mysql数据库的负载均衡,解决了数据库的瓶颈,达到了数据库横向扩展的目标。
这里是他详细的架构描述
3、YouTube架构总结
这个貌似在国内是被和谐的(不知到底何故)。看看他的架构:
--NetScaler用于负载均衡和静态内容缓存
--使用lighttpd作为Web服务器来提供视频服务
--CDN在多个地方备份内容,这样内容离用户更近的机会就会更高
--使用Google的BigTable,一个分布式数据存储、数据库
分成shards,不同的用户指定到不同的shards、
使用BigTable将图片备份到不同的数据中心,代码查看谁是最近的
这里是YouTube详细架构描述
4、PlentyOfFish架构总结
这个我觉的最神奇了,一个人每天花2个小时,可以维护一个每天3000W PV的,而且是基于.NET的(呵呵,终于给我们.net程序员一个好榜样了)。简述他的架构:
--用Microsoft Windows操作系统作为服务器
--使用ASP.NET技术
--使用IIS作为Web容器
--用Akamai CDN来缓存网页
--用Foundry ServerIron 来做负载均衡
--sqlserver采用master-slave架构,两台负责read操作,master那台负责写操作
--所有的request数据都使用了gzip压缩
PlentyOfFish详细架构描述
5、WikiPedia架构总结
维基百科(Wikipedia)是一个基于Wiki技术的全球性多语言百科全书协作计划,同时也是一部在网际网路上呈现的网路百科全书,其目标及宗旨是为全人类提供自由的百科全书──用他们所选择的语言来书写而成的,是一个动态的、可自由和的全球知识体。
--GeoDNS让用户能够访问离他地域最近的Web服务器
--
用LVS实现负载均衡
--
用Lighttpd做图片服务器
--
使用MediaWiki软件
--大量缓存(Cache),
Squid 作为反向代理,
Memcached做数据缓存
--
用Mysql数据库集群
WikiPedia架构详细介绍
先暂时总结这么多吧,欢迎大家点评。
分享到:
相关推荐
软件架构师考试总结笔记,包括很多考试常见的内容
系统架构师的学习笔记,通常是资深架构师或者对架构有深入研究的专业人士根据个人经验和学习总结所撰写的学习资料,它可以帮助开发工程师向系统架构师的职业发展道路上迈进。 从提供的内容来看,系统架构师的学习...
系统架构师的知识结构应包括对多种系统方法和工具的鉴别能力,以及从实践中总结架构模式。成为合格的架构师并非短期内通过培训就能达成的,而是需要实际经验的积累和行业的深入理解。 笔记的第二部分介绍了计算机...
在《从零开始学架构》读书笔记中,总结了许多架构设计的关键知识点,下面将详细解释这些内容。 1. 架构与框架的区别:架构强调的是系统的“结构”,而框架则是关于“规范”。架构设计需要解决由系统的复杂性所带来...
他们需要从这些方法中筛选出有效的实践,总结行业规律,并形成自己的架构模式。这并不是短时间内通过短期培训就能达成的,厂商的培训和认证更多的是为了推广市场和产品,而非培养真正的架构师。 在《计算机网络基础...
对于软件架构师的培养,笔记强调了需要通过深入行业的实践和总结来提升自己的架构模式,而不是依赖短期的培训和认证。这提示我们,要想成为一名合格的系统架构师,必须注重实践经验和理论知识的结合,不断提升个人的...
读书笔记中总结了 Web 信息架构的重要概念和设计原则。 必要的房间 在 Web 信息架构中,需要提供一个特殊的场所,即“必要的房间”,以便用户执行非正常操作时的处理。例如,清除数据库不是一种正常的活动,因此...
- **成长路径**:从开发人员到架构师的转型,需要不断积累实践经验,总结个人的架构模式,通过深度参与项目,逐步提升对行业规则的理解。尽管短期培训难以培养出成熟的架构师,但持续的学习和实践是成为优秀架构师的...
文是学习大型分布式网站架构的技术总结。对架构一个高性能,高可用,可伸缩,可扩展的分布式网站进行了概要性描述,并给出一个架构参考。一部分为读书笔记,一部分是个人经验总结。对大型分布式网站架构有很好的参考...
本文总结了 Spring Cloud 微服务架构笔记(一),涵盖了微服务基础知识、系统架构演变、单体应用架构、垂直应用架构、分布式 SOA 架构、微服务架构、分布式核心知识等方面的知识点。 微服务基础知识: 1. 微服务...
在李辉所著的《高级软件架构设计实践笔记》中,作者深入探讨了软件架构设计的诸多方面,旨在帮助读者建立一个全面的架构设计知识体系。 软件架构设计首先需要明确的是架构的概念。《高级软件架构设计实践笔记》从...
笔记本基本架构简介总结学习课程.pptx
### 牛人的PHP学习总结笔记知识点详述 #### PHP概述 PHP,全称为"PHP:Hypertext Preprocessor",是一种开放源代码的多用途脚本语言,特别适用于Web开发,可嵌入到HTML中,与JavaScript(客户端)不同,PHP在服务端...
- 总结个人经验,形成自己的架构模式。 - 不断深入学习,提高专业素养。 - **行业积累**: - 在实践中不断积累经验,总结行业的通用规律。 - 了解最新的技术和趋势,保持技术敏感度。 - **职业培训与发展**: ...
- 总结个人架构模式。 - 深入行业,提炼规律。 - 商业培训和认证虽然有助于技能提升,但最终目标是培养市场的忠诚用户而非真正的架构师。 ### 计算机网络基础知识 #### 1. 计算机系统的组成 - **软件分类**: -...
电力系统技术总结笔记主要涉及了Java Web开发中的SSH框架,这是一种经典的MVC(Model-View-Controller)架构,用于构建动态、数据驱动的Web应用程序。SSH由三个主要部分组成:Struts作为控制器,Spring作为业务层...