2020 Issue 5

Issue #5 - December 3, 2020

This is a recurring newsletter of content around Ballerina and related technology topics such as integration, microservices, distributed systems, and cloud computing.

Data and transaction handling in microservices

Data is an integral part of any software system and providing data to the right stakeholders at the right time is key to an enterprise’s success. Compared to monoliths, handling data in a microservice architecture (MSA) can be complex. A reusable data abstraction layer with data services is usually created so that data can be accessed from multiple disparate microservices. Read this Hackernoon article to see how you can use Ballerina’s first-class language constructs to easily write data services with maximum agility and no boilerplate code.

Another key aspect to think about is how to handle transactions. Owing to the distributed nature of microservices, there are specific challenges that you need to consider that don’t pertain to monoliths. This includes the need to balance aspects such as data consistency and performance when scaling your solution. In this Hackernoon article, we deep-dive into these challenges and explore some best practices of transaction handling for different system requirements.

In MSA, you need to process events from multiple sources and make decisions based on them. Sometimes, these operations and the logic that goes into them can become complicated. Ballerina’s language-integrated queries provide a SQL-like syntax to easily write this logic and process event streams to filter, transform, and perform other actions on your data. Learn more in this DZone article.

Ballerina also uniquely handles data types like JSON and XML, and integrates them with features like the above-mentioned language-integrated queries. In this DZone article, we explore how to handle complex XML filtering and transformation in Ballerina.

What’s new in Ballerina?

The seventh Swan Lake preview release is going out this week! Once it does, we will update the release note with the full feature list.

Here is a summary of the key features in Ballerina Swan Lake Preview 5 and 7:

  • Introducing isolated objects to achieve concurrency safety with Ballerina objects
  • Ballerina executables now require JDK 11
  • Introducing Ballerina packages: a wholly revamped approach to structuring your code and sharing with Ballerina central
  • Improved code formatting in IDE plugins and command-line tools

Download the preview version, try it out and let us know your feedback via our Slack channel.

Ballerina Community Call

If you’d like to have a discussion with our engineering team on Ballerina concepts and how you can use it in your projects, join our community call on Tuesday, December 8, at 9:00 a.m. PDT. In this time’s call, we will discuss the Java interoperability feature in Ballerina. Sign up here to get notified.

We hope you found this information useful. We’ll catch you again soon!

Privacy policy  |   Terms of service

Want to get hand-picked content and the latest news on Ballerina delivered directly to your inbox? Then subscribe to our monthly newsletter today!