需求如下:
    现在运行的系统A:  服务器 Server_A   +  数据库(SQL SERVER 2005)DB_A
    现在需要做另外一个系统B:
        其实系统B所有的功能在系统A里面可以完全开发出来,即系统B的功能是系统A功能的一个子集而已,但是由于一些特殊的需求,需要将这些功能分离出来,放在系统B(机房位置与系统A的机房不同,一个在HK,一个在USA);存在的疑问是:
    数据交互是用何种方式呢?
   1.在系统B上新建一个DB,然后同步所有功能所需要的数据??
   2.系统B远程访问系统A的数据库DB_A??  (这样的好处是开发效率可以大大提高)
   3.开发系统A的webService,系统B调用这些webService来进行交互??  
 
或者用其他的方式?  大虾们给点意见

解决方案 »

  1.   

    你对各方面性能的要求如何?愿意支付多大的成本?一般来说,服务器用VPN连起来吧,然后做个主从库,同步规则就看你具体需求了。
      

  2.   

    >>>>>>>>>>>  1.在系统B上新建一个DB,然后同步所有功能所需要的数据?? 
    是的 应该
    >>>>>>>>>> 2.系统B远程访问系统A的数据库DB_A??  (这样的好处是开发效率可以大大提高) 
       这样不好, 你无法保证 的数据 能够同步获取/更新 , 在网络慢时 你de程序会没有反应  3.开发系统A的webService,系统B调用这些webService来进行交互??
         webservice 可以考虑  
      

  3.   


    对性能要求不是很高
    服务器用VPN连起来,为什么要这样做呢?直接远程连接数据库不行吗?
      

  4.   


    2个机房之间的带宽很窄!
    如果是同步所有功能所需要的数据的话,开发效率太慢了,由于经验方面的问题,可能会导致无穷无尽的BUG....(小弟是新手)
    用WEBSERVICE可行吗?
    PS:老板不懂技术,只要结果,不在乎性能和安全性!
      

  5.   

    给两种方案,推荐第二种:一、数据库B可以间隔一段时间从数据库A同步一次,对于实时性要求不高但是对速度要求比较高的查询,则查询系统B的数据库。
    对于实施性要求高的数据则调用WebService。当然,这样做的话既要去实现数据同步还要实现一套WebService。有点麻烦。二、其实我觉得你完全可以考虑只用WebServic,这样会少很多的麻烦,我始终觉得做这种远程的数据同步容易出错;另外,WebService的速度没有想象的那么慢,HK和USA的网络环境肯定要比国内的好,我们平时调用公网上的WebService也不会太慢。速度完全可以接受。
      

  6.   

    數據交互:如果數據的及時性要求不是很高,推薦SSIS,可以定時(如每天凌晨1:00)跑。