请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

微服务架构下数据库表的设计问题

老师您好! 我司目前采用的微服务架构,整个系统拆分为了6个服务。比如用户相关的:user 服务,车辆相关的:vehicle服务等。
我们目前是各个微服务之间使用的自己的数据库,这样有时在 vehicle 服务里面需要获取用户信息就没法使用连表操作,而是需要先请求user服务返回所有用户信息,然后在vehicle服务里面处理这些数据。

我想问的就是,微服务架构下,各个服务之间是用各自的数据库好点,还是都使用同一个数据库集群服务了?

感谢老师的回答,祝工作顺利,身体健康!

正在回答 回答被采纳积分+3

1回答

神思者 2019-06-24 12:20:11

数据库的垂直切分就是按照独立的业务,把一个数据库切分成独立的数据库。跨库的表连接做不了,常见的办法是调用接口先获得数据,就像你们现在做的。其实可以使用ETL中间件产品从异库数据抽取出来形成一张表,你可以看一下kettle这个中间件产品

1 回复 有任何疑惑可以回复我~
  • 提问者 marks888 #1
    请教老师,那如果涉及到事务处理有没有什么解决方案了?
    回复 有任何疑惑可以回复我~ 2019-06-25 08:18:01
  • 神思者 回复 提问者 marks888 #2
    有分布式xa事务,就是比数据库的事务复杂了一些,但是能用
    回复 有任何疑惑可以回复我~ 2019-06-25 08:46:31
  • 提问者 marks888 回复 神思者 #3
    谢谢老师,我了解下
    回复 有任何疑惑可以回复我~ 2019-06-25 08:49:52
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信