Generic Message Buffering

Generic Message Buffering | Camunda 7

Imagine multiple messages waiting in a message catch event.  

When a single throw event is triggered, the data is processed without any issues. However, if multiple message events are thrown simultaneously, only the first one is successfully processed, while the others fail.  

This is because the message catch event is busy handling the first message event. 

We recently spotted this issue with Camunda 7’s message catch event. 

Unlocking The Solution To This Challenge 

Our team of experts fabricated a groundbreaking “Generic Message Buffering” logic, with which we’ve revolutionised the way messages are processed asynchronously, effectively resolving any scenario you may encounter.   

Fig. 1.1 unveils the powerful list of message catch events eagerly awaiting the trigger. 

 

Fig1.1

 In Figure 2.1, we present the logic for Generic Message Buffering. By sending a POST request, we can activate the BPM process described below. Additionally, we have the ability to specify the retry count and retry delay as request parameters. Once the request is triggered, we conduct a basic validation to ensure all necessary information, such as message name, payload, process instance id, and business key, is present.  

If all the required data is available, we proceed to send the message to its destination within the “Message Send Task” depicted in Figure 2.1.  

If the message is successfully picked up and processed by the message catch event, we encounter no issues.  

Fig2.1

In a situation where the message catch event is already occupied processing another message, throwing our own message will result in failure. This is a common occurrence in real-time scenarios, and it is up to the developers to determine how the flow should be handled in such cases. 

In our specific case, the failed message will be caught by the boundary event. The error message will then be examined in detail within the “Read Error Message” process (Fig 2.1). 

In the event of an error, we can:  

  • Distinguish between errors that require retry logic.  
  • Determine if it is a business error or a technical error.  
  • Necessitate the involvement of technical experts, if it happens to be a business error 

When encountering a retriable error, we make an attempt to retry the operation. The number of retries and the delay between retries is determined by the input request. 

Potential Scenarios In Re-try

In the context of re-try logic, there are two potential scenarios to consider: 

  • In one of the re-try attempts, the message can be successfully delivered to the end system. 

Fig 3.1

  • Alternatively, if the maximum number of re-try attempts is reached without success, the message will be marked as an error. 

 If the maximum re-try attempts have been exceeded and the message still hasn’t been delivered successfully, it will require manual re-processing (see Fig 3.2). 

Fig 3.2

 

 

  Key Advantages  

  • Streamlined Error Handling: By effectively managing busy message catch events, we can significantly mitigate potential errors during data processing. 
  • Efficient Data Re-processing: Our approach allows for a substantial reduction in the amount of data that needs to undergo re-processing. 
  • Versatile Solution: Utilizing the same bpmn models, we can easily adapt and apply them to various similar use cases simply by modifying the message name. 

 Optimizing Efficiency 

 In order to optimize efficiency, it is vital that both the target BPM and the message buffering BPM are connected to a centralized database. This will allow for seamless integration and streamlined performance. Maintaining a unified database instance is key to achieving optimal results. 

 

Four people on stage collecting award for Most Innovative Project

Winner! Unicom Most Innovative Project 2023

 

We are proud to announce that Sandhata, in partnership with Vodafone, were chosen as the winner of “Most Innovative Project 2023”. The Unicom India DevOps Awards showcases outstanding achievement from organisations, personalities and solutions operating within the DevOps space.

At Sandhata most, if not all, of our customers are implementing DevOps ways of working. We support them to achieve the maximum business benefit from these initiatives, bringing our unique breadth of experience to overcome their most difficult challenges with innovative, game-changing solutions.

Read More
Meet Kumar - co-founder and Head of Integration

We Are Sandhata – Meet Kumar

 

Hear from our of our co-founders, Kumaravel Narayanan, on his career journey, his hopes for Sandhata and how he keeps busy in his spare time.

 

Tell us about your role in Sandhata

My role is Head of Integration, and I am responsible for integration practices across all of our clients, including focusing on APIs and microservices. I am also one of the co-founders and a director of Sandhata. I currently oversee a few of our accounts including Vodafone, Accenture and Bahwan Cybertek.

 

Read More
API User Story - card, conversation Confirmation, context

API User Story

What is an API User Story?

 

Are you looking to get an idea of what an API User Story is about and understand if it would help to streamline the way you work in your business?

 

I have previously talked about  how an API platform can help grow your business.

 

API User Stories, created right at the start of the project life cycle, capture the requirements of an API platform. An API User Story captures a business requirement with defined acceptance criteria and expected outcomes.

 

Read More
Varun Arora Project Manager

We Are Sandhata – Meet Varun

Based in the UK, Varun Arora is a Project Manager at Sandhata. We caught up with Varun to find out more about his role, his journey so far, and his hopes for the future.

 

Tell us about your role at Sandhata

I joined Sandhata in 2021 as Project Manager, working initially for one of our telecoms clients.  I am really enjoying my role as it opens the gates for both technical and managerial exposure with stakeholder management.  The Sandhata teams have lots of technical experience and in API management, integration and DevOps and I am excited about getting exposure and learning in these areas to grow my career.

 

Read More
10 people at the awards ceremony for DTLA 2021 smiling and holding the award

Winner! Best Automation Project 2021

We are thrilled to announce that we have been crowned winners at the Digital Tech Leaders Awards 2021!

The Computing Digital Technology Leaders Awards exist to recognise the achievements of the individuals and companies who are really making it happen at the coal face of the digital technology stack: from website design and coding to UX and project management, from scrum masters and product managers, all the way up to the CDO.

Read More

How to Choose a Message-Oriented Middleware platform

 

The next generation of message-oriented middleware platforms have arrived, enabling distributed messaging in multi-cloud. But which platform is the right one for your business needs?

 

Do you want to harness the power of a next-generation middleware messaging system, but not sure which one is right for you? With so many solutions on the market, and new systems being released often, it can be a minefield of choice.

Read More

DevOps Hackathon – New solutions to old problems

 

One of our most experienced employees, Suresh Kotha, was part of the winning team in a recent Hackathon held at one of our clients, NatWest Group.

 

The team of 6, the “Infra Hackers”, competed against more than 20 other teams to build a working prototype using DevOps principles tasked with addressing a business challenge or introducing a new innovative way of working.

 

Their solution, an end to end release automation tool, integrated with the key tools used across the NatWest Group to deliver an end-to-end change governance solution. It was built in 2 weeks and there were multiple rounds of judging from senior roles in the organisation including Head of IT.

Read More
1 2