Skip to main content

5 posts tagged with "Code vs Configuration"

View All Tags

Orchestration versus Choreography

· 3 min read
Boney
Founder of Unmeshed

Microservices architecture in a highly distributed system requires effective communication, that’s exactly where the orchestration and choreography come into play. Both are two fundamental approaches to managing workflows and data interactions between services. Each has its unique feature and use cases where it excels. Let’s break down the key differences, along with examples to illustrate where one might work better than the other.

Orchestration Platform for APIs, Overcoming the Limitations of Traditional Platforms

· 6 min read
Nilin Jacob
Software Engineer

Orchestration Platform for APIs, Overcoming the Limitations of Traditional Platforms

Imagine this: you’re driving and suddenly get lost. Your eager passengers jump in to help. One of them, feeling nostalgic, insists on using a paper map to find the way. Meanwhile, another passenger does what most of us do today—checks Google Maps to quickly find the fastest route to your destination. You might be thinking, come on! Who is still using paper maps today?! Yes, this might sound like a far-fetched example. Both paper maps and Google Maps aim to serve the same purpose: getting you to your destination. But wouldn’t you agree that sometimes we stick to using tools that no longer meet our needs as effectively as they once did?

In this post, we’ll explore why traditional orchestration solutions struggle with API use cases and how Unmeshed—a new-generation orchestration platform—steps in to bridge these gaps effectively. APIs are at the heart of digital innovation, it enables seamless data exchange, it ensures real-time user interactions and handles service integrations across various systems. However, handling API workflows effectively requires an orchestration platform that meets very specific demands.

Why Traditional Orchestration Platforms Struggle with APIs

Most traditional orchestration platforms were designed for a very different set of goals: it manages complex and long-running workflows that span multiple systems and involves robust state management and error handling. While these capabilities are essential for backend processes, they perform less than ideal when applied to the high-speed demands of real-time API orchestration.

  1. Traditional Platforms Prioritize Reliability Over Speed

    For example, a platform like Netflix Conductor are open-source orchestration solutions that handle complex, multi-step workflows. Their core purpose is to reliably store and manage the states of each workflow step, ensuring that processes complete successfully—even in the face of failures.

    This approach makes Conductor an excellent option for backend orchestration, where stability is the primary requirement. However, when it comes to APIs, this state-heavy, reliability-focused model leads to increased latency. Essentially, APIs demand near-zero response times, a traditional platform and need time to store and track each step, that adds unnecessary delay thus making them unsuitable for low-latency API calls.

  2. Real-Time Needs Aren’t a Design Priority

    Bear in mind that API use cases typically require response times measured in milliseconds, as well as the ability to stream partial content and handle thousands of requests per second.

    To support these needs, an orchestration platform must prioritize speed and lightweight processing over extensive state tracking. Unfortunately, this demand is often in direct conflict with the design principles of traditional platforms, which prioritize reliability over real-time performance.

  3. Complex State Management is Unnecessary for APIs

    In API orchestration, the goal is often to quickly query backend systems, transform data, and return a response. In fact, a complex state management between steps is generally unnecessary and counterproductive for APIscenarios, as it only adds to the processing overhead.

    Traditional platforms’ is built to treat every step as a stateful operation that needs to be recorded, managed, and monitored, but this approach isn’t well-suited for the quick, stateless nature of most API workflows.

Key Requirements for an Effective API Orchestration Platform

In response to limitations by traditional orchestration platforms, a dynamic orchestration platform must meet a set of unique requirements that prioritize speed, security, and efficiency, while continuing to be reliable in all scenarios.

  • Fast Response Times:
    APIs need to deliver data at near-instant speeds, often within milliseconds, to maintain a seamless user experience.

  • Ability to Stream Partial Content:
    In some cases, APIs may need to begin delivering content before all data is retrieved. The ability to stream partial results as they're available can dramatically improve the perceived speed of API responses and enhance user experience.

  • Near-Zero Latency:
    APIs power real-time interactions, meaning they must operate with as little latency as possible.

  • Authentication, Rate Limiting, and Security:
    APIs often handle sensitive data, making robust security measures such as API key authentication and rate limiting critical.

