多vs单实例业务应用程序

时间:2011-09-28 16:56:22

标签: .net visual-studio-2008 process clickonce instance

(这个主题非常笼统,某个地方必须有一个现有的线程,但是如果我能找到它就会变得很难。我确实找到了几个关于强制实施单实例应用的最佳方式的争论。)

我有一个以.Net 3.5编码的内部业务应用程序。我使用ClickOnce发布,后端是SQL Server 2008.应用程序一直设置为单个实例只是为了安全起见,但我的用户开始表示有兴趣拥有多个实例,主要是因为他们可以查看和同时比较不同的数据集。

我正在考虑多实例应用程序可能存在的危险,但到目前为止还没有任何重要的想法。显然,实例将共享一些资源。任何人都可以向我提供有多实例应用程序的具体问题吗?

我想到的一件事是ClickOnce在应用启动时检查更新。假设用户打开实例,然后发布新版本,然后用户打开第二个实例。 ClickOnce是否优雅地处理更新?我想它需要关闭所有正在运行的实例,然后更新版本。

1 个答案:

答案 0 :(得分:1)

如果您的所有应用程序都使用ADO.NET与SQL Server进行通信,则不太可能出现太多问题,因为一台计算机上的多个进程看起来与单独计算机上的多个进程看起来相同,只要SQL Server是关心。 但是,如果您的应用使用本地文件或其他共享资源,则必须在应用的正在运行的实例之间进行合理的协调。