WEB架构演变

网友投稿 566 2022-05-30

WEB架构的演变

分布式、集群我想大家都听说过,那么这个东西是怎么转换来的呢?

今天我们来聊一聊WEB架构的演变。

假如我们要搭建一个购物网站,最初我们只有一台服务器,很快我们发现服务器资源不够用,怎么办呢?

简单来说,就是将同一台服务器上的webserver和数据库分散到两台服务器。

你想一下,用户访问我们的页面,如果每次访问要经常去查询数据库的话,这要消耗多少资源。所以我们要尽可能多静态页面,并将页面缓存。

动态缓存有asp(.Net)、jsp ( Java ) 这些东西。

用户访问这些页面,比如访问一个jsp页面,它是将Java代码翻译成Html页面。你想一想如果每次访问都要翻译一次,这对服务器资源的消耗比较大。所以要将其缓存,但是页面动态缓存和静态页面的缓存是不一样的,可以使用Freemarker来处理。

就是将数据库查到的数据进行缓存。我们接下来简单说一下数据缓存。数据缓存可以使用redis和memcache。

我们要将百分百确定很多人会用的数据将其缓存。

增加了一台网站服务器就会发生这种情况:第一次登陆进入的是服务器A,去数据库访问了一次,而第二次登陆进入的却是数据库B,又得访问数据库。要想解决这个问题,我们就要使用memcache,其实就是通过分布式session共享来实现。

WEB架构的演变

其实这个就是负载均衡。

如果数据库访问量大到一定程度,我们就要增加数据库,也就是分库。MySQL本来就是支持分库的,就是使用MySQL主从架构。

为什么要分表呢?因为一个表过大了会在某些操作时影响效率。

我们可以用Hash来进行分表。

有水平分表和垂直分表两种操作。

DAL就是定义数据库分发请求规则。根据规则来存数据和取数据。

如果要缓存的数据量很大,我们就使用分布式缓存,用redis集群来缓存。

如果还不行,就继续增加web服务器吧。

什么叫读写分离?我们数据库无非是两种操作,读和写。我们让主从分离的数据库中主数据库进行增删改,而从数据库进行查的时候多一点。

什么叫廉价的存储方案?其实就是一群小鱼吃大鱼。

如果还需要扩展应该怎么办呢?

我们就要熟悉业务逻辑,从需求层面上取拆分。

web前端 数据库

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:企业MES系统应用成熟度的评估方法及示例
下一篇:容器部署场景下如何保障配置中心可用性达到99.99%
相关文章