1.原始网络

image.png

2. 最初单体架构

image.png
时间久了,数据拥挤,会导致整个服务器宕

3. 单体架构解决方法的演变

最初分离为两个服务器
image.png
上面用户直接访问数据库会导致速度变慢,我们引用一个缓存中间件
image.png
上面还有可能导致问题,我们引入服务器集群,利用负载均衡算法分摊到这个服务器集群中,同时文件数据库,缓存中间件,数据库也都可以集群.
image.png

可以做数据库读写分离降低服务器压力,一定要注意主库和从库的数据同步
image.png
如果数据量很大,我们还可以做分库和分表,将数据拆分为多个库,将同一个表的数据通过一定的算法和规则散列到不同数据库中,也成为分布式数据库,对数据库拆分的最后方法,当数据非常非常庞大时我们才考虑使用它。
image.png
随着网站业务的持续发展,用户对我们数据的检索可能出现多样化,数据库的模糊查询满足不了顾客需求,于是我们就引入了搜索引擎帮助用户进行检索,提高用户体验。
image.png

因为我们将服务拆分,用户的请求可能会到达多个子库,所以我们必须考虑分布式事务
image.pngimage.png