关于远程SQLSERVER数据同步的建议收集帖

heihei1981 2010-05-07 03:51:11
最近由于工作需要,要做一个项目 项目的目的是将本地的某些发生的数据远程同步到某个地区的服务器上


服务器架设在某个地方,只有一台,所有数据都要汇集到这, 客户端有很多全国各地都有,数据库用的是SQLSERVER



原先的应急做法是使用SQLSERVER自带的连接服务器和发布订阅来做.


现在不想这么做了,毕竟有很多东西自己这边无法控制.

现在最大的问题就是并发操作的问题,因为数据的更新和上传都必须是时实的.打个很简单的比方吧,就有点象全国连锁的商场的发行的VIP卡


某个连锁商场有 A,B,C 3家分店, 都可以使用VIP卡结帐打折

现在A发了张编号为123的VIP卡,当该卡在A消费后数据能直接传到服务器,然后当该卡要在B,C消费时,必须从服务器上下载最新的卡的余额或是其他信息,然后进行操作

这个理解很简单


但是有个问题,如果123的卡在A消费后,因为某些原因没有及时上传到服务器上,这时候123的卡又到了B店,去消费,这样就有问题了


有没有什么个好的机制或建议? 我也是个新手 哎


不知道我描述的清楚不
...全文
146 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
heihei1981 2010-05-08
  • 打赏
  • 举报
回复
其实 也类似于haochin提到的方法
heihei1981 2010-05-08
  • 打赏
  • 举报
回复
LS的2位说的方法都挺不错的,但因为这个项目先前都是按单机版本设定的,而且都已经有客户在使用,如果这样做改动有点大



这2天我想了下,想到了如下做法,说出来大家听听,看看可行性,以及大家的意见:

我准备采用远程WEBSERVICE服务存取需要同步的数据,具体设想如下:

在总部服务器上 挂上WEBSERVICE服务,该服务是用来进行远程数据存取的,比如 A客户现在有人拿着卡号为123的VIP卡前来消费,当刷消费时,首先通过WEBSERVICE远程服务来查询该卡实际余额和其他信息,然后反馈给本地客户端,当刷卡确认后,将刷卡后产生的数据在通过远程服务直接更新到总部服务器的数据库中,当更新完成后,在将该数据存一份到本地客户端的数据库上,之所以还要存本地,就是为了本地的一些查询操作,这样就避免了因为南北网络的问题导致查询速度过慢,如果刷卡确认后更新远程服务器上数据时发生错误,那么所有一切刷卡动作回滚

我想这样应该能有效避免,因为某个客户端瘫痪导致数据混乱的问题,因为是通过接口来做,对整个项目的修改范围就压缩到最小了


不知道其他人有什么看法?
Q315054403 2010-05-08
  • 打赏
  • 举报
回复
既然如此,那数据库就该放在一个地方,大家都访问此即可
haochin 2010-05-07
  • 打赏
  • 举报
回复
每次消费完成前都一定要检查数据是不是正确更新到服务器上了,如果更新失败才,则提示,并撤销消费。
如此之外没有任何办法可以确保万无一失。。。

这个有些类似于一个银行转账的学习案例:
在数据库中,A卡要转10元钱到B卡,首先要确定A卡有10元钱,然后A-10,B+10,最后一定要确保A-10及B+10没有发生任何异常,则成功。否则失败,撤销转账。
heihei1981 2010-05-07
  • 打赏
  • 举报
回复
只是某个客户端断网了,没有及时更新交易数据

所以我才问,有什么好的办法或者建议能做到时时更新数据又能避免象这样的,因为某个客户端发生以外导致其他客户端可能产生数据上的问题的问题
varick_zhong 2010-05-07
  • 打赏
  • 举报
回复
云计算。。。。。。。。
varick_zhong 2010-05-07
  • 打赏
  • 举报
回复
那真是厉害了,已经断网了还有什么办法好想?
heihei1981 2010-05-07
  • 打赏
  • 举报
回复
不能当作交易失败,因为无法判定,因为数据没有及时上传,B店,并无法察觉该123曾经在A店发生过交易纪录,因为这个时候A店可能已经断网了,所以根本无法判定该123卡的状态
liangpei2008 2010-05-07
  • 打赏
  • 举报
回复
但是有个问题,如果123的卡在A消费后,因为某些原因没有及时上传到服务器上,这时候123的卡又到了B店,去消费,这样就有问题了
--------
这个例子可不可以看成交易失败?
heihei1981 2010-05-07
  • 打赏
  • 举报
回复
因为某些模块是已经写好的,只是原来这些模块数据都是存本地的

尽量要求对原来模块改动小,使用类似接口的方式来做.

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