论 业务系统 架构 的 简化 用 关系数据库 作 缓存

Posted ksongking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论 业务系统 架构 的 简化 用 关系数据库 作 缓存相关的知识,希望对你有一定的参考价值。

通常, 分布式缓存 是 NoSql 数据库, 比如 Redis  。

 

但 实际上 我们 可以用 关系数据库 来 作 缓存  。

比如 常用的 商品列表 等, 可以用 关系数据库 来作 缓存, 查询 排序 维护 都很方便 。

这种情况 其实 就是 在 主数据库 外 再建一个 数据库 用于 查询, 

通过 Job 定时 同步 主数据库 的 资料 到 这个 “缓存”数据库 就可以 。

 

根据需要, 我们可以在 主数据库 外 建立 多个 “缓存”数据库, 也可以 称为 外围数据库, 周围数据库, 卫星数据库  。

通过 Job 定时 同步数据 到 这些 卫星数据库  。

 

这样的架构,  井然有序 。

 

在 大环境 上, 硬件技术 和 关系数据库技术 在 近几年 取得了 长足 的 进步,  并且这一趋势在未来还将延续 。

可以看看这篇文章   《CAP, BASE, 最终一致性和五分钟原则》    https://blog.csdn.net/u013613428/article/details/55259924

里面提到  “内存是硬盘,  硬盘是磁带”  。

 

分布式缓存 , 比如 Redis ,  可以作为 集群 的 共享内存,  Server 们 通过 Redis 来 共享数据, 通信, 同步协作 。

Redis 提供的一些数据类型还是 颇具价值 的,  比如 队列 Queue,  以及 Block Pop 等 Block 操作 。

可以用于 Server 间   共享数据, 通信, 同步协作  。

Server 间 的 共享数据, 通信, 同步协作   和   线程间 的   共享数据, 通信, 同步协作  是 类似的 ,

线程间 通过 内存 来 共享数据, 通过 Lock 来 同步协作,

Server 间 则 利用 Redis 这样的 分布式缓存 作为 共享内存, 利用 Redis 提供的 Lock ,  或者 Block 操作 来 同步协作 。

 

以上是关于论 业务系统 架构 的 简化 用 关系数据库 作 缓存的主要内容,如果未能解决你的问题,请参考以下文章

李学斌:论应用间协作V3

论软件系统的设计与开发

10亿+/秒!看阿里如何搞定实时数仓高吞吐实时写入与更新

论Mysql5.7.13架构组成之物理文件

业务架构图

推荐系统推荐业务架构介绍