现有两个系统,同处在一个网段内。A系统现有很多用户,需要同步到B系统当中去。因为B系统的很多业务操作需要派往A系统(接口),因此就把A系统的用户通过excel表的形式导入了B系统当中。但是如果A系统的内部,帐户发生了改变,B系统却不能立即得知。会造成B系统通过接口派发的业务,无法在A系统内部查看人员信息。因此,我们打算在A系统内部,把对A系统内部的相关的用户操作通过记录日志的形式记录到一个日志表中,而A系统通过开放一个视图或者是表的查询权限得到日志表中的操作信息,定时的更新B系统的用户信息。这个操作还是有滞后性,或者存在着其它的弊端,各位有什么好的想法吗?

解决方案 »

  1.   

    用数据库操作,DBLink,建个触发器
      

  2.   

    A系统提供查询接口,B系统每次通过接口派发业务前调用A的接口获取准确用户信息。(难道你的AB系统就不能同时访问一个用户列表吗?)
    我觉得我还是不明白你到底要实现什么,以上答案我自己都觉得很烂。
      

  3.   

    我有几个问题
    1.两个库的表结构是否一致,如果一致,ok!利用数据库的特性,进行同步,如果不一致,那就只能写中间程序进行同步,至于同步频率,得根据实际情况而定。
    2.这种情况应该发生下面几种情况
    a.应该是发生在重构时,新旧系统并行时:新系统要基于老系统进行重构,数据结构类似,但是新系统的数据结构可能会因为要支持更广泛的业务而发生变化,但是不得不基于老系统。
    b.如果不是a,那么就应该是系统跨库操作,这个时候我觉得应该只有主库能够被crud,而需要同步的数据库则只需要query就ok了。
    c.两数据库都可以进行crud,这种应该很少见,如果真这种情况,估计设计时有问题,同步起来以比较难以控制,对性能有一定影响