How Unmeshed Bridges the Gap

In Unmeshed, we redefined orchestration to support both API and backend scenarios, by creating a unique solution that’s as effective for high-speed API workflows as it is for complex, long-running backend processes. Unmeshed combines the stability of traditional orchestration with the speed and efficiency needed for API management.

  1. Built for Multiple Scenarios

    Unmeshed’s architecture was designed to handle the high-speed, low-latency requirements of API orchestration while retaining the capabilities necessary for backend workflows. It is flexible enough to handle both API-driven, short-lived processes and long-running orchestration scenarios, making it a versatile choice for a variety of use cases.

  2. Optimized for Latency and Speed

    For APIs, where latency and speed are critical, Unmeshed operates with near-zero latency. Unlike traditional platforms, Unmeshed doesn’t over-rely on complex state management, reducing unnecessary delays. This approach means that API calls are orchestrated efficiently, allowing for real-time interactions that are impossible with more state-heavy solutions.

  3. Supports Parallel and Fan-Out Queries

    Unmeshed allows for fan-out queries, enabling the platform to quickly access multiple backend systems, gather data, and transform it for API responses. This makes it easy to deliver comprehensive, real-time information to users. For instance, a fan-out query might retrieve user account data from one system, recent transaction data from another, and current offer information from yet another—all in one fast API call. Unmeshed manages this complexity without the latency typical of traditional orchestration platforms.

  4. Seamless Data Transformation and Response Handling

    API workflows often require data transformation before results are sent back to the client. Unmeshed handles these transformations on the fly, allowing API calls to return precise, user-ready data without additional processing delays.This capability is essential for delivering personalized or contextualized data directly to end-users in real time.

Unmeshed: Meeting Today’s Orchestration Demands

In today’s dynamic environment, businesses need an orchestration platform that can handle a range of use cases, from real-time API management to robust, long-running workflows. Unmeshed was built to fill this gap, offering a single platform capable of meeting both high-speed, low-latency requirements for APIs and the durability and reliability necessary for backend processes. By moving beyond the limitations of traditional orchestration platforms, Unmeshed empowers businesses to innovate faster, simplify integrations, and handle complex workflows—all while maintaining the performance needed for modern digital experiences.

Whether you’re managing high-frequency API calls or orchestrating critical backend processes, Unmeshed offers the flexibility and speed to keep your business agile and competitive. Curious to see Unmeshed in action? Chat with us and explore how our platform can empower your team to innovate and automate like never before.

5 ways Orchestration Drives Efficiency and Innovation

· 5 min read
Anaz Noushad
Software Engineer

5 ways Orchestration Drives Efficiency and Innovation

Introduction

Everyday, between coffee breaks (maybe tea?), we click on tech news in search of some technology breakthroughs that are somewhat relevant to us and hopefully, transform the quality of our work and supercharge productivity. My question to you is, have you found anything that makes a direct impact on your productivity? The truth is, in today’s fast-paced digital landscape, businesses need to innovate quickly and operate efficiently to stay competitive, and developers are responsible for carrying out the implementation.

My take is that an orchestration platforms have become such an invaluable tool in achieving these goals, transforming how companies manage complex workflows and streamline integrations, and this is a clear sign that you, the developer, will benefit because you will see massive time saved from all sort of mundane tasks and focus on what really matters to you and your team. From automating intricate processes to visualizing workflows and simplifying system integrations, orchestration is at the heart of driving efficiency and enabling rapid innovation.

Here, we’ll explore the top 5 ways orchestration platforms empower businesses to boost productivity, accelerate development, and bring impactful ideas to market faster.

Automating Complex Flows: Boosting Efficiency in Technical and Business Processes

Orchestration platforms simplify the automation of intricate workflows, from handling backend data processes to customer-facing business flows. These tools can handle both long-running (subjected to technical challenges) and short-running tasks (surge in volume), ensuring that every workflow is fully managed and optimized.

For example, an orchestration platform enables stock-trading logs that span several hours and involve various data-sensitive components or coordinate real-time order processing for a trading firm. Automating these flows reduces manual errors, accelerates task completion, and enables a seamless, end-to-end process.

