微服务拆分与多表关联查询
来源:3-12 创建项目-2

WittChen
2022-09-15
问题描述:
老师您好,我搜了下这方面问题,发现这门课程的学友也一样提出了很多这样的问题,老师进行了一一回答,在需求是硬性要求的情况下只能用技术硬抗就比如慕课网来说,假如是,用户微服务,课程微服务,还有文章手记等等的微服务,这么一些,那么在一个列表分页查询的时候,我查询课程,查阅文章,查阅手记,我要在列表中知道每一门课程,文章,手记中显示出是哪位老师的,这就就包括了老师的头像,昵称了,这个需求合情合理,那么就不可避免的要进行关联查询了,现阶段老师的回答中只有一个回答可以解决这个问题,那就是把这些数据放到同个数据库中,然后再进行关联查询,老师在工作中也是这么做的吗
写回答
1回答
-
首先,对于强耦合的业务,不应该拆分,而应该放在一个服务中。
回到您的问题本身,两种做法:
冗余,将需要join的场景,冗余一下,不过这样带来更多问题,比如数据同步啊啥的。
如你所说,放到一个库里面。不过这是典型的微服务反模式,一般不建议使用的;目前业界比较常见的做法,是binlog监听,将所有微服务的的数据都推到同一个OLAP库中,然后统一数据分析,其实和你说的也有点类似,但是更复杂一些。好处是将分析查询,和业务分离了。
012022-09-19
相似问题
分布式微服务如何关联查询
回答 1
关于微服务拆分的问题
回答 1