Java系的大网站架构-LinkedIn和淘宝

用Java的大网站很多(LinkedIn,淘宝),当然用LAMP(PHP+MySQL)的更多(Facebook是把PHP转成C++编译的,也算),用ASP.NET也有一些(如Stackoverflow,CSDN,京东)。其实高并发的大网站架构和具体的语言没有啥大关系。针对高可用、可扩展的、高可伸缩性的、异步、解耦、面向服务的、分而治之的架构设计才是关键。操作层面来说,分布式文件系统、异步消息系统、分布式缓存系统、数据库的水平垂直分割分库分区分表甚至NoSql、反向代理、CDN、负载均衡设计、高可靠性异步消息队列,Hadoop,等等,这些都是和语言没有关系的,统称“分布式系统架构”。当然,语言和生态环境绑定,比如,选择了ASP.NET就绑定了微软的服务器和数据库。所以语言的选择还是需要考虑很多其他的方面,比如团队的熟悉程度、有没有好用的IDE、有没有内存诊断工具、容易找到开发人员吗、社区技术支持、成本如何、是否易于管理等众多因素。扯远了。

先说说淘宝的Java架构吧,淘宝最早是LAMP架构,后来转Java了,具体的原因是这个;关于淘宝的架构演化,可以看这个文章;关于支付宝的SOA架构,可以看这个视频。

再说说LinkedIn架构把,用到这些Java框架和技术:

Java系的大网站架构-LinkedIn和淘宝_第1张图片

 

系统架构(面向服务):

Java系的大网站架构-LinkedIn和淘宝_第2张图片

 

Java系的大网站架构-LinkedIn和淘宝_第3张图片

 

2006年那时候的架构:

Java系的大网站架构-LinkedIn和淘宝_第4张图片

选择Java的原因:

Java系的大网站架构-LinkedIn和淘宝_第5张图片

Tag<架构>,或许您对以下文章有兴趣

  • 可伸缩性最佳实践(翻译)
  • 开心农场的架构
  • DAL - 手机之家的数据访问层实践
  • 与冯大辉谈数据库架构(InfoQ)
  • 大型网站系统架构分析
  • CTO谈豆瓣网和校内网技术架构变迁
  • 程序员办网站创业,几个问题你想好了吗?
  • SQLServer索引调优实践
  • SQLServer索引调优实践(2) - 索引覆盖
  • AJAX延迟异步加载边栏+服务器端缓存AJAX输出
  • 二级下拉菜单被遮住,css设置z-index在ie下没作用的问题解决办法
  • 简单JS实现走马灯效果的文字(无需jQuery)
  • jQuery和ExtJS的timeOut超时设置和event事件处理
转载自:http://www.cnblogs.com/Mainz/p/3219224.html

你可能感兴趣的:(服务器及架构)