`
wangshu3000
  • 浏览: 135415 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

大型网站架构之:MySpace的体系架构

阅读更多

MySpace.com有着6500万的订阅者,是因特网上增长最快的网站之一,每天还有260,000新用户注册。它经常因为性能问题而受指责,MySpace不得不处理其他网站很少碰到的或大或小的一些问题。它们是怎么做的呢?
Site: http://myspace.com
站点:http://myspace.com

平台
? ASP.NET 2.0
? Windows
? IIS
? SQL Server

内部运行情况?
? MySpace 每天处理15亿的页面页面查看,白天处理230万并发的用户

? 会员用户里程碑
- 500,000用户:简单的磕磕绊绊的体系结构
- 1百万用户:痛苦的垂直分割解决伸缩性
- 3百万用户:Scale-Out 胜过Scale-Up(按比例增加)
- 9百万用户:站点迁移到ASP.NET,增加虚拟存储
- 260万用户:MySpace拥有了64位技术
? 500,000 个帐号对于两个web服务器和一个数据库来说负担太大了
? 100-200万个帐号

   - 他们使用了一种数据库体系结构,围绕着垂直分割的概念,提供不同服务比如界面登录,用户资料和博客等的网站的各部分都有单独的数据库。
   - 垂直分割方案有助于分开数据库读和写的工作量,并且当用户需要一个新特征时,MySpace 将会加入一个新的在线数据库来支持它。
- MySpace 从直接使用附着于它的数据库的服务器的存储设备转换到一个存储区域网络(SAN),里面大量的磁盘存储设备由一个高速,专用网络联系到一块,同时数据库连接到SAN。到SAN的改变提高了性能,正常运行时间和可靠性。

? 300万个帐号
- 垂直分割解决方案并没有持续很长时间因为它们重复了一些水平的信息像跨过所有垂直片的用户帐号。有这么多的重复它会使系统变慢,肯定要失败。
- 个人应用比如Web站点子部分上的博客将会增长到对于单独一个数据库服务器来说太大的程度
- 在逻辑上重组所有核心数据到一个数据库里
- 把它的用户基本信息分成100万帐号一个的块,然后把所有有键的数据放到SQL Server不同实例的这些帐号中

? 900万-1700万帐号
   - 迁移到ASP.NET后,使用了比先前的体系结构更少的资源。150个服务器运行新的代码就能够做原来246个服务器做的同样的工作。
   - 再看看存储瓶颈。实施SAN解决了原来的一些性能问题,但是现在Web站点的需求开始间歇性地超过了SAN的I/O能力-它从磁盘存储读写的速度
   - 使用每个数据库100个帐号的分开方式达到了极限,因为这已经超过了极限;
   - 迁移到一个虚拟存储体系结构,那里整个SAN被当作一个大的存储池来对待,不需要特定的磁盘为特定的应用服务。现在
     MySpace在设备上从相对新的SAN厂商,3PARdata方面已经标准化了。增加了一个高速缓存层—服务器放在Web服务器和数据库服务器之间,它唯一的工作就是捕获内存中频繁访问的数据对象的副本,然后把它们用于Web应用,不需要数据库查询。

? 2600万帐号
   - 迁移到64位SQL server以解决它们的内存瓶颈问题。它们的标准数据库服务器配置使用64GB的RAM。

Myspace的经验能够说明什么?
? 你可以使用微软的技术构建大型网站。
? 从一开始就应该使用缓存。
? 高速缓存是一个更好的地方存储临时数据,比如Web站点上跟踪一个特定用户的会话产生的临时文件,就不再需要记录到数据库里,
? 嵌入OS特征来检测拒绝服务攻击会产生无法解释的错误
? 把数据分布到地理位置不同的数据中心,以免发生断电事故。
? 从开始就考虑使用虚拟存储/簇文件系统。它能让你大量并行IO访问,而且不需要任何重组就能够增加所需要的磁盘。

分享到:
评论

相关推荐

    大型网站架构之_MySpace的体系架构.doc

    MySpace的体系架构展示了大型网站如何应对海量用户和高并发挑战。这个社交网络平台在初期遇到了性能问题,但通过不断的技术迭代和优化,逐步解决了这些问题。以下是从文档中提炼出的关键知识点: 1. **垂直分割与...

    超大型网站架构设计模型

    超大型网站架构设计模型是针对高流量、大规模用户量的互联网平台所采用的一种复杂而高效的设计方式。在网站架构设计中,需要考虑到系统的可扩展性、数据一致性、服务器分布和性能优化等多个关键因素。本文以社交网站...

    大型网站架构设计与分析案例汇总.pptx

    【大型网站架构设计与分析案例汇总】 在构建大型网站架构时,我们需要考虑许多因素,如性能、可扩展性、可靠性、安全性以及开发效率。以下是从案例中提取出的关键知识点: 案例1: 1. 开发模式:MVC(Model-View-...

    知名互联网公司网站架构图

    ,YouTube,MySpace,Twitter,国内如优酷网等大型网站的技术架构(本文重点分析优酷网的技术架构),以飨读者。本文着重凸显每一幅图的精彩之处与其背后含义,而图的说明性文字则从简从略。ok,好好享受此

    Dan Farino谈MySpace架构

    Dan Farino,作为MySpace的首席系统架构师,面对着庞大的用户群体和海量的数据处理需求,构建了一套独特的架构体系,以应对大规模网站运营中的各种挑战。本文将基于Dan Farino的分享,深入探讨MySpace架构的关键知识...

    大型高并发高负载网站的系统架构.pdf

    【大型高并发高负载网站的系统架构】 随着互联网行业的飞速发展,大型企业网站面临着前所未有的挑战,包括海量数据处理、高并发访问、安全性、信息检索效率等方面的提升需求。本文将通过对国外大型IT网站,尤其是...

    WWW::Myspace-开源

    这个模块提供了一系列功能,使得开发者和用户可以方便地通过编程方式访问和操作他们的 Myspace 帐户。在 Myspace 平台流行的时代,这个工具对于自动化管理个人资料、发送消息、更新状态、以及处理朋友请求等任务非常...

    大型互动网站架构概览

    大型互动网站架构是构建在海量用户基础之上的复杂系统,其设计主要针对高并发访问、海量数据处理和实时响应的需求。这些网站如Friendster、Myspace、Facebook、Flickr、LiveJournal、猫扑大杂烩以及校内网,都是社区...

    校内、猫扑、facebook大型互动网站架构预览

    《大规模互动网站技术架构探析——以Friendster、Myspace、Facebook等为例》 在互联网的快速发展中,大型互动网站如Friendster、Myspace、Facebook、Flickr、LiveJournal、猫扑大杂烩以及校内网等,已经成为人们...

    商业网站架构演变

    亿万用户网站MySpace的成功秘密、Flickr架构、YouTube网站架构、PlentyOfFish 网站架构学习、WikiPedia技术架构学习笔记。这几个都很典型,我们可以从中获取很多有关网站架构方面的知识,看了之后你会发现你原来的...

    MYSpace架构设计

    MYSpace从一个简单的社交平台发展成为了一个拥有数千万用户的大型社交网络,其技术架构经历了从单一技术栈向多样化、高性能架构的转变。在这个过程中,MYSpace团队不断地优化和完善其技术架构,同时也积累了许多宝贵...

    从MySpace的六次重构经历,来认识分布式系统到底该如何创建MySpace技术架构

    从MySpace的六次重构经历,来认识分布式系统到底该如何创建MySpace技术架构

    大规模网站架构.ppt

    《大规模网站架构》 在互联网领域,随着用户量和数据量的不断增长,构建能够应对大规模访问和处理的网站架构成为一项挑战。本文件重点探讨了如何设计和优化网站架构,以实现高可用性、可伸缩性和高性能,以及面对...

    大型网站的架构设计图分享

    ,YouTube,MySpace,Twitter,国内如优酷网等大型网站的技术架构(本文重点分析优酷网的技术架构),以飨读者。本文着重凸显每一幅图的精彩之处与其背后含义,而图的说明性文字则从简从略。ok,好好享受此

    从MySpace的六次重构经历,来认识分布式系统到底该如何创建

    本文将以社交网站MySpace的发展历程作为案例,通过对MySpace六次重大重构过程的分析,探讨分布式系统的设计原则和技术选型。 #### 二、里程碑一:50万账户—从单一数据库到主从复制模型 - **初始架构**:MySpace...

    高并发量网站基础架构

    在构建高并发量网站的基础架构时,我们需要考虑的关键点包括:服务器扩展性、数据库优化、负载均衡、数据缓存和高性能存储系统。以下是对这些关键点的详细解释: 1. **服务器扩展性**:最初,MySpace采用简单的Web...

    大规模网站架构 讲义

    ### 大规模网站架构讲义知识点详解 #### 一、引言 在互联网时代,随着用户数量和数据量的急剧增长,如何构建一个能够高效、稳定运行的大规模网站成为了一个重要的课题。本讲义旨在介绍大规模网站架构的核心概念、...

Global site tag (gtag.js) - Google Analytics