Overview of IBM Business Process Manager hybrid configurations on System z

This article describes a hybrid approach to configure an IBM® Business Process Manager setup on System z®. This hybrid approach ensures that applications can make optimum use of the available hardware and software resources.

Brian Venn (vennb@uk.ibm.com), Software Developer , IBM

Photo of Brian VennBrian Venn is the System Verification Test Team Lead for WebSphere Process Server, WebSphere ESB, and IBM BPM on z/OS. He has 15 years of experience in the software industry and has worked at IBM Hursley Lab in the United Kingdom since 2000. He is an IBM Certified Solution Designer for SOA Solutions and an IBM Certified Deployment Professional, and he has participated in the authoring of four WebSphere Process Server and WebSphere ESB certification exams. Brian earned a Bachelor's degree in Astrophysics from Southampton University in the United Kingdom.



09 April 2014

Introduction

In version 8.5 of IBM Business Process Manager (BPM), a new deployment environment configuration option was introduced, AdvancedOnly. You can use the AdvancedOnly setup if you want WebSphere® Process Server or WebSphere Enterprise Server Bus (ESB) functionality only, without any functionality that was originally contained in WebSphere Lombardi Edition. This new configuration allows you to create a "hybrid topology" on System z, where workloads can run on the hardware and use system resources more efficiently.


Hybrid topologies enable better optimization

Figure 1 shows a representation of different types of workloads that are run in an enterprise environment. You can see that the workloads that are data intensive or require a high amount of input and output are better suited to run on the mainframe architecture, whereas the CPU intensive workloads are more suited for a distributed setup. Applications that require frequent access to data located in DB2® z/OS or IMS™ or z/OS® transactions in CICS®, IMS, and WebSphere MQ would run best if co-located with the resources that they require.

Figure 1. Workload types and where they run best
Workload types and where they run best

Co-locating resources

An important consideration in a hybrid setup is the ability to co-locate system resources on a z/OS setup. Co-location means that the data and the application using the data reside in the same z/OS instance. Figure 2 shows an illustration of what exactly is meant by co-location, with the left-hand side of the image showing what is correctly meant by co-location.

Figure 2. Co-location of resources
Co-location of resources

A co-located setup has the following advantages:

  • Increases cross memory speed
  • Avoids encryption overhead
  • Propagates the Security ID
  • Exploits z/OS transaction management (RRS)
  • Avoids serialization of parameters
  • Executes in a single thread

Processes that frequently interact with CICS, IMS, and DB2 z/OS benefit most from co-location on z/OS, all of which saves processor usage, increases robustness, and improves security.


WebSphere optimized local adapters

WebSphere optimized local adapters (WOLA) is a cross-memory mechanism for inbound and outbound calls for WebSphere Application Server on z/OS. Figure 3 shows examples of the types of applications that can take advantage of WOLA.

Figure 3. WOLA
WOLA

The benefits of WOLA are:

  • Based on local comm cross-memory access (a z/OS exclusive)
  • Bi-directional, WebSphere Application Server outbound or inbound to WebSphere Application Server
  • CICS security and transaction propagation
  • 1.5 to 6 times faster than other local solutions
  • Avoids serialization of parameters
  • Allows all the z/OS players to call one another like peers to leverage all of your assets

Database connection types

There are two types of database connections available: Type 2 or Type 4. Figure 4 shows a comparison and the benefits between using Type 2 and Type 4 database connections in a z/OS mainframe environment.

Figure 4. Comparing Type 2 and Type 4
Comparing Type 2 and Type 4

As seen in Figure 4, the CPU benefits as the Type 2 connection uses cross memory technology, which eliminates the CPU usage associated with the TCP stack and DB2 DDF.


Hybrid approach: A solution scenario

To illustrate where the advantages described above can be implemented in a production System z topology, we'll walkthrough a BPM solution that takes advantage of a hybrid setup.

In this scenario, there are three main parts to the solution based on a large multinational company ordering system. The main parts of the system are:

  • The orders are placed by the Order entry team (Step 1 in Figure 5). Each customer has an ID number, which is used to access their full details, such as full name and address. These details are entered by hand.
