Monday, October 25, 2010

Java in a TXSeries environment

TXSeries being positioned as a transaction processing platform for traditional applications written on COBOL, C, C++, and PL/I. - predominantly! There's no question asked if the entire application workload is written on Java which obviously would be hosted on a Java EE platform such as IBM WebSphere.

TXSeries and Java architecture

In TXSeries, CICS regions are designed to have a multi-process architecture model. That is, you will find a set of co-ordinated operating system processes running when you start a CICS region. There would be a number of application server processes running (1 to n, that are configurable), which are responsible to run the business transactions/applications. Each of this application server process would then have the JVM initialized, when a Java application is run on it. The classes gets loaded within the JVM heap of the application server process and are not shared with other application server processes.

Running Java programs on TXSeries would suffer performance impacts due to its architecture; nevertheless the Java support on TXSeries has certain advantages like below:
  • To invoke a web service
  • To integrate with external Java applications
  • Access CICS services using JCICS API
To invoke a Java CICS program, you don't need a special semantics... you can just do a EXEC CICS LINK command to call the Java/CICS program. TXSeries takes care of the data conversion between Unicode and your language code page.

There are certain limitations in using the Java support, like for example, you can't deploy an EJB on TXSeries, and only limited set of JCICS API (v1) are supported for TXSeries.

You can use Rational Application Developer (RAD) tooling for developing TXSeries/Java applications.

For more information on the Java support on TXSeries refer to the following:

TXSeries Redbooks:
http://www.redbooks.ibm.com/abstracts/sg247185.html (section 3.6.1. details programming in Java)

TXSeries IEA Website material:
http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/topic/com.ibm.iea.txseries/txseries/6.1/Programming/TXSeriesV6_JAVA/player.html?dmuid=20061231124436896636

Tuesday, October 19, 2010

Smarter Work Load Management Tool

I don't think that Work Load Management terms are anything new to us! There are loads of load balancing software tools available...These are required tools for providing scalability for your business applications running on different or same hardwares... providing horizontal scaling.

I know that Oracle Tuxedo provides clustering mechanisms that would route the incoming requests across a cluster of servers configured... in a round robin fashion or may be in some pre-determined fashion... So to scale your applications, cluster whatever machines you have (same or different hardware), deploy your application in each of them, job done, do you think?... well you may just run in to various problems if you do that!

There is more towards work load management tool these days than just to route the work!. That's why I call them as a Smarter Work Load Management tool... Say for instance it is very unlikely to have all the hardware machines on which your applications deployed are of the same horse power, and what if you wanted to make old systems to take part of the same cluster but doing relatively less load of work that the rest powerful machines? What if you want to route requests based on the data that is incoming (say route to a Geo specific server)? What if you wanted to take some machines out of the clusters for maintenance dynamically without stopping or interrupting your business? What if you wanted to send only certain number of requests irrespective of how powerful the machines are (partitioning)... Well there are loads of intuitive reasons such as these, which makes a primitive work load management tool inefficient, if not all, in most of the deployment scenarios. Doesn't addressing these make a smarter work load management tool?.

Answers to the above questions is what you would find as a feature in the Websphere TXSeries CICS software...With a license of TXSeries in hand, you get a fully functional Work Load Management tool with no additional cost... so when your business grows or want to scale your applications horizontally, you don't need to worry on buying additional tools/softwares. There are numerous ways you can configure the WLM tool in TXSeries, which makes it more appealing and flexible in a clustered environment. A true value for money feature!

Smarter Migration of Oracle Tuxedo applications on to a IBM platform

I guess moving Oracle Tuxedo based applications on to an IBM based platform is never going to be easier than using the newly released IMAT (IBM Migration Assistant for Oracle Tuxedo) offering from IBM.

But Why Move ?...

I always heard that the support cost from BEA was high, and it became worse after Oracle acquired almost spiraling the costs....maintenance. And this at a time when businesses are cutting short their spending due to economic conditions prevailing. To be honest, in my opinion this (cost) isn't the obvious or primary reason as to why you should move to TXSeries... (probably re-negotiating with Oracle might help reduce the costs ;-)). It is because of the technical value that TXSeries brings on the table, and its complete eco system surrounding it which makes it a good value for money as compared to that of a Oracle stack.

What values does TXSeries bring to me...?
IBM TXSeries has been in the market for over than a decade and is a matured product; having a wide spread deployment world-wide running across various industries like Banking, Healthcare, Insurance, Retail, Manufacturing, Transportation, and so on.

Well, TXSeries adopts a robust framework of CICS (Customer Information Control System) - a much famous OLTP platform in the industry. The simplicity of the CICS architecture provides various benefits to that of a Oracle Tuxedo. Firstly, it is proven that with TXSeries that it consumes less CPU power and memory usage to that of Oracle Tuxedo for the same throughput (or a TPS factor). This means you can do more with less - Every business that runs would expect itself to grow year-a-year and so equally the demand in their IT infrastructure. In terms of large deployments is concerned, nothing gets better than TXSeries here - It's seamless to scale across different hardware platforms, provides an intuitive work load management, flexibility in deploying applications and refreshing them later with an updated version without requiring to stop your business. Multiple instances of TXSeries systems running on desperate hardware can talk 2PC (global transaction), provides monitoring through Web based administration tool, Tivoli agents, Web Services SupportPac, WebSphere Business Events SupportPac, IMAT SupportPac.... and all this at no additional cost!

How does IMAT help me... ?
IMAT SupportPac provides you the necessary tools that let's you to migrate your existing Tuxedo based application on a TXSeries environment seamlessly, without requiring considerable effort...During the migration process, your application remains as-is - this is a key benefit in the migration projects which are quite sensitive to any changes done in the application / business logics. Also you might think that being new to a TXSeries environment, it would require a larger learning curve - but this is not the case with IMAT... it is equipped will all the tools required with which you continue to develop and deploy your application as you were doing in the Tuxedo environment without needing to learn how you do all these newly in TXSeries! Isn't this a great boon for such migration? less learning and quick deployments of your existing applications! This is why we call IMAT a S.M.A.R.T migration offering. You can continue to maintain your existing applications and new application can be written to take advantage of the CICS Application Programming sets.
    Does IMAT change my application code... ?
    Nope. it doesn't. Your application is just link-edited with a library that is supplied with IMAT and enables it to run on the TXSeries environment.

    Bullet proof investment for the future...
    At the end of the day, one can always look up to CICS TS if they wish to scale over the roof... with the z Enterprise launched one can consolidate all the heterogeneous hardware in to one single blade... Imagine the benefits of doing so... less data center space, less cooling p.m., easier to manage and maintain in a centralized system, no hurlings of cables here and there... above all the reliability that you get for which mainframes are always known for! And what more, TXSeries applications are compatible to run on a CICS TS environment.

    Where can I get this tool...?
    Here is a link that can give you more information on how to download: http://www-01.ibm.com/support/docview.wss?rs=9&uid=swg24026819

    Do I need anything else to try this tool...?
    You will need TXSeries obviously, if you don't have a license yet... why don't try a trial download?... here is the link: http://www.ibm.com/developerworks/downloads/ws/txseries/index.html

    Where can I ask a question on TXSeries... ?
    There is a technical developerWorks forum for TXSeries, and here is the link: http://www.ibm.com/developerworks/forums/forum.jspa?forumID=1014