关于微服务数据库分库后的连表问题
来源:2-3 章节思考题

神奇大樱桃
2022-02-24
老师你好,微服务的数据库分库后,如果A服务要展示的数据需要和B数据库的表关联,微服务划分后,数据库层面就没法做join操作,企业现在通用的方式是怎么处理的。我目前的解决方法是通过feign来调用其他服务获取数据,再插到A服务的对象中,如果遇到关联的表多,就需要feign调用多次,我不认为这是一个好的解决方法,这样的话代码量会堆积非常多,如果没有划分数据库的话,只要通过join就解决问题了。
所以概括就是,我需要关联到其他服务的数据库的表,没法join,我应该怎么做,谢谢老师。
写回答
1回答
-
张勤一
2022-02-25
同学你好:
目前我知道的情况是,分库是不能够做 join 的;当然,即使是做了分表,做 join 也是非常麻烦的。所以,可以肯定的是,尽可能不要去做分库分表。
你说的这种情况,目前的解决办法基本上就是你在做的;调用其他的服务,或者数据,在代码里面去做 join。如果没有涉及到特别大的并发,这种方法也就是业界的解决方案,没有不好的地方。
10
相似问题