0

我编写了一个 Windows 应用程序,将数据本地存储在 SQL Server Express 数据库中。它被来自远程位置的多人使用,他们偶尔需要同步他们的数据。它需要一个相当简单的同步过程,只需要几个表,我目前正在通过使用链接服务器将每个 SQL Express 安装链接到“中央”SQL Server 来完成此操作。然后我对远程数据运行查询并根据需要添加/更新/删除。这真的很好用。

但是,我在使用实现这一点所需的 VPN 连接时遇到了困难。在开始同步过程之前,用户要做的第一件事是与服务器建立 VPN 连接(在 Windows 2003 上运行 RRAS)。它在大多数情况下运行良好,但我遇到了很多恼人的问题,例如如果连接不稳定,VPN 会掉线,AT&T 蜂窝连接通常无法建立 VPN 连接(远程用户有时必须使用这种方法) , 一个用户家里有两台机器,由于路由器限制,在给定时间只有一台可以连接 VPN。有些运行 XP,有些运行 Vista……这真的很痛苦,而且事实证明,VPN 对我和用户来说非常令人沮丧。

我是否有任何我忽略的相当简单的选项?我的第一个想法是使用 Web 服务,但这需要通过 Web 服务将我的所有数据传递到服务器进行处理。这不切实际。另一个想法是在服务器上安装 SQL Server Express 的第二个实例,让它监听不同的端口,然后直接连接而不是通过 VPN(我什至不确定这是否适用于 SQL Express。会不会?)。我知道这有安全隐患,但有多少呢?这些数据本质上不是机密的,也不是关键任务。有没有更好的选择可以用最少的工作/学习来完成?

提前感谢您提出的任何建议。

达尔维斯

4

3 回答 3

1

服务经纪人怎么样?您将更新粘贴到 XML 有效负载中,使用SEND上传更改,消息在您的后端激活一个过程,它将 XML 有效负载分解回表更新中。您可以在 DMZ 上放置一个 Express 实例作为网关并依赖内置的Message Forwarding。由于 Service Broker 可以使用证书进行身份验证,因此不需要 VPN。您还解决了可用性问题,只要有连接,更新就会排队并交付。

于 2009-08-13T18:17:31.690 回答
0

You could use email with your data as an attachment. You can process emails at your server with an automated agent. Distributing updates the other way might be more difficult - your user would have to save your attachement and then run a local importer. Plus the timing issues of when they decide to do this could be tricky to work out. But it might work better depending on your user base.

于 2009-08-13T16:56:54.963 回答
0

http://www.stunnel.org/

提供将网络连接封装在 SSL 加密中的包装器。

于 2009-08-13T14:11:12.563 回答