公告:网址大全导航目录www.btv85.com为各位站长提供免费收录网站的服务,VIP会员每天提交网站30、文章30免审核,快审服务(10元/站),可自助充值发布。

点击这里在线咨询客服 点击这里在线咨询客服
新站提交
  • 网站:223084
  • 待审:0
  • 小程序:16453
  • 文章:25726
  • 会员:223

今天BTV导航网的小编为你讲一下大型网站的实例分析 掌握构建大型网站的架构相关的内容。

学习和掌握构建大型网站的架构,需要汇总散落的文章,梳理零散的内容。做好这项工作很有意义,但是也比较困难。我们的体会是,不妨抓住以下几个主题,逐个分析大型网站的实例,然后横向比较。

1. Database

数据存储历来是麻烦,尤其是需要存储海量数据的时候,往往单个数据库容量不够,甚至一个数据库集群也不够。常见的解决办法是分割,譬如按用户ID把海量数据分割成若干块,每块存储到一个独立的数据库里去。但是分割的做法降低了join操作的效率。

Google Bigtable的效率如何?好处是什么,缺陷是什么?Bigtable对什么样的情景最适用?根据Bigtable原理实现的开源软件,Hadoop/HBase的运行效率如何?

2. Cache

用户访问网站时,通常读的操作比写的操作更频繁。为了提高读的操作,不妨把相关内容缓存到内存里,减少Disk IO的消耗。

MemCached 最近大热,Wikipedia, YouTube, Digg, Twitter等等大型网站都在用MemCached作为缓存工具。SquidCache和Varnish等等工具,也与缓存沾边。Twitter的做法是把MemCached和Varnish结合起来,同时使用。什么样的内容,应该用什么样的缓存工具?不同的工具间如何协调?各大网站的实际运行的结果,有哪些经验和教训?

3. File System

有些内容,既没必要存放在数据库里,也不适合存放在缓存中,譬如log 和images。在这种情况下,我们需要文件系统。当有海量内容需要存放在文件系统中时,我们需要使用分布式文件系统。Google File System对于什么样的情景适用,什么样的情景不适用?分布式文件系统常常需要相应的锁机制,保证并发的读写操作不相互干扰。Chubby有什么好处?什么情形下不适用?

据说MogileFS更适合存储大量的,但是单体尺寸不大的文件,譬如images。而Google File System更适合存放大尺寸但是数量不多的文件。有没有可能把小尺寸的多个文件,合并成一个大文件,然后存储到Google File System中去。在这种情况下,比较MogileFS与Google FS的性能,是否有高下之分?

4. Thread Management

一套工序通常由若干任务组成。多线程的办法是由一根线程全权负责整套工序的操作。另外一个办法是把工序斩成几段,每一段由一根或几根线程负责,这种办法称为工作台。

常见的是多线程的办法。但是工作台的做法有利于集中计算资源处理繁重的任务,避免瓶颈的出现。但是缺陷是需要在不同线程之间,传递记录中间状态的数据。什么样的情形适合用多线程,什么时候用工作台?

5. Scheduler

同一个网站通常会提供多种服务,不同的服务需要调用不同的业务逻辑。有些业务逻辑可以在同一台服务器上完成,但是当业务逻辑复杂的时候,需要调用多台服务器合作完成。不同服务的受众对象不同,流量也不同,不同时段的流量也不同,同一时段不同服务的流量也不同,所以需要动态地分配计算资源。这是 scheduler的工作。

Scheduler给不同服务器分配工作时,最简单的办法是启动预先安装在该服务器上的相关程序。由于不能保证每个程序都十分完美,当一个程序发生错误时,应当避免整个服务器因此而崩溃,影响其它工作的正常进行。是否需要动用virtual machine,实现各个不同工作之间相互隔绝?

6. Signal Flow and Data Flow

大型网站后台系统经常由众多服务器组成,服务器与服务器之间时不时会发生数据交换,譬如Web Server解析完用户请求后,把请求转发给某一台App Server,这一台App Server完成了部分工作后,把中间数据转发给下一台App Server。而第二台App Server完成任务后,整个工作就结束了,结果应该返回给Web Server。

问题是如何让第一台App Server如何知道应该把中间结果给第二台App Server,而第二台App Server又如何知道它的目的地是Web Server?一个比较有效率的做法,是区别数据流和控制流。Server与Server之间常设通道,专供控制流使用,传递指令去控制数据流的发送。数据流不占用控制流通道,只有在需要时,才建立数据流的通道。

控制流和数据流的组织,需要结合具体的业务逻辑,才能优化设计,减少带宽消耗,缩短数据传输的时间。

7. Instrumentation

