Skip to main content


Showing posts from 2016

Red Hat JBoss Fuse - Automate integration CI/CD processes

Long time no see :) , for many of you who knows me, I've been through a major change in life, moving to another country for couple of years, that is why there are less updates in my blog. But, I am back! Getting back to business. Fuse Integration Service 2.0 Tech preview was out two weeks ago, since this version is base on OpenShift 3.3, which has pipeline capability prebuilt on top of it (Tech preview on OpenShift as well). This get it one step closer to a more automated and agile continuous integration, and deployment one-stop platform for us, the integration developer.

For the pipeline to work on OpenShift, you will need Jenkins installed and running. OpenShift uses it to build, process and handle all the workflows. If you are familiar with developing in openshift, to build the pipeline is pretty simple and straight-forward. The pipeline is defined as a build configuration in OpenShift, just create a build config then import it to the namespace you want it to be in. And that is…

Red Hat JBoss Fuse/A-MQ - Fuse and A-MQ Version 6.3 GA is released!

Fuse and A-MQ 6.3 GA has just went out. Maybe, you would think this is just only a minor version release why should I care? Hold your thoughts on that! Because they have done a lot of improvements and also added many new features into this release.

Besides various bug fixes and making sure Fuse Fabric is much more stable. There are two major change in this version update:

New Tooling in JBoss Developer Studio (JBDS) 9.1 GA. Newer Apache Camel version – Camel v2.17. I was really impressed by the work put in to make developing Camel application much simpler. First is the installation of tooling itself. Now it has a all-in-one installer so you don't need to worry about which plugins you need to check. See the videos below to see the new "Getting Started" of Fuse 6.3.

And If you notice from the above video, the presentation of camel route in JBDS has also updated. It fixed some of the miss representation of logic and making it easier to read.

Old Camel Route
New Camel Route
On …

Red Hat JBoss A-MQ - A-MQ 7 alpha is ready!

I am sure this is the moment we have all been waiting for a long time, JBoss A-MQ 7 is finally out and is currently in Alpha. A-MQ is a fast and flexible messaging platform that reliably delivers information and easily integrates the various components in your application environments.

A-MQ 7 consists of several new components and features, it is base on Project Apache ActiveMQ Artemis. The code base was donated by HornetQ. Having high performance journal base on NIO implementation, allows A-MQ 7 to become a fast , high performance and reliable messaging platform.  Rather than relying other persistence storage it is very highly optimized for general message use cases. The message broker as always allows you to balance load across a cluster of brokers, the balancing of the message not only distributed the incoming message to brokers sequentially but also takes into the account of the number of consumers and selectors in the broker so the performance can achieved even distribution of the…

JBoss Fuse integration service - Enhancing Customer Experience Through Integration and Automation of Business Events in the Cloud

This year in Red Hat summit, I have to honor to work with two intelligent colleague of mine Eric Schabell and Siamak Sadeghianfar to share an interesting workshop. The main theme on the workshop is demonstrate how rules automation can be implemented on the cloud and how to take advantage of the integration service to expose API and scalable across the network.

Red Hat OpenShift, is a Platform-as-a-Service (PaaS) that allows developers to quickly develop, host, and scale applications in a cloud environment.  The lab goes through basics concept of OpenShift, explaining the following terminology in OpenShift.

Container: Lightweight mechanisms for isolating running processes
Image: A binary that includes all of the requirements for running a single container, as well as metadata describing its needs and capabilities.
Pod: A small group of tightly coupled Containers sharing network, storage, etc
Service: A set of replicated pods that work together
Build: Process of transforming a set of paramet…

Red Hat JBoss Fuse - Healthcare integration demo Part Three

I was going to talk about my API approach, but then I have many emails asking if I can do a installation video. 

In this demo, we will be simulating Four different departments that are typically in hospital. RegistrationClinicLaboratoryRadiologyAnd a party that is very common outside the hospital itself, PharmacyYou will get to see - how to build microservice for each departments, - how to handle HL7, FHIR dataformat, - how to build a robust architecture, - how to talk in different protocol Through a normal medical visit in the demo. Prerequisite There are few software you need to install beforehad  VagrantVirtual Box
And you also need following software from Red Hat  CDKVirtual Box imageOpenShift Client 
InstallationMake sure you have installed Vagrant and Virtual box. run to setup CDK and web services $ ./ Under project directory ./projects/healthcaredemo $ mvn -Pf8-local-deploy After projects are depolyed, go back to the demo root directory (where the is) we want to c…

Red Hat JBoss Fuse - Healthcare integration demo Part Two

I hope you enjoy playing with my healthcare demo, if you have not yet look at it, and would like to know what is the scenario of the demo, and how to run it, please visit my previous blog.

Microservices are defined by many people in various ways. But for me, it's all down to why do we need it, if there are no benefit to me or my application, why do I bothered? Taking applications apart into smaller pieces doesn't mean it's going to make my life easier, without proper management or tools to help, I am just moving from a large inflexible tangled spaghetti codebase application to a maze like management hell. I am not against microservices, actually I am all for it, because not only it makes it easier for a new developer to understand the functionality of a service, it allows the workload to split up into independent chunks, members of the team no longer needs to wait for each other to publish and update their application, and choose the language the prefer. Isolating errors i…

Red Hat JBoss Fuse - Healthcare integration demo Part One

Continue on with the topic from last week, I want to try to demonstrate how JBoss Fuse can help to build a more robust, and agile healthcare integration solution. In this blog I will explain what the demo is about, how to install and play with the demo. You can access the code base here:  I tried to mimic a common situation when we visit a clinic or hospital. Lets start by looking at the departments. There are 5 different parties involve. As you can see, these are commonly found in healthcare and they uses different data format and talks in various protocol. just like what it would be in real life.  Front Registration DeskResponsible for patient registration Sending registered patient to all departmentsStoring patient registration dataTalks in HL7 v2Doctor Clinic Receives registration infoFor clinical prescriptions Doctor sending patients to eithe lab test or radiology x-rayRecording paitent conditionHL7Messaging brokerLaboratoriesReceives …

Red Hat JBoss Fuse - The next step of integration for healthcare industry

I wanted to build a JBoss Fuse demo for healthcare industry, and started doing my research on the internet, at first, I thought, it is not going to take long, since there is already a standard out there: HL7 for data exchanging, how difficult can it be? Integration in healthcare should be a piece of cake...  But I was WRONG! After reading through materials, and looking at this humongous confusing HL7 hierarchy with various version, possible new format, medical terms, and don't even get me started on customization of different parties. I admit, OK, I get why it is complicated now.

The fundamental reason of why healthcare is so complex is the number of diverse aspect it needs to cover. Think about this, if you accidentally break your bone, and rushed to an ER to be treated, other then the actual medical treatment you received, the people, information involving behind the scenes are much more then one can imagine, at least for me it is.

First is when we got to the ER, they need to fi…

Fuse Integration Service - Auto Dealership Management Demo, Part Six

This series of blog is based on building an auto dealership management system on Fuse Integration Service. We will be creating three major functions in the system.
Sales report tracking Vehicle inventory statusCustomer IoT Service We have exported a sales report to a web page, provide current inventory status of available cars through web service. And collect customer data from IoT devices on their car then alert close by shops. 

In this part of the series, I want to look at Blue Green Deployment, and how Fuse Integration does it? So what exactly is this "blue green deployment" ? This is one technique to ensure the high availability and is very important in DEVOPS. In continuous delivery to ensure quality of the application, often we want to carry out a set of test before it goes on to an environment before releasing it to clients, this technique allow two versions of application running at the same time, so you can switch between the existing and update application. This wil…