I've found that Azure's Logic App Service has been shockingly useful to me! The hard prerequisite is that you are within the Azure ecosystem, but using Logic Apps instead of defaulting to writing PowerShell for Function Apps significantly decreased development time, has increased the ease with which I can debug workflows, and when you're on the free tier (with both aforementioned flavors), then Logic Apps still reign supreme as they don't have any cold start issues that users of Function Apps (that don't get hammered all the time) do.
This is exactly what I came to post. It's just a really well thought out service with gobs of connectors and a rich enough model to allow for basic boolean, looping, and scripting.
I used it plus a Google sheet as the first version of a UI for the last company I worked at. Instead of waiting for our front-end folks to finish up the UI, I just pointed a logic app at it, ran some basic logic on it, and brought it into the system whenever it was changed, and imported the data into the main data stores.
We are in the middle of a year-long project to 'rewrite' all of our ESB glue/pipelines from MuleSoft to the Azure platform. We've been using Azure for a while now for almost all hosting. But our ESB had still been in Mule, because as sort of the vital arteries of our entire enterprise, it's hard to seriously consider completely reimplementing them -- especially since we're only about 3 years out from implementing Mule in the first place.
But Mule's skyrocketing costs are forcing our hand. If we don't finish this transfer project within the year, we'll be charged $100,000 for another year of Mule -- an absolutely unfeasible cost for our small/medium sized nonprofit. Our preliminary cost analysis for Azure showed it would be a fairly tiny fraction of that. So off we go.
I bring this up because we have settled on mostly Logic Apps with a few Azure Functions here and there as necessary, to fill in for missing connectors. So we are in a pretty good position to directly compare the two platforms against each other.
So far, my personal judgment is that Mule offers a lot more whizbang, but we weren't using nearly enough of it to justify the bananas cost, and LAs are turning out to be just fine. Mule development work happens within something called Anypoint Studio, which is (I believe) built on Eclipse. Most of the work you do tends to be done in the visual editor, just like in LAs, but you can drop down into the XML as necessary. It provides a fairly good debugger, and has one benefit of being able to be tested locally. I could fire up a flow in debug mode, pop over to an ActiveMQ admin panel on my machine, fire off a message, and watch it hit breakpoints. Mule's also able to provide a more consistent ability to validate JSON against schemas; LAs appear to only really be able to do this at the trigger point. That's relatively minor, though.
Mule's visual editor has no problem with large (sometimes too large) flows, with multiple branching paths, and then sub-branching on top of that. The visual elements themselves have a certain polish to them as well, and don't take up too much space -- they're represented as square instead of wide rectangles.
In comparison, the Logic Apps design view feels rather clunky. It's clearly been designed to encourage small concise flows rather than large ones. We've reimplemented complex flows that felt fairly manageable in Mule, but feel rather unwieldy in LAs despite being essentially 1-to-1 translations.
But LAs do have some honest advantages besides price. A big one is being able to easily drop in a custom Azure Function as a processor. This provides some easy reusability for more complex tasks; we had to write a Function to create JWTs, but now can reuse that in every LA where we need it. Additionally, having everything there in the Azure portal is valuable. There is essentially no gap between working on a flow, and releasing it. Azure provides the run history for your app right in the panel, which essentially acts as a set of visual logs for past runs.
We are kind of struggling with figuring out how to integrate LAs with our source control, but my guess is we'll figure that out with enough experience. All said, I think MuleSoft offers a ton of advantages that very large enterprises would find highly valuable; there's the whole Anypoint Platform that I haven't even discussed here - API managers, access control, etc. But everything that our smallish organization has needed, we've found alternatives in LAs or in the wider Azure ecosystem.
Hey Gene, share a link to this post with your MuleSoft Customer Success Manager. Salesforce's acquisition made some changes to how we work with Not for Profit customers. If you're in my region, I look forward to seeing if we can help. Overhauling Enterprise integration for cost alone sucks, especially since it seems like you're happy with product.
It was a real hassle to get everything somewhat nicely through CI/CD (and it's still not at the level where I'd like it), but getting them in source control and having them deployed through an Azure DevOps' release pipeline has been immensely valuable.
Let me know if you have any more questions about that as I'm happy to help you get going!
We are building a product similar to Mule targeting small & medium enterprises. We are in beta and seeking for early feedback from enterprise customers. If you are interested, please drop an email to murukesh @ codeflow.co, we can work out a great licensing plan for you.
https://azure.microsoft.com/en-us/services/logic-apps/
https://azure.microsoft.com/en-us/blog/understanding-serverl...