网站后台各个部分是否运转正常,哪里是瓶颈,哪里空闲。这些都需要实时监控。不仅及时避免整个后台系统的崩溃,而且可以分析各个部分运行的规律,从而找到优化系统的途径。

问题是,应该选用什么样的监控工具,才能够尽量减少对系统程序的干扰,同时提供有价值的信息?

8. Anti-abuse

通常网站面对的是形形色色的用户,绝大多数用户的行为是友好的,但是不排除少数用户蓄意恶作剧。如果事先没有设计防范措施,少数恶意用户的胡作非为,会干扰其他用户享受正常的服务。

问题是,如何防范并且及时制止恶意行为的发生?

9. Exception Handling

不论预先设想有多周密,实际运行时,总会遇到这样那样的意外情况。譬如敏感词的出现,往往事先没有征兆。所以,在设计系统架构时,应该给网管提供必要工具,应付突发事件。

通过对大型网站的实例分析 掌握构建大型网站的架构的详细介绍,希望对你有所帮助,我们提供了更多和大型网站的实例分析 掌握构建大型网站的架构类似的相关内容推荐,可以你更全面的帮助你解决问题。我们BTV85网址导航还提供网址收录服务,你可以注册提交你的网站信息,帮你引导搜索引擎蜘蛛,同时还有网站SEO优化交流微信群,里面很多SEO高手和大咖,加友链,可以免费进群。

大型网站的实例分析 掌握构建大型网站的架构同类内容推荐:
  • 云京忆梦角色分析大全

    云京忆梦角色有哪些?游戏内有着各种角色,其中包括:赵盈、王安石等,很多玩家不清楚这些角色的具体效果以及作用。 2023-03-06

  • 崩坏星穹铁道白嫖四星光锥分析汇总

    崩坏星穹铁道白嫖四星光锥有哪些?游戏中有很多四星光锥是免费获得的,只要打忘却之庭和历战余响就能兑换获得。 2023-02-28

  • 崩坏星穹铁道位面饰品分析汇总

    崩坏星穹铁道位面饰品有哪些?位面饰品是游戏里面的套装,只有二件套效果,一般搭配四件套遗器进行使用。下面带来 2023-02-25

  • 崩坏星穹铁道无名客大月卡光锥分析汇总

    崩坏星穹铁道大月卡光锥怎么选择?游戏里面玩家购买了大月卡(无名客的荣勋/奖章),并且大月卡等级到达30级之后,能 2023-02-24

  • 崩坏星穹铁道全遗器套装分析汇总

    崩坏星穹铁道遗器套装有哪些?游戏里面有着各种遗器,这些遗器拥有二件套和四件套效果,目前四件套遗器共有12种。 2023-02-24

  • 崩坏星穹铁道停云分析说明

    崩坏星穹铁道停云好用吗?“停云”是一名四星辅助,雷系角色之一,其辅助能力非常强,几乎可以和布洛妮娅相提并论,下 2023-02-23

  • 崩坏星穹铁道时节不居分析说明

    崩坏星穹铁道时节不居适合谁?时节不居是游戏内常驻五星光锥,可以给奶妈角色使用,可以提高回复和输出,非常不错。 2023-02-22

  • 崩坏星穹铁道制胜的瞬间分析说明

    崩坏星穹铁道制胜的瞬间适合谁?制胜的瞬间是游戏内常驻五星光锥,存护角色才能用,那么这把武器好不好用呢?下面带 2023-02-22

  • 崩坏星穹铁道于夜色中分析说明

    崩坏星穹铁道于夜色中适合谁?于夜色中是游戏内的五星限定光锥,可以给巡猎类角色使用,那么于夜色中具体怎么样呢 2023-02-22

  • 原神3.5申鹤复刻抽取分析

    原神3.5申鹤复刻值得抽吗?申鹤是3.5第二期池子的复刻角色之一,定位为冰系主C的专辅,非常适合搭配神里绫华使用 2023-02-20

  •   admin

    注册时间:

    网站:0 个   小程序:0 个  文章:0 篇

    • 223084

      网站

    • 16453

      小程序

    • 25726

      文章

    • 223

      会员

    赶快注册账号,推广您的网站吧!
    热门网站
    最新入驻小程序

    小朋友猜谜语2021-05-24

    小朋友猜谜语是一款学习教育类的

    球比分2021-05-24

    球比分是一款体育运动类的小程序

    匠人名片2021-05-24

    匠人名片是一款交友社交类的小程

    知晴2021-05-24

    知晴是一款生活服务类的小程序应

    优惠券查询工具2021-05-24

    优惠券查询工具是一款其他工具类

    成语词典汉字拼音故事大全字典2021-05-24

    成语词典汉字拼音故事大全字典是