在开发人员/构建计算机上部署biztalk

时间:2009-05-19 09:45:27

标签: cruisecontrol.net nant biztalk

对于eaach BizTalk应用程序,我们有一个setup.bat,它创建BizTalk应用程序,创建文件丢弃,构建代码,gac,注册资源,创建端口 - 使用vcscripts-并应用绑定。我们还有一个cleanup.bat,它执行与setup.bat

相反的操作

然后这些脚本通过nant运行,最后由cruisecontrol.net使用。这些脚本允许我们在使用BizTalk和下载的最新源和工具的机器上设置BizTalk应用程序。

其他人如何以可重复和自动的方式“引导”BizTalk应用程序?

我见过BizTalk nant任务,它们比vbscript快吗?

设置。我们的BizTalk构建机器上的bat运行速度慢了大约3倍!磁盘,CPU,内存,分页都很舒服。完整构建/部署需要2个小时才能运行任何测试 - 拥有大约20个BizTalk应用程序和各种C#服务,自定义组件。除了新机器或重建 - 我们的构建机器有4个gig ram,双超线程核心和大约5年的服务器 - 任何想法?你在建造什么样的机器。

4 个答案:

答案 0 :(得分:3)

Michael Stephenson撰写了一些关于自动BizTalk版本的精彩博客,请看link text

我们使用了Mike发布到codeplex的实用程序,它将为BizTalk应用程序创建一个MS构建脚本 - 这对我们来说非常有效。您可以在link text

找到此信息

答案 1 :(得分:1)

我们也使用NAnt进行BizTalk部署。具体来说,我们使用调用BizTalk related NAntContrib tasks(全部以 bts 开头)和使用<exec>任务直接调用命令行btstask.exe的组合。 / p>

在某种程度上,他们都使用相同的底层技术与BizTalk服务器通信,因此很难说NAnt是否比VB更快。

我会说根据我的经验,BizTalk似乎是资源 hog 。由于很难改变这一点,我们唯一能控制的就是我们提供的资源量。因此,如果构建时间过长,并且有时间/金钱需要这样做,请将更大,更糟糕的硬件投入其中。这通常是最便宜的方式,因为开发人员为构建时间进行次边缘改进所花费的时间最终会比硬件更耗费成本。例如,我们已经注意到,移动到8GB的内存可以产生重大影响,从根本上改变整个体验。

答案 2 :(得分:1)

我只是通过BizTalk Administrator创建一个MSI。我将绑定信息与MSI分开,因此开发人员需要通过导入绑定文件来绑定端口,但这很容易。

如果需要将程序集部署到gac中,我使用运行gacutil的批处理文件,然后安装MSI并最终绑定端口。

这种方法易于维护,更重要的是,方便其他人理解和排除故障。

关于BizTalk是一种资源匮乏,首先要看一下SQL Server,并确保将其限制在一些合理的内存量(默认情况下它可以采用任何内容 - 通常是最可用的内存)。仅这一个变化就会产生重大影响。

您还应该考虑在开发期间仅使用最少的软件 - 这意味着在开发人员编译和部署时禁用防病毒或排除目录无法进行扫描。在开发BizTalk解决方案时,避免在RAM少(2Gb或更少)的系统上使用MS Word,Messenger等。

在开发人员的工作站上,按照此处的说明启用BizTalk消息框存档和清除作业:

http://msdn.microsoft.com/en-us/library/aa560754.aspx

保持数据库较小可节省宝贵的磁盘空间,从而有助于提高整体性能。

答案 3 :(得分:1)

那里有很多解决方案 - Rob Bowman提到Michael Stephenson的msbuild generator 同样在codeplex上你可以找到Scott Colestock,Thomas Abraham和Tim Rayburn的another框架

我和奥斯陆一起玩了一个小addition,但这并不像这两个人那么成熟,但它确实使用了SDC tasks,如果你想创造它,这是一个很好的起点你自己的基于msbuild的解决方案。