Accelerate Go-to-Market with Fast Prototyping and Experimentation

Another key feature of orchestration is that it allows teams to quickly assemble and deploy proof-of-concept workflows, enabling rapid testing and iteration in live environments. This fast-tracks the process of moving from an idea to a production-ready solution.

Your deployment team will have peace of mind deploying with the integration of the orchestration platform, allowing processing errors to be detected and handled immediately, through the end-to-end process visualization, essentially eliminating ‘black-box’ scenarios like it’s a thing of the past.

By making it easy to assemble creative workflows and persistent state management, businesses can explore innovative concepts and observe their impact in real time, reducing the time it takes to refine and launch new features. This “learn-by-doing” approach is essential for agile development cycles, especially for teams looking to try out cutting-edge ideas or disruptive changes.

Visualizing Workflows: Enhancing Clarity and Transparency

With orchestration, workflows are no longer “black box” business processes. Each loosely coupled component is visually represented by process flows, displaying each step’s logical sequence and dependencies. These visualizations help teams quickly understand and communicate the workflow structure, akin to the original design diagrams.

This approach aligns team members, provides documentation for stakeholders, and improves troubleshooting by showing where each action takes place within the flow.

Simplified System Integrations: Bridging Internal and External Systems Seamlessly

In addition, an orchestration platform provides visibility into integrations across internal and external systems, making it easy to see where different applications and data points connect.

For example, consider a hospital that uses an orchestration platform to manage patient data across multiple systems. When a doctor orders lab work, the orchestration platform automatically coordinates the order with an external lab system, retrieves the results, and updates the EHR in real-time. The platform also integrates with the hospital's billing softwasre to automatically generate invoices for services rendered. With the orchestration platform’s visibility, the maintenance team can easily see where each data transfer occurs, identify any integration issues (e.g., delays in data retrieval from the lab), and troubleshoot accordingly.

This transparency not only ensures seamless data flow across different systems but also helps the hospital maintain accurate billing and compliance. Additionally, by understanding these touchpoints, the deployment teams can optimize workflows, improve system reliability, and reduce manual intervention, which is crucial in a healthcare environment where accuracy and efficiency are paramount.

Accelerated Development with Reduced Code Complexity

While there are ongoing debates on the level of participation of humans (also known as human tasks) in workflow management, there is no denial that incorporating human tasks within complex workflows managed by an orchestration platform brings a powerful layer of flexibility and decision-making to automated processes.

Orchestration platforms let engineers build powerful workflows with minimal code, allowing teams to deliver complex functionality quickly. This reduction in code complexity not only shortens development time but also makes maintenance and scaling more manageable.

Teams can spend less time on repetitive coding tasks and focus more on building value-added features, innovation, and reliability. Additionally, orchestration platforms enable modular design, allowing parts of a workflow to be swapped out easily, facilitating faster adoption of new technologies like AI, and machine learning.

My point is…

Orchestration isn’t just a tool—it’s a catalyst for change and growth. By automating workflows, enhancing visibility, and enabling agile development, orchestration platforms allow businesses to focus more on innovation and less on technical overhead.

The result? Faster go-to-market times, improved operational efficiency, and a technology stack that’s primed for future advancements. Embracing orchestration equips businesses with the agility to evolve in a dynamic environment, empowering teams to build, adapt, and grow with confidence.

If you are interested to know more about how an orchestration platform supercharges your productivity and results in massive saving on business cost, drop us an email at [email protected] for a demo.

Control In the Face of Chaos

· 4 min read
Boney
Founder of Unmeshed

Control In the Face of Chaos

Orchestration Platforms: Gaining control in the face of chaos

As an engineering lead for an e-commerce platform, imagine it’s Black Friday—your system is under an unprecedented load, orders are flying in from across the globe, and your services are being pushed to their limits. You’ve got a complex web of systems to manage.

The Complexity of E-commerce Workflows

It’s a highly interconnected and distributed environment, and with this level of complexity, even a minor failure can create cascading issues that jeopardize the entire operation. This is where an orchestration platform—or, to use a fitting analogy, a ringmaster—comes into play.

How an Orchestration Platform Handles the Complexity

