日期:2014-05-18  浏览次数:20747 次

远程客户端采用什么方法操作数据比较好?
需求情况:
1、服务器在北京,
2、客户分别在北京不同位置及其它城市的不同位置;
3、客户数量不多,并发不大;
4、目前使用的网络链接为ISDN拨号连接,以后可能改成ADSL方式;

目前情况是:
1、客户直接连接访问数据库服务器,并且直接执行数据库的写入、查询操作;
2、网络故障常出现,导致客户端经常连不上服务器。

现在感觉上述的处理方式不是很好。

想改成:
1、客户不在直接连接操作数据库,以xml格式向服务器提供请求;
2、增加服务器端程序,接收客户端xml格式请求并操作数据库,将客户返回给客户端。
3、客户端采用ADSL连网,并组建VPN网络。


不知新的方式是否比旧原有方式好一点。




------解决方案--------------------
客户不在直接连接操作数据库
-----------------------------
现在的应用程序基本上都不是直接连数据库,而是通过连接池,比如ADO

以xml格式向服务器提供请求难道就不会出现网络故障吗?

------解决方案--------------------
这个要结合传文件 “断点续传”的思想。在局域网中,几百兆的大文件不需要断点续传,而Internet的网络质量要差很多。所以不建议操作立刻反映到数据库中。

如果用.net,remoting技术是一种比较好的选择。

总之,remoting也好,webservice也好,其他XXX也好,简言之,就是客户端有个小型数据库,更新好了再在总数据库合并。也就是说,让客户可以离线操作数据库,而连线再更新。

微软网站上有两个c#写的这样的例子,可以下来看看。
------解决方案--------------------
webservice好了
又简单又方便,而且对数据库来说,也安全一点,至少不对外直接访问
------解决方案--------------------
学习一下
------解决方案--------------------
建议分几次合并数据库,1500次操作和几次操作,,有2 3个数量级的差别。除非你对实时要求要求非常高、网络质量非常好的情况下才有必要直接操作总数据库。