大型网站架构演变和知识体系
看看这一步完成后系统的图示:
这一步涉及到了这些知识系统:缓存手艺,包罗像Map数据结构、缓存算法、所选用的框架自己的实现机制等。
架构演变第五步: 增添webserver
好景不长,发现随着系统会见量的再度增添,webserver机械的压力在岑岭期会上升到比力高,这个时间最先思量增添一台webserver,这也是为了同时解决可用性的问题,制止单台的webserver down机的话就没法使用了,在做了这些思量后,决议增添一台webserver,增添一台webserver时,会遇到一些问题,典型的有:1、怎样让会见分配到这两台机械上,这个时间通常会思量的方案是Apache自带的负载平衡方案,或LVS这类的软件负载平衡方案。2、怎样保持状态信息的同步,例如用户session等,这个时间会思量的方案有写入数据库、写入存储、cookie或同步session信息等机制等。3、怎样保持数据缓存信息的同步,例如之前缓存的用户数据等,这个时间通常会思量的机制有缓存同步或漫衍式缓存。4、怎样让上传文件这些类似的功效继续正常,这个时间通常会思量的机制是使用共享文件系统或存储等。在解决了这些问题后,终于是把webserver增添为了两台,系统终于是又恢复到了以往的速率。
看看这一步完成后系统的图示:
这一步涉及到了这些知识系统:负载平衡手艺(包罗但不限于硬件负载平衡、软件负载平衡、负载算法、linux转发协议、所选用的手艺的实现细节等)、主备手艺(包罗但不限于ARP诱骗、linux heart-beat等)、状态信息或缓存同步手艺(包罗但不限于Cookie手艺、UDP协议、状态信息广播、所选用的缓存同步手艺的实现细节等)、共享文件手艺(包罗但不限于NFS等)、存储手艺(包罗但不限于存储装备等)。
架构演变第六步:分库
享受了一段时间的系统会见量高速增加的幸福后,发现系统又最先变慢了,这次又是什么状态呢,经由查找,发现数据库写入、更新的这些操作的部门数据库毗连的资源竞争很是猛烈,导致了系统变慢,这下怎么办呢,此时可选的方案有数据库集群和分库计谋,集群方面像有些数据库支持的并不是很好,因此分库会成为比力普遍的计谋,分库也就意味着要对原有程序举行修改,一通修改实现分库后,不错,目的到达了,系统恢复甚至速率比以前还快了。
看看这一步完成后系统的图示:
这一步涉及到了这些知识系统:这一步更多的是需要从营业上做合理的划分,以实现分库,详细手艺细节上没有其他的要求;但同时随着数据量的增大和分库的举行,在数据库的设计、调优以及维护上需要做的更好,因此对这些方面的手艺照旧提出了很高的要求的。
架构演变第七步:分表、DAL和漫衍式缓存
随着系统的不停运行,数据量最先大幅度增加,这个时间发现分库后查询仍然会有些慢,于是根据分库的头脑最先做分表的事情,固然,这不行制止的会需要对程序举行一些修改,也许在这个时间就会发现应用自己要体贴分库分表的规则等,照旧有些庞大的,于是萌生能否增添一个通用的框架来实现分库分表的数据会见,这个在ebay的架构中对应的就是DAL,这个演变的历程相对而言需要破费较长的时间,固然,也有可能这个通用的框架会等到分表做完后才最先做,同时,在这个阶段可 能会发现之前的缓存同步方案泛起问题,由于数据量太大,导致现在不太可能将缓存存在当地,然后同步的方式,需要接纳漫衍式缓存方案了,于是,又是一通考察和折磨,终于是将大量的数据缓存转移到漫衍式缓存上了。
看看这一步完成后系统的图示:
“沈阳软件公司”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与
我们联系删除或处理,客服QQ:55506560,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同
其观点或证实其内容的真实性。
热门文章
使用“扫一扫”即可将网页分享至朋友圈。