How an Orchestration Platform Handles the Complexity

An orchestration platform ensures that every component in this highly distributed environment interacts smoothly. Here’s how:

Service Coordination and Workflow Automation

In complex architectures, services often rely on each other to complete a workflow. For instance, before shipping an order, the system needs to verify inventory, process the payment, and generate a shipping label—all while ensuring no single point of failure disrupts the flow. The orchestration platform automatically coordinates the workflows by handling service-to-service communication, retrying failed tasks, and ensuring each service operates in the correct sequence.

Error Handling and Fault tolerance

Even in the best-engineered systems, things break—an API call might time out, a database query might fail, or a service could crash under load. Without a centralized platform to manage these failures, developers would have to build custom error-handling mechanisms for every service interaction, increasing the complexity of the codebase. This needs not be the case. If the payment gateway is temporarily unavailable, the platform can queue orders for later processing, ensuring the order system continues to function without a complete halt.

Scaling and Load Management

Through horizontal scaling, orchestration platform spins up additional instances of services to handle increased demand, while load balancers distribute traffic evenly across these instances. This ensures that no single service becomes a bottleneck. During peak traffic, the orchestration platform can automatically scale up your payment processing service or spin up additional AI model instances to keep up with the demand for personalized recommendations.

Real-Time Monitoring and Observability

Visibility into system performance is critical for preventing downtime. Orchestration platforms provide real-time monitoring, allowing engineering teams to track the status of workflows, measure performance, and detect bottlenecks or failures before they impact the customer experience. If one service in your workflow starts lagging—say, the AI recommendation model—the platform’s monitoring tools will alert you to the issue, allowing you to address it before it affects the customer experience.

Handling Complex Business Logic

Modern e-commerce systems often require custom business rules for processing orders, handling refunds, managing stock levels, or even implementing fraud detection. These rules may change frequently and can vary based on the region, customer type, or order size. Orchestration platforms make it easy to implement and modify these rules without having to refactor the underlying codebase for each service. You can define custom workflows to handle these scenarios in the orchestration layer.

Final Thoughts: Unmeshed as the Ringmaster of Your System

Without a ringmaster, managing an e-commerce platform’s complex infrastructure on a high-traffic day like Black Friday would be overwhelming. By integrating orchestration platform into your architecture, it provides the orchestration layer necessary to manage workflows, handle errors, and scale your systems gracefully, ensuring everything runs seamlessly—even when the unexpected happens. For engineering teams dealing with complex distributed systems, investing in an orchestration platform is a game-changer. It’s the difference between a chaotic circus and a perfectly synchronized show, where every component plays its part flawlessly.

Orchestration with Code vs Config

· 2 min read
Boney
Founder of Unmeshed

Orchestrating APIs — simple to complex journeys

One interesting perspective I often hear about workflows is how approaching them with configuration is better than with code, or the opposite, depending on who you are talking to.

Many established products in the space of workflow orchestration often claim it’s easier to write workflows as code. The biggest argument in favor of this is that complexity is better addressed in code compared to a configuration or DSL. This comes with the assumption that workflows will be where the logic lives.

My personal take is that this anticipated complexity doesn’t really exist. The moment your code leaves the boundary of a single method, you are already orchestrating outside of your code. And you end up building a deeply coupled, hard-to-maintain system when the orchestration leaves your library boundary to another app or service.

Code as Building Blocks

A building-blocks code model, which is interconnected only via orchestration, gives you cleaner, more testable, and maintainable code, and lets you retain a simpler, maintainable architecture. Remember you are still writing code, and just wiring things up using orchestration.

This was (or is) evident in how, some of us, use event-driven choreography. The entire idea is to decouple and run services that are not aware of each other. The events being routed from one place to another don’t have complexity that can be resolved with code.

However, the challenge with choreography is the lack of visibility into how things map. This is where the power of orchestration comes through.

Code vs Configuration

The topic of this debate is mute, as its really your code that is being orchestrated. It would make less sense to orchestrate within code. Instead the code you write should be orchestrated to create the flows that meets your goals, while keeping things cleanly decoupled, unmeshed.

What are your thoughts on this? Is it time to unmesh your workflow complexity from code?