我们有多个2006年的BizTalk应用服务器,我觉得这几乎是不可能的,以保持我们的项目的版本同步上他们。这是部署MSI软件包,导入它们,在GAC匹配的文件,部署一些注册表更改的一个繁琐的过程,如果一个步骤被遗漏或某人部署一个DLL的更新直接拷贝到一台服务器,而不是其他,没有简单的方法来告诉。

如何保证其他人的软件副本之间的两个服务器的版本相同?


一些背景:

我们的环境具有两个(非群集)的BizTalk前端服务器和一个单独的数据库后端。直到最近,虽然我们有两个前端配置,主机实例已停止第二台服务器上,因为一些故障排除。他们已经被禁用了数个月,而我们在此期间部署了一些更新的代码。

今天上午,我做了GAC文件夹差异,以及持有这些DLL的本地磁盘复制我们的部署项目(C:\ OurProject \两台服务器上)的文件夹,一切都匹配 - 同样的文件尺寸,相同的时间戳。但是,一旦我打开了第二组服务的,很明显,Server2上使用的项目DLL的旧版本 - 处理接下来的三个文件,2例正常结果,一个显然是过时

请帮我避免动脉瘤。

有帮助吗?

解决方案

你可能要考虑的一件事是 BizTalk部署框架

目前,我们正在建立一个新的环境与2009年的BizTalk和我开始了一组的MSBuild脚本的文件句柄出口从Subversion源,构建和部署使用BTSTask组件。

当然BTSTask缺乏很多的功能(启动/停止应用程序),但至少为2006年有 BTSControl <的BizTalk / A>

其他提示

我们使用自动构建脚本其最终端是MSI与绑定文件用于开发/阶段/生产。所有已发布的约束力文件存储在一个共享和使用手工加载的BizTalk Server。首先,应用程序被终止,微星的两台服务器上执行,然后MSI进口。在导入过程中,我们指定绑定,瞧环境。我们已经没有任何问题与同步的损失。

所以,我建议考虑您的所有最新的MSI并重新执行,你必须区别在服务器上他们。否则,只是尽量把过程以手工创建一个可重复的加载过程。

scroll top