在评估不同的系统集成策略时,我遇到了一些鼓励的话,但也有一些关于BizTalk Server的挫败感.
使用BizTalk Server(从开发人员的角度和业务用户)有什么优缺点,公司是否也应该考虑开源替代品?有哪些可行的替代方案?
编辑:Jitterbit似乎是一个有趣的选择.开源,似乎很好地设计.这里的任何人都有使用它的经验吗?
在处理一个相当大的BizTalk 2010项目时,我遇到了这种非常奇怪的行为,并想在这里发布一个解决方案,以防其他人可能会遇到这种情况.
尝试在Visual Studio 2010中的业务流程设计器中打开业务流程时,我注意到在仅文本视图中打开了业务流程,我无法查看业务流程设计器.这仅适用于一个业务流程,项目中的所有其他业务流程都已正确打开.该项目也正确编译,没有任何错误.我右键单击受影响的业务流程,然后选择打开方式 - > BizTalk业务流程设计器.我还点击了Set as Default.然后,我可以按预期在设计模式中查看业务流程.但是,在关闭并重新打开解决方案后,我注意到业务流程再次以纯文本视图打开.
然后我在文本编辑器中打开了.btproj文件并注意到以下内容(这是我的.btproj文件的片段):
<ItemGroup>
<XLang Include="OrderCancel.odx">
<TypeName>OrderCancel</TypeName>
<Namespace>MyNamespace.Orchestrations</Namespace>
<SubType>Designer</SubType>
</XLang>
</ItemGroup>
<ItemGroup>
<XLang Include="OrderModify.odx">
<TypeName>OrderModify</TypeName>
<Namespace>Mynamespace.Orchestrations</Namespace>
</XLang>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
注意标签:
<SubType>Designer</SubType>
Run Code Online (Sandbox Code Playgroud)
我只是删除了SubType标记,保存了.btproj文件并在Visual Studio中重新打开了解决方案,并且业务流程再次正常打开.
我正在研究建筑模式,企业服务总线(ESB).阅读本文企业集成,几乎没有经验,我想知道BizTalk是否是ESB或者它只是一个EAI(集线器/轮辐或总线)?
我找到了这个NServiceBus和Biztalk,将BizTalk描述为一个中心消息代理.
考虑其他ESB框架(NServiceBus和Rhino Service Bus).这些框架没有处理消息的中心点.
Biztalk是EAI而不是ESB吗?
非常感谢
是否可以使用makecert或我可用于生成自己的测试证书的任何其他工具来设置密钥用法属性?
我感兴趣的原因是用于BizTalk Server AS2传输的证书需要使用数字签名的密钥用于签名和数据加密或密钥加密用于加密/解密,我想要使用此功能.
我看到如何使用makecert 设置增强的密钥使用属性,但不是密钥用法.
我有一个可以一次由多个进程使用的程序集.如果我使用的是静态类,那么多个进程是否都使用该类的相同"实例"?
由于这些进程是分开的,它们是否会在不同的应用程序域下运行,因此静态"实例"是否分开?
这里的细节中的布丁是一个自定义BizTalk适配器正在使用该程序集,我将其设置为以并行批处理方式处理消息.这就是我所说的"多个过程".
在我的最后一个工作地点,我使用了很多BTS.但是,我注意到管理人员经常希望将它用于错误的事情,开发人员对采用它犹豫不决.
所以,我只是想知道,如何使用BTS?请发表经验,而不是理论.谢谢!
我有一个问题 - BizTalk或WF?让我澄清一下,我意识到前三个工件背后的类似技术,并意识到我可以构建它们,但我没有发现它们是内置于WF,所以我试图理解为什么我会使用一个技术优于其他.
转换
BizTalk本身支持的功能非常好,增强的设计人员可以启动,生成模式和地图的能力.此外,我喜欢所有内容都已转换的事实,因为我不必担心我的工作流程中的集成点,因为它始终采用一致的格式,这可以降低我的风险,因为我的集成变异 - 我只需要重构模式和映射.
相比之下,对于WF,我没有内置的豪华,所以我错过了什么或BizTalk在这里有+1?
绑定
绑定是BizTalk中另一个完全封装的功能.我可以将我的工作流设置为具有我想要的任何绑定,因为上述工件意味着在测试期间我可以绑定到文件系统并且在生产期间我可以绑定到服务.
相比之下,对于WF,我没有内置的豪华,所以我错过了什么或BizTalk在这里有+2?
端口/适配器
这很可能是BizTalk中存在的最大工件 - 恕我直言.将物理连接抽象为众多具体实现所需的工作量,特别是在一个非常庞大的组织中,其中一些具体的内容通过基本的文件系统而不是SOAP/REST,以及像IBM Mainframe和MSMQ这样的东西.BizTalk的物理端口适配器在向工作流发送消息之前通过转换自动运行原始数据,非常简单,优雅.
相比之下,对于WF,我没有内置的豪华,所以我错过了什么或BizTalk在这里有+3?
BizTalk未来
最后,我想提一下,根据我的研究,构建BizTalk的同一团队正在构建WF - 这太棒了!此外,微软的长期愿景是这个新的流行词"集成服务器",实际上是一大堆松散耦合的框架,提供了BizTalk今天的功能.由于Azure的努力,这项工作对我来说很有意义 - 我肯定会为此做出贡献.但是,我今天需要实现一个解决方案,这个解决方案将在15年后开始工作,但是如果我利用WF而不是BizTalk,我还需要了解我必须使用哪些部分来组合它.请告诉我你的经历.
biztalk workflow-foundation workflow-foundation-4 biztalk-2010
我很好奇,如果它甚至考虑BizTalk实现发布/子消息传递架构(基本上你可以用NServiceBus或MassTransit做我真正需要的).我的经理倾向于坚持直接从微软提供的框架,因此作为我尽职调查的一部分,我需要为双方提供一套良好的利弊.任何指导将不胜感激!
我想创建一个MSBuild项目,它反映了解决方案中的项目依赖项,并将VS项目包装在可重用目标中.
我喜欢解决的问题是在BizTalk应用程序中svn导出,构建和部署特定程序集(及其依赖项).
我的问题是:如何为svn导出,构建和部署可重用的目标制定目标,并在为不同的依赖项构建它们时重用已包装的项目?
我知道只需构建解决方案并仅部署所需的程序集会更简单,但我希望尽可能多地重用目标.
部分
我想部署的项目
<Project DefaultTargets="Deploy" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ExportRoot Condition="'$(Export)'==''">Export</ExportRoot>
</PropertyGroup>
<Target Name="Clean_Export">
<RemoveDir Directories="$(ExportRoot)\My.Project.Dir" />
</Target>
<Target Name="Export_MyProject">
<Exec Command="svn export svn://xxx/trunk/Biztalk2009/MyProject.btproj --force" WorkingDirectory="$(ExportRoot)" />
</Target>
<Target Name="Build_MyProject" DependsOnTargets="Export_MyProject">
<MSBuild Projects="$(ExportRoot)\My.Project.Dir\MyProject.btproj" Targets="Build" Properties="Configuration=Release"></MSBuild>
</Target>
<Target Name="Deploy_MyProject" DependsOnTargets="Build_MyProject">
<Exec Command="BTSTask AddResource -ApplicationName:CORE -Source:MyProject.dll" />
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
它所依赖的项目看起来几乎就像这样(其他.btproj和.csproj).
知道为什么我会得到这个拒绝访问权限的例外吗?
我正在从Visual Studio部署一个非常基本的BizTalk 2009项目.
错误DEPLOY:
访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))错误DEPLOY:位于Microsoft.BizTalk.Deployment.BizTalkAssembly的Microsoft.BizTalk.Gac.Gac.InstallAssembly(String assemblyPathname,Boolean force)
上的Microsoft.BizTalk.Gac.Fusion.IAssemblyCache.InstallAssembly (AssemblyCacheInstallFlag flags,String manifestFilePath,FusionInstallReference referenceData).
Microsoft.BizTalk.Deployment.BizTalkAssembly.Deploy的Microsoft.BizTalk.Deployment.BizTalkAssembly.PrivateDeploy(String server,String database,String assemblyPathname,String applicationName)
中的.GacInstall(String assemblyLocation)(布尔值重新部署,字符串服务器,字符串数据库,字符串assemblyPathname,String group,String applicationName,ApplicationLog log)错误DEPLOY:未指定的异常:"
访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))"访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))
错误DEPLOY:访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))
:PerformingEndChangeRequestsWithRollBack
错误DEPLOY:无法添加资源.某些资源的更改请求失败.BizTalkAssemblyResourceManager无法完成结束类型更改请求.访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))
biztalk ×10
biztalk-2010 ×2
.net ×1
biztalk-2009 ×1
c# ×1
certificate ×1
eai ×1
esb ×1
makecert ×1
masstransit ×1
msbuild ×1
nservicebus ×1
open-source ×1
static ×1