Presentation on Spring Framework

Hi all,

Recently I did a session for a set of QA engineers at work on “Introduction to Spring Framework”. Thought of sharing it here.

Cheers! 🙂

~Rajind Ruparathna


Serverless Architecture on AWS

Cloud Computing is gradually taking over the world and it is becoming a technology that the industry can’t live without. This comes as no surprise as with the business drivers such as capacity planning, cost reduction and organizational agility, Cloud Computing has become the most preferred choice for most organizations. One of the main concepts of Cloud Computing is that the technology is abstracted away from the user, which basically means that the users does not have to worry about how the cloud service is provided and they can simply focus on using the cloud services. Having this concept in mind cloud providers try to provide everything as a service and so far the main delivery models are Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS).

It is the advancement of technologies such as broadband networks and internet architecture, data center technologies, virtualization, web technologies, multitenant technologies and service technologies which made way for Cloud Computing and with new changes and technologies coming in new Cloud Computing trends and delivery models are emerging as well. One of those trending cloud delivery models is Function as a Service (FaaS) which is also known as Serverless Architecture.

Here I would like to share a presentation and a report that I did on Serverless Architecture for one of my MSc course modules.

Cheers! 🙂

~ Rajind Ruparathna


AS2 Protocol for Business Data Interchange via HTTP – Part 1 – Overview

The Applicability Statement 2 or AS2 specification defines a mechanism for the secure and reliable transfer of structured business data over the Internet.

AS2 Message Payloads

The AS2 protocol itself does not dictate any limits on the payload of an AS2 message. However. typical AS2 payloads are structured business documents such as Invoices, Purchase Orders etc. and thus AS2 systems facilitate the Electronic Data Interchange or EDI. Some of the major sets of EDI standards are:

  • The UN-recommended UN/EDIFACT is the only international standard and is predominant outside of North America.
  • The US standard ANSI ASC X12 (X12) is predominant in North America.
  • The TRADACOMS standard developed by the ANA (Article Numbering Association now known as GS1) is predominant in the UK retail industry.
  • The ODETTE standard used within the European automotive industry

AS2 messages can carry non-EDI payloads such as XML, CSV, Fixed Width, Text, or payloads of other standards or proprietary formats, including any binary files.

Continue reading “AS2 Protocol for Business Data Interchange via HTTP – Part 1 – Overview”

Processing Elements for Enterprise Integration Needs

In February, AdroitLogic released UltraESB-X, a completely redesigned ESB which is developed by the very same team who developed the UltraESB six years ago. UltraESB-X is developed inline with UltraStudio, a user friendly graphical tool to easily create, manage and test integration flows. In the user’s point of view, UltraESB-X mainly has two new concepts namely connectors and processing elements.

What is a Processing Element?

A processing element is an element which performs a specific processing requirement or business logic on the message. It can be one among a wide range of operations such as filtering using conditional branching, transformation, flow control, scope handling such as a transactional scope and many more. Usually processing elements in the UltraStudio editor are represented by an icon with a  bluish background except for  a few exceptions. One of those exceptions is the scope processing element family which uses a purple background and another set of special flow control processing elements which uses a reddish background.


The structure of a processing element is as shown in the above image. There is an In Port (grey colour) which takes a message in, then depending on the type of processing there can be zero or more Out Ports (light yellow) which gives a processed message out and finally there is the On Exception Port (red) which is used to forward the message in case an exception occurs during the processing logic of the element. UltraESB-X ships with dozens of built-in processing elements which covers a wide range of integration processing requirements and more processing elements are continuously added with each release cycle. Current list of processing elements can be browsed through the developer portal of AdroitLogic here. Apart from the inbuilt processing elements, UltraStudio allows user to write their own custom processing elements as explained in the documentation.

Continue reading “Processing Elements for Enterprise Integration Needs”

Recovering Accidentally Formatted ext4 Partition / Fixing Superblock

Today, I made the silly mistake of accidentally formatting one of the ext4 partitions in my Ubuntu 16.04 machine to NTFS instead of formatting the pen drive, which I was hoping to format. So if you are reading this most probably you have done something similar or perhaps someone you know has gone down that path and you maybe trying to help him/her.

Fortunately I was able to recover my partition completely and in this post I’ll go through the few things that helped me recover my partition. There is still hope my friend. 🙂

First I must thank Shane for this askubuntu answer, the author of this blog post for giving pointers and my friend Janaka for helping me out. Have a look at those two posts as they are very helpful.

Continue reading “Recovering Accidentally Formatted ext4 Partition / Fixing Superblock”

UltraESB-X Monitoring with Kibana

We at AdroitLogic recently released UltraESB-X developed on top of the flexible, extensible and lightweight Project-X platform. UltraESB-X comes with a GUI developer tool, UltraStudio, to develop, test and package your integration flows easily. Along with this we released Integration Platform Server (IPS), our PaaS solution to manage the deployment, maintenance and scaling of UltraESB-X clusters. When it comes to these enterprise integration products, one thing you can’t keep away is the requirement for statistics and monitoring. AdroitLogic Integration Platform comes with inbuilt monitoring and statistics support and we are in the process of developing our enterprise level monitoring solution IMonitor for UltraESB-X. Since UltraESB-X publishes metrics to the famous, distributed RESTful search and analytics engine Elasticsearch, we can use the open source visualization tool Kibana for monitoring as well. So today we will go through the steps to setup UltraESB-X monitoring with Kibana.

Continue reading “UltraESB-X Monitoring with Kibana”