问题
有两个独立的系统,A系统是班级信息管理系统,B系统是图书管理系统。
现在的设计思路是,A系统和B系统分为两个独立的业务项目,其数据库也各自独立,分为A数据库和B数据库。
A系统和B系统之间的唯一联系就是用户信息表,即A系统中的用户信息在B系统中也同样存在。
请问这种需求的系统,数据库怎么设计会比较合理?
我的思考
方案1
由于A数据库和B数据库中各自都有用户表,但是他们的内容是相同的,所以我可以开发一个单独的C系统专门用来同步这些用户的基础信息。
难点:用户信息同步太麻烦,总觉得这么做不是很好。
方案2
单独将用户信息表抽离成第三个数据库,当A系统或B系统需要访问用户信息的时候直接跨数据库联查。
难点:跨数据库联查感觉更麻烦- -;
总结:
具体的设计思路我不是很清晰,或者说对于这种需求,是否已经有成熟的解决方案?求支招。
oAuth 不就为了解决你这种问题的吗