I'm not very familiar with ESB or Biztalk, and I'm trying to figure out what matters most from an EAI point of view, if you already have Biztalk. As I understand it, Biztalk is a message broker (hub and speaker), and the ESB template is an anti-broker, where the conceptual βbusβ consists of separate distributed components that communicate with each other in some way. Message brokers essentially represent a single point of failure, not an ESB, where one component does not work, does not destroy the "bus" as a whole. I also understand that Biztalk is monolithic in the sense that messaging, orchestration is closely related and scaling is problematic.
If the script is at hand:
- Biztalk is already mainly used to run various orchestras based on different files received from third parties.
- A bunch of embedded user applications that are currently closely associated with the system, such as CRM and payroll, need to be reorganized to abstract these dependencies.
Does it make sense to use Biztalk directly or the Biztalk ESB toolkit to achieve ESB functionality, or does it make sense to use the correct ESB implementation, such as NServiceBus or Service Bus for Windows, which is based on Azure Service Bus. What are the advantages and disadvantages of using Biztalk directly to achieve EAI versus using an appropriate ESB. Will every application depend heavily on Biztalk and is this desirable?
I will leave this as an open discussion, because there is no right or wrong answer.
@StuartLC: Thanks for your reply. I read some of the links you posted, but still haven't gotten a clear idea of ββwhether Biztalk would make sense as an ESB solution and use something like NServiceBus. Both seem to somehow implement the "ESB" pattern. A question that has a cleaner implementation, better development experience and low rise time. My assessment so far (only from pure research) is that yes Biztalk can be used, but it hurts and requires a very specialized developer. set of skills. Latency and scaling are problematic and the fact that Biztalk will eventually be assimilated into the service bus (Azure?) And Biztalk SKU will cease to exist. On the other hand, infrastructure, such as the NService bus, has a relatively low slew time and can be easily picked up by dev. Having good .NET programming skills in general and easily interacting with Biztalk. Given the above, would it still be worthwhile to take the Biztalk route, even if you currently have Biztalk in your home or for future proof, go with a proper ESB such as NService Bus?
source share