Figure 5. Order processing BPD flow
Order processing BPD flow
  • The customer details are stored in a DB2 v10 database. A BPEL application developed in IBM Integration Designer retrieves the customer details from the database. This application is invoked from the BPD flow (Step 2 in Figure 5), and illustrated in Figure 6.
Figure 6. Customer lookup application
Customer lookup application
  • Once the customer's full details have been retrieved from the database via their ID number, an automated credit check is performed using these details based on their order history and other outstanding debt. The automated credit check is another BPEL application that interfaces with CICS and IMS to retrieve the customer's historical data. This application is invoked from the BPD flow (Step 3 in Figure 5) and illustrated in Figure 7.
Figure 7. Customer lookup application from BPD flow
Customer lookup application from BPD flow
  • Once a credit score has been determined and the order is accepted (Step 4 in Figure 5), the order is then processed by the stock, invoice, and shipping teams (Steps 5 and 6 in Figure 5).

From an availability perspective, consider the following:

  • The customerLookup and creditCheck applications are both mission critical applications. If the customer details cannot be retrieved, or credit checks cannot be performed and orders cannot be placed and processed.
  • This company is a multinational company with order teams located globally taking customer orders. Therefore, the customerLookup and creditCheck applications are often subject to high workloads during peak ordering times.

Looking at this from a team's perspective, consider the following:

  • Teams on the ground fulfilling the orders often use web interfaces on mobile devices.
  • Management and executive teams want access to performance data dashboards to determine data such as who is working on what and order processing times.

Looking at this from a workload perspective, there are two distinct different workload types happening here:

  • Human Centric: Order placing, stock picking, invoicing, and shipping are all tasks that require human interaction performed by different people in different teams. Therefore, these types of tasks are best suited to be developed as a BPD flow in IBM Process Designer, with a BPD coaches serving up various web page interfaces to the relevant teams. The order entry team enters an order detail and customer number, the stock team picks the stock, the invoicing team sends the invoice, and the shipping team ships the order. All of which requires human interaction to key in data and click buttons to confirm that the steps of the process has been completed by someone.
  • Automated: The applications retrieving the customer's details based on their ID number, and then to generate a credit score based on this, are completely automatic and require no human interaction. These are referred to as a straight through process (STP).

Running workloads where they run best

With the customer lookup application accessing customer data held in a DB2 v10, it makes sense to take advantage of a DB2 Type 2 connection. Similarly, with the creditCheck application using both IMS and CICS, the best solution is to co-locate an AdvancedOnly BPM server with CICS and IMS in order to take advantage of WOLA. Therefore, from an application deployment perspective:

  • Deploy the Order Process BPD flow to an IBM BPM Standard Edition server running on zLinux.
  • Deploy the customerLookup and creditCheck applications to an IBM BPM server with an AdvancedOnly Deployment environment running on z/OS.

This setup is illustrated in Figure 8.

Figure 8. Hybrid deployment
Hybrid deployment

The left-hand side of Figure 8 shows the BPD Order Process flow is deployed to an IBM BPM Standard Edition server running on a zLinux server. The workloads running on this server are BPD flows so only a Standard Edition server is required here. The right-hand side of Figure 8 shows the customerLookup and creditCheck applications deployed to an AdvancedOnly server running on a z/OS mainframe. The AdvancedOnly BPM server is co-located with the DB2, CICS, and IMS products that the applications require.

This is the key concept for the hybrid setup. The zLinux server displays the coaches and dashboards, which are static HTTP content. As shown from Figure 1, this type of workload is best handled on a distributed setup.

The straight through processing applications (STP), customerLookup, and creditCheck require no human interaction. They have access to mainframe resources by taking advantage of co-location and other mainframe benefits, such as Type 2 and WOLA. Therefore, they are best suited to run on a mainframe. With different workload types involved in the overall solution, a hybrid topology allows applications to run efficiently to take full advantage of the resources.


Conclusion

This article described the benefits of a hybrid setup when running a BPM solution with different workload requirements. When you place your application in the right location, you can take advantage of both hardware and software resources for a more robust and faster enterprise setup.

Resources

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Business process management on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Business process management
ArticleID=968023
ArticleTitle=Overview of IBM Business Process Manager hybrid configurations on System z
publish-date=04092014