Posts tagged ‘IBM’

May 21, 2013

How to NOT buy enterprise software

by Roman Kharkovski

Recently I had a discussion with a certain retail company in US about their enterprise integration initiative. One of the things that struck me was the way they are comparing costs of potential ESB solutions. Here are some of the assumptions they are making when comparing the costs:

  1. “We asked both vendors for the quote of their ESB product for 24 Intel cores”
  2. “We asked two of our partners for the services quote to implement the solution using ESBs from IBM and Vendor Red”
  3. “We are assuming that license terms and conditions for the ESB software are the same between both vendors”
  4. “We assume that operational costs of IBM and Vendor Red ESB are more or less the same”

I have been in the middleware business for over 18 years now and unfortunately these kinds of assumptions are used over and over again. My discussion yesterday was about ESB, but I have seen these assumptions applied to databases, application servers, messaging, caching, portals and other kinds of enterprise middleware. How unfortunate. Not only this is not fare to vendors, but first and foremost these assumptions are counter productive for the very company that is evaluating the software. Let me consider these one by one and explain why you should NOT be using these in your decision process.

“We asked both vendors for the quote of their ESB product for 24 Intel cores”

What this really means is that the company has sent a request to vendors to quote a certain number of licenses for a fixed hardware configuration. What is wrong with this assumption? Aren’t all ESBs created equal? No, they are not.

If you shop for a car, would you ask for a quote on Ford Focus vs. Ferrari 458? These are both cars, but they have different characteristics and different speeds.

If you shop for a bike to race in triathlon, would you compare price on a bike from WalMart vs. a Felt or Cervelo bike? You can ride any of those bikes, but you sure can’t compare them on price alone.

Same thing with software. You just can not compare the license cost for a single core and assume you get the same performance out of that configuration using arbitrary ESB (or other middleware) product. Lets assume you need to handle 1 million transactions per hour. How many cores of the ESB product do you need to handle the workload?

IBM performance team publishes detailed performance reports for WebSphere MQ and WebSphere Message Broker (all found on Support Packs page). In my earlier article comparing WebSphere Message Broker and Oracle Service Bus, I have used an example of such report for WMB v8 on Linux x86. I have not seen any public performance data for Oracle Service Bus, nor tuning recommendations for specific platforms and protocols. The following table shows the message rates that were obtained for the different use cases when running on a IBM xSeries x3690 X5 with 2 x Deca-Core Intel Xeon E7-2860 2.27GHz processors:

performance

Your company integration logic is likely to be a mix of workloads listed above. For the sake of discussion, let me assume that the average throughput of your application on WebSphere Message Broker is 9,000 transactions per second on the above configuration. This translates to about 450 transactions per second per processor core. 1M transactions per hour is roughly 278 transactions per second. This means you can handle your integration workload with a single core of Message Broker and still have capacity on that core to handle 40% more transactions.

Does this mean you would also need only a single core of the other vendor ESB product? Not necessarily. I have seen many performance POCs at many different customers in US and abroad where performance results of Message Broker were order of magnitude better than that of competition (in particular vendor Red ESB). I also did performance tests of my own where I have seen 2 to 5 times performance advantage of Message Broker over this other ESB product for workloads such as file parsing, database access (read and write), WebSphere MQ interaction and XML payload handling over HTTP and MQ protocols. Unfortunately I can’t publish my performance report since Oracle license agreement requires me to get their written permission to do so. And given the results, I know they wont approve…

You might say that ESB is a very special case and there is no industry standard for ESBs. What about Java EE servers? Those are all standards based and surely are not very different from each other. They all run on Java and all implement similar APIs. Why bother with the sizing? Wrong again. As you can see in this blog article that compares price performance of WebSphere vs. WebLogic – you do get different transactions per core ratio when running different vendor’s application servers. In the case of IBM WebSphere on Power7+ you get twice as many transactions per core compared to WebLogic on SPARC T5. To borrow from that article, here is a comparison of transactions per core for application servers (thank goodness SPEC.org is a public benchmark, so I do not need to get Oracle permission for this comparison):

specj_history

Bottom line – you simply CAN NOT make an assumption that you need the same number of cores for different vendor products to handle the same workload.

“We asked two of our partners for the services quote to implement the solution using ESBs from IBM and Vendor Red”

Implementation costs are very difficult to estimate and comparing bids from different integrators is very hard. There are simply too many variables and risks involved. Never mind the risk of not ever finishing the project, such as this example of a failed multi-billion dollar Oracle implementation.

How do you compare the implementation costs then if you can’t fully trust your integrator bids? This is more art than it is a science, but at the very least, I would highly recommend that you try to implement at least a small pilot project yourself to get a feel for the software. After all it is your business and you need to have at least some first hand experience with the software. You do not need to do a full implementation yourself, it is perfectly fine to hire 3rd party integrator to do the bulk of the work for you, but you are the one ultimately responsible for the implementation.

Download the software, install it and try to build something with it. Spend no less than one week with one vendor product and one week with another – just to get a feel for those products. You might be surprised. Personally I find WebSphere Message Broker very easy to use. Sure, there is a learning curve, but once you get a feel for the product, it becomes very productive. I recorded several demos with Message Broker and Oracle Service Bus – implementing the same integration logic in both products. What takes me 6 minutes and 50 mouse clicks in Message broker, takes over 1 hour and 1,000+ mouse clicks in Oracle Service Bus. Unfortunately I can’t post my demos in the public domain because Oracle license agreement is very restrictive. But you can get a feel for the Oracle Service Bus productivity from this article (not sponsored, nor affiliated with IBM in any way).

“We are assuming that license terms and conditions for the ESB software are the same between both vendors”

I have covered this topic in my other posts and will simply refer you to these articles:

“We assume that operational costs of IBM and Vendor Red ESB are more or less the same”

Operational costs include installation, monitoring, deployment, configuration and many other factors. I will cover these in my future posts in more details, but for now let me make few quick notes on this subject:

  • Installation time of Message Broker is only about 3 minutes as I have documented in this demonstration video. Try installing Oracle Service Bus with all of its prerequisites and compare that to Message Broker. (Tip: You may be able to get around some of the complexity of Oracle install by using shared files system with binaries.)
  • Another consideration is the number of cores and number of machines machines you need to manage. Performance differences require configurations of different sizes and the number of machines in a cluster has direct impact on the difficulty of administration.
  • Performance tuning of Message Broker is well documented in IBM performance reports and public best practices documents. Tuning Oracle Service Bus involves tuning of the JVM, WebLogic Server and Oracle Service Bus itself. Outside of the basic Oracle documentation, there is not much information available to the public on best practices and performance of Oracle Service Bus, nor can you find a single performance or sizing guide report from Oracle on the Oracle Service Bus.

Conclusion

There are many considerations that need to be evaluated when selecting your integration bus and the cost is very important, however one needs to be thoughtful on how to compare costs between different vendors and products. In any case it is a lot more than just comparing a cost for a single core license. You may want to consider experience of companies who decided to move from Oracle to IBM middleware to reduce their costs.

April 29, 2013

WebLogic 12c on Oracle SPARC T5-8 delivers half the transactions per core at double the cost of the WebSphere on IBM Power7

by Roman Kharkovski

Last few weeks brought us two new SPECjEnterprise2010 results – one from Oracle and one from IBM. Both were done using very latest software and hardware. Oracle announced their new SPARC T5 processor with much fanfare and claiming it to be the “fastest processor in the world”. Well, perhaps it is the fastest processor that Oracle has produced, but certainly not the fastest in the world. You see, when you publish industry benchmarks, people may actually compare your results to other vendor’s results. This is exactly what I would like to do in this article.

specj_apr_2013

Full results can be found here:
Oracle total EjOPS: 57,422.17 http://www.spec.org/jEnterprise2010/results/res2013q1/jEnterprise2010-20130305-00041.html
IBM total EjOPS: 13,161.07 http://www.spec.org/jEnterprise2010/results/res2013q2/jEnterprise2010-20130402-00042.html

Being “fastest processor in the world” means that such processor must be able to handle the most transactions per second per processor core, which is how software pricing works and how people size their workloads and control their costs. This is not the proof Oracle delivered with their latest result (see full details on Spec website). To give Oracle credit, their result is the biggest overall 57,422.17 EjOPS (transactions per second). But that is a Total number of transactions, not a measure of the processor speed. To achieve that result, Oracle had to use 128 SPARC T5 cores for the WebLogic 12c and additional 128 cores for the Oracle database! The total cost of the hardware to achieve such high number of Total EjOPS is $1.1 Million. Even more sobering is the list price for the software, which is $5.2 Million (including 3 years of support and using lower priced WebLogic Standard – not even clustered!). If you price Oracle configuration with the WebLogic Enterprise (which does support clustering), your software cost will be $7.7 Million. Overall this latest Oracle result produced 449 EjOPS/core at the cost of $109.45 per EjOPS.

Now look at the IBM result published recently using WebSphere 8.5.5 on Power7+ hardware with DB2 database. IBM did not go after the biggest number of EjOPS (which is just the matter of throwing bunch of hardware together). However IBM produced the world record result in terms of EjOPS per processor core – truly a measure of the fastest processor known to men (for Java EE workloads that is). The total hardware cost of IBM result is $74,000 and the software cost is $766,000 (of which WebSphere is only $72,000 and the rest is DB2). This IBM result delivered world record 823 EjOPS per core with the cost of $63.79 per EjOPS. Now this is almost twice as many transactions per second at almost half of the Oracle cost. Truly remarkable.

Since Oracle knew they can not produce the most efficient result in terms of cost or transactions per second, the only way for them to claim world record was to throw large hardware at it and produce the biggest total number of EjOPS. Not a very useful metric I must admit. Much more interesting is the efficiency – measured in EjOPS per core and most importantly cost of EjOPS.

The story does not end here. Why not take a look at the history of performance results on similar and dissimilar hardware? Why not compare these platforms:

  • IBM WebSphere on Power7+ vs. Oracle WebLogic on SPARC T5 (latest generation hardware – shown above, but just to rub it in)
  • IBM WebSphere on Power7 vs. Oracle WebLogic on SPARC T4 (previous generation hardware for both vendors)
  • IBM WebSphere vs. Oracle WebLogic on Intel Sandy Bridge Xeon E5-2690 (almost identical hardware setup using latest Intel hardware)
  • IBM WebSphere vs. Oracle WebLogic on Intel Westmere Xeon X5690 (almost identical hardware setup using older Intel hardware)

Here is a summary of these results listed above:

specj_history

Here is a brief summary of the IBM WebSphere performance track record since year 2000:

  • Held the most records in ECPerf (pre-2001)
  • FIRST to publish SPECj2001
  • FIRST to publish SPECj2002
  • FIRST and ONLY company to publish SPECj2002 Distributed
  • FIRST to publish SPECj2004 and the only vendor to publish for over 13 months, held #1 spot for most of the time
  • FIRST to publish SPECjEnterprise2010
    • LOWEST cost per transaction as of today
    • BEST performance per core as of today

For additional information, please refer to these performance related articles: http://whywebsphere.com/?s=specj

******************* Notes:

(1) SPEC and SPECjEnterprise2010 are registered trademarks of the Standard Performance Evaluation Corporation. Results from http://www.spec.org as of 04/04/2013 Oracle SUN SPARC T5-8 449 EjOPS/core SPECjEnterprise2010 (Oracle’s WLS best SPECjEnterprise2010 EjOPS/core result on SPARC). IBM Power730 823 EjOPS/core (World Record SPECjEnterprise2010 EJOPS/core result), (2) Results from http://www.spec.org as of 04/29/2012 Oracle SUN SPARC T4-4 313 EjOPS/core SPECjEnterprise2010 (Oracle’s WLS best SPECjEnterprise2010 EjOPS/core result on SPARC). IBM Power780 681 EjOPS/core (World Record SPECjEnterprise2010 EJOPS/core result), (3) Results from http://www.spec.org as of 11/14/2012 Oracle SUN Fire X4170M3 519.39 EjOPS/core SPECjEnterprise2010 (Oracle’s WLS best SPECjEnterprise2010 EjOPS/core result on Sandy Bridge). IBM WAS 8.5 System x3650 M4 Intel Sandy Bridge EjOPS/core (World Record SPECjEnterprise2010 EJOPS/core result) (4) Results from http://www.spec.org as of 04/29/2012 Oracle SUN Blade Server X6270 M2 452.285 EjOPS/core SPECjEnterprise2010). IBM Websphere HS 22 Blade 524.621 EjOPS/core.

April 24, 2013

Reduce cost and move to a standards based platform by migrating off your Oracle Tuxedo applications

by Roman Kharkovski

This article was written by Hariharan Venkitachalam (IBM).

In this article we want to illustrate the options and the benefits of moving off from the Oracle Tuxedo platform on to a IBM solution. Having talked to several customers we want to highlight and provide insights on the migration process. IBM provides different solutions catering to needs of the clients migrating from Oracle Tuxedo. In brief below are the available solutions:

  1. IBM TXSeries for Multiplatforms and IBM Migration Assistant Tooling for Oracle Tuxedo – helps clients to reuse existing applications.
  2. IBM WebSphere eXtended Transaction Runtime and IBM Migration Assistant Tooling for Oracle Tuxedo – helps clients to modernize their existing COBOL / C / C++ applications and get new features in porting them to the new IBM platform.
  3. IBM Mixed Language Application Modernization Pattern – helps clients to deploy in a cloud ready environment such as IBM PureApplication System or through IBM Workload Deployer.

What values does the IBM solution bring to me? As said there are different solutions from IBM and so it would be best to talk the value add on the context of each solution:

IBM TXSeries for Multiplatforms and IBM Migration Assistant Tooling for Oracle Tuxedo.

IBM TXSeries has been in the market for well over decade and is a mature product; having a wide spread deployment world-wide running across various industries like Banking, Healthcare, Insurance, Retail, Manufacturing, Transportation, and so on.

TXSeries adopts a robust framework of CICS – a 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 TXSeries 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. In terms of large deployments, TXSeries scales 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 different 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!

IBM WebSphere eXtended Transaction Runtime and IBM Migration Assistant Tooling for Oracle Tuxedo.

IBM WebSphere eXtended Transaction Runtime offers a first class integration between traditional applications written in C, C++, or COBOL and Java EE applications running on WebSphere environment. This is the best available solution in the market place today to modernize your existing Oracle Tuxedo applications and manage them on the WebSphere environment. The management, deployment and development processes for applications are all integrated with the features provided by IBM WebSphere eXtended Transaction Runtime technology, and couple this with the feature pack that provides the IBM Migration Assistant Tooling for Oracle Tuxedo that helps you to migrate off your existing Oracle Tuxedo applications.

This solution helps in standardizing your entire application environment including Oracle Tuxedo applications based on the WebSphere infrastructure with proven high availability, scalability, work load balancing, security contexts, etc. With this you do not have to maintain or buy additional components for managing Oracle Tuxedo applications compared to your Java EE applications.

IBM Mixed Language Application Modernization Pattern

IBM Mixed Language Application Modernization Pattern helps clients to deploy in a cloud ready environment such as IBM PureApplication System or through IBM Workload Deployer. This solution leverages the capability of the IBM WebSphere eXtended Transaction Runtime technology as described above. In addition this solution provides a cloud-ready solution to run your existing Oracle Tuxedo application on to a IBM Cloud platform. IBM Mixed Language Application Modernization Pattern is a virtual application pattern that allows you to run COBOL, C and C++ applications on a modern cloud ready environment.

Migration Assessment

The migration assessment starts with a discovery process. IBM has developed a migration questionnaire that we send to our clients in advance of a discovery call. The questionnaire enables us to get a basic understanding of the existing application environment so that we can ask more appropriate questions, dig deeper in to their application environment and estimate more accurately the potential problems and issues facing the migration on to a IBM technology.

One of the must to understand in terms of Oracle Tuxedo migration is the services used within their existing Oracle Tuxedo applications such as the ATMI API. This can be done either by scanning the source of the application code and looking for ATMI API or to make it even easier we provide a analyzer tool that generates a summary report on the usage of Tuxedo services within the application and if they would be supported with IBM solutions.

We then usually proceed for a proof of concept to migrate a subset of TUXEDO application to the target IBM solution. It helps to validate the target solution that is being offered and can offer further guidance on how the rest of the application migrations could be migrated.

Our initial focus is to retain the existing application in an as-is form as much as possible. However as we work through the migrations we further add value and benefits in terms of providing a better unified management environment for the applications, better tools, other non functional aspects such as scalability, high availability and a future-proof compatible applications that can be run on CICS Transaction Server for z/OS.

How does IBM Migration Assistant Tooling for Oracle Tuxedo (IMAT) can help?

IMAT tool provides you the necessary tools that lets you to migrate your existing Oracle Tuxedo based application on a IBM Solution 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 logic. Also you might think that being new to a IBM 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 Oracle Tuxedo environment! Isn’t this a great boon for such migration? Less learning and quick deployments of your existing applications! This is why we call IMAT an 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?

Not really. We have had proof of concepts where we have done the migration of applications without modifying a single line of code in the existing applications… Even the Makefile or the build scripts used to build the application remain unchanged except for the libraries that needs to be link-edited to the one provided by IMAT tool.

Bullet proof investment for the future

One unique advantage moving to an IBM solution is that your applications become compatible with the best quality of service platforms such as CICS Transaction Server for z/OS if you wish to scale over the roof… With the z Enterprise one can consolidate all the heterogeneous hardware in to one single box with the reliability that you can only get from IBM mainframe.

More Information

 

April 11, 2013

WebSphere Message Broker vs. Oracle Service Bus: comparison of adapters and protocols support

by Roman Kharkovski

Enterprise Service Bus (ESB) is by definition required to provide universal connectivity to many different systems that the enterprise needs to connect together. Therefore many ESB vendors provide extensive library of connectors for their products. In this article I will compare adapters and protocols supported by latest versions (as of this writing) of ESB products sold by IBM and Oracle:

  • IBM WebSphere Message Broker v8.0.0.2
    and
  • Oracle Service Bus 11g (11.1.1.7)

Such comparison needs to be done at the technical level (i.e. what? and how?) and also at the financial level (how much?). I researched public information for both vendors using their websites, documentation and google (duh) and came up with a list of adapters and protocols as well as the cost of those connectors. Before I show you the actual comparison, let me make general observations and conclusions from my comparison:

  • IBM provides more diverse set of adapters and protocols compared to Oracle offering.
  • IBM tends to include adapters for free, while Oracle charges for adapters based on per core basis.
  • Both IBM and Oracle provide additional for a fee industry specific protocols to extend their ESB offerings.
  • Both IBM and Oracle provide toolkit so that users can build custom adapters.
  • The list below only represents adapters and connectors officially supported by IBM or Oracle respectively, but you can find additional implementations on the internet (supported by community).
  • In this article I do not have time nor space to evaluate the quality of each adapter and connector, but I think the quality trumps quantity. For some adapters that I have evaluated in the lab environment I found quality of IBM adapters to be significantly higher than Oracle’s (for example File adapter, Database Adapter, FTP, WebSphere MQ – more on this later in the article).

Once again, I think quality is a major consideration and I can’t say that enough. Before you make a decision one way or the other, I highly recommend that you actually test the product in the lab environment and validate ease of use, security, performance and other characteristics. For example, I have seen dramatic performance differences between WMB and OSB in the order of magnitude with file and database adapters (WMB being faster, of course). I believe part of the WMB performance advantage comes from the fact that unlike OSB, it does not force payloads to be converted into XML on the input and then back from XML to whatever format on the output from the message flow (proxy in OSB terms). Buyer beware!

table1

table2

Notes:
* – included free of charge with WMB Advanced v8
** – these are JCA adapters and can be used in WAS

In addition to the adapters and protocols mentioned above, there are additional industry specific pre-built flows, message formats and specialized adapters that are provided with WMB and OSB (not all of them are included above). These pre-built components are designed to simplify development and thus shorten implementation time:

table3

Ease of use and small footprint are important considerations. Especially if you are building integration layer as part of your private or public cloud environment or doing multi tenancy and need to be able to add and remove instances of ESB quickly. I have measured the speed of installation for WMQ and WMB and as you can see from this video even  using interactive method on my laptop I was able to fully install WMQ in 43 seconds and WMB in 1min 44 seconds. Using silent script to install these products and removing local install of MQ Explorer will reduce this time down to under 2 minutes total. Startup times for WMQ and WMB on my laptop are under 10 seconds. How long do you think it takes to install Oracle Service Bus and all of its prerequisites? (hint – hours). How long does it take to start and stop? (hint – minutes). Oracle license agreement does not allow me to publish these numbers in the public domain without Oracle’s written permission, but you can try installing OSB yourself and will probably see orders of magnitude difference:

video

I mentioned above that the quality of adapters and provided features provided by IBM and Oracle is not the same. Lets consider WebSphere MQ adapter as an example. As you can see from the table below IBM WMB provides much stronger integration with WMQ (as expected) by providing support for latest versions of WMQ, better performance, management and lower cost as WMQ is included with WMB at no extra charge (so long as messages are consumed or produced via Broker):

integration-w-WMQ

Lets take a look at other adapters and consider transaction control capabilities of those adapters. While both WMB and OSB allow one to connect to remote systems, there is a difference between the two products in their ability to coordinate distributed transactions. This is a very common pattern for ESB – get message from the queue, update certain database, perhaps update another database and send message via another queue, perhaps even update CICS or IMS too. Ability to coordinate distributed 2 phase commit (2PC or XA) transactions is key for ESB product. WebSphere Message Broker shines in this area as you can see from the table  below:

transactions

Performance is another critical consideration for an ESB. IBM performance team publishes detailed performance reports for WebSphere MQ and WebSphere Message Broker (all found on Support Packs page).

Here is an example of such report for WMB v8 on Linux x86. I have not seen any public performance data for Oracle Service Bus, nor tuning recommendations for specific platforms and protocols. The following table shows the message rates that were obtained for the different use cases when running on a IBM xSeries x3690 X5 with 2 x Deca-Core Intel Xeon E7-2860 2.27GHz processors:

performance

I would love to share with you performance of Oracle Service Bus for the above workloads, but Oracle license agreement requires me to get their written permission to publish OSB results and given the performance difference between WMB and OSB, I do not think I will get such permission any time soon :-) .

See related articles:

March 25, 2013

How does IBM connectivity and integration portfolio compare to Oracle?

by Roman Kharkovski

Back in 2007 Kevin Kelly in his TED talk has made predictions about the future of the Internet. It turns out he was right. Applications talking directly to each other are a norm today. Of course, those of us who were in what was called at the time EAI (Enterprise Application Integration) knew that already, but the general public did not appreciate the value of universal connectivity. Until now. These days everyone talks about APIs, standard formats for data, etc. However the truth is, while social networks and public web is built on standards, the vast majority of enterprise data is still locked in proprietary systems, accessed by proprietary APIs, or worse, via file exchanges or direct access to the database (yeah, its you, pre-internet Oracle eBusiness Suite).

The ability of enterprises to create new applications is limited by the ways those applications can reuse existing business logic and data. This explains huge interest in messaging and connectivity products. Some call them ESBs, others call them SOA products, but no matter what you call it, this kind of specialized middleware must provide a set of capabilities that make it easier to connect to many different types of old and new applications, data formats, protocols and be able to perform transformation of the above mentioned things. Synchronous, asynchronous, transactional, reliable and high performance capabilities are a big plus (as they say in job postings).

Where there is demand, there is usually supply. In case of IBM and Oracle, both vendors provide a set of offerings that claim to solve the problem of connectivity. Both vendors claim that they have the “most complete integration solution on the planet”. I decided to take a look and compare. In this first article of the series I will simply look at the products at a high level and in subsequent articles will look into specifics and more in-depth technical and financial TCO comparisons between products. Here is how offerings from these two vendors stack up to each other. Please note that color coding on this comparison is meant to reflect the strength of the product based on (a) Technical capabilities (performance, feature richness, security, scalability, etc.) and (b) Market position (number of users, market share, history, release schedules, analysts’ feedback, etc.)

product_map_1

* – IBM MobileFirst MessageSight messaging appliance is scheduled for general availability in second quarter of this year.

From the table above you can see that Oracle does provide several important connectivity products, but is missing a number of important components from the platform and is far from being “complete”. In future posts I will compare individual products at a much deeper level, but in the meantime, you can learn more about IBM and Oracle offerings here:

March 15, 2013

Smarter Pittsburgh

by Roman Kharkovski


For the past 14 years I live in Pittsburgh, Pennsylvania and love my city. I can go on for hours describing beautiful landscape, the outdoor fun, great and educated people, rivers, parks, architecture, very low crime rate, museums and last, not least, the relatively low cost of living (yes, I like weather too :-) ). Before I moved from Russia to US back in 1999 during the dot com bubble, I had plenty of job offers from all over US. I did my home work, researched future places to live and compared them based on multiple criteria, including things listed above. Out of several different job offers I took one in Pittsburgh because (1) the city came out on the top of my list and because (2) the best job and (3) best offer came from (4) the best company that happen to be in Pittsburgh (Transarc at the time, later acquired by IBM). Those four things were pure luck and I still feel lucky until this day. It was the right choice.

Having said all this, Pittsburgh does have its fare share of problems, one of them being traffic (and who does not have this problem, hah?).

IBM to the rescue (read announcement).

Pittsburgh was one of only 100 cities chosen from a pool of more than 400 applicants over the past three years to receive an IBM Smarter Cities Challenge grant, which funded the work last year of top IBM experts who studied local transportation opportunities. The full IBM report was released yesterday and can be viewed here.

What does this all have to do with this blog, which name is “Why WebSphere”?

Nobody needs software for the sake of software (well, most people don’t). Having bits is one thing, but having the expertise to apply those bits to solve practical problems is a completely different skill set and a unique differentiation for IBM. Not to mention the goodwill of the IBM company to do the kind of consulting work for free via the grant system. This is one of those things that make me proud to be an IBMer.

title page

March 11, 2013

TCO for WebSphere Application Server vs. VMware tc Server

by Roman Kharkovski

If I had to compile a list of most frequently asked questions that I get, one of the top 10 is a question on the differences between WebSphere Application Server (WAS) and Apache Tomcat and their relative values as a function of cost. I assume that most of you are aware of the fact that WAS is a commercial product sold and supported by IBM and Tomcat is free Open Source product from Apache. At some point in the past Tomcat was the reference implementation for JSP and Servlet APIs and developed by a community of vendors and independent committers, including IBM, Oracle, Sun, BEA, Red Hat, JBoss, VMware, SpringSource (now part of VMware) and many others. It was (and still is) a great community effort. Most of the vendors listed above still contribute code and bug fixes to Apache Tomcat.

However software companies listed on public stock exchanges do not exist to contribute code to Apache and not expect anything out of that effort. Quite the contrary, the “big” Open Source of our day is very much commercially driven process (with few exceptions). Today several commercial software companies package Tomcat as part of their offerings, in some cases enhancing the product (as is the case with VMware tc Server), or simply selling Tomcat support directly to users (such as the case with OpenLogic and many others). As you might expect the cost of support for the free Apache product is not very expensive.

Apache Tomcat (and one of its commercial versions being tc Server) provide JSP and Servlet support and none other parts of the Java EE 6. How can you compare Tomcat to WebSphere, which is a full Java EE 6 implementation and some? The answer found by Prolifics is that you look at the Total Cost of Ownership for a certain configuration. There is no one answer fits all as Tomcat might be appropriate for some projects, but not others. One really needs to consider the project scope and requirements to compare the fitness of Tomcat or WebSphere for what one is trying to achieve.

Having done hands-on research in their lab, Prolifics published their findings in their new white paper “IBM WebSphere Application Server v8.5 vs. VMware vFabric tc Server v2.8 Technical and TCO Analysis”. Prolifics priced several different configurations and included two of them in the paper. Here is the five year TCO for WAS vs. tc Server for medium size configuration, NOT including the cost of JDK support (the one with JDK support adds another 30% to tc Server cost):

WAS vs tc Server TCO

Click on the image above to download the full report.

To quote the paper: “After testing out tc Server, we observed that for the most part it performs as advertised – as a lightweight environment for simple applications that can be easily managed and monitored with the included tools. It is not suitable for large or Enterprise applications that require High Availability or robust failover. The comparable product in the WebSphere family is WebSphere Liberty Profile 8.5, the lightweight offering that is fully compatible with the rest of the WebSphere family, and thus provides a growth path that does not require any recoding. Our performance tests indicate that IBM WebSphere Application Server outperforms tc Server on common benchmarks, has better documentation, and is fully supported by a single vendor: IBM.”

February 28, 2013

Beta version of WAS Liberty Profile supports EJB Lite, JMS, CDI and much more

by Roman Kharkovski

A couple of weeks ago IBM released a beta of IBM WebSphere Application Server Liberty profile. This is exciting news and brings a robust set of new features. Highlights of this beta update include:

  • Complete support for the Java EE Web Profile, including CDI and EJB Lite, JSP, Servlet, etc.
  • Support for JMS, MDB, JAX-WS web services and MongoDB
  • New Liberty server based administration infrastructure (including multi-server environments)
  • Admin UI and new capabilities for monitoring and log viewing
  • Improved performance
  • Security enhancements, such as encryption of passwords in server configuration, etc.
  • Support for custom user registries
  • Ability for third parties to add Liberty features through a new System Programming Interface
  • New High Performance Extensible Logging (HPEL) for Liberty servers
  • Developer tools: updated Liberty support, including Web Services, updated Maven integration, and new Health Center integration

A full list of changes can be found on the New and Noteworthy page of the wasdev.net site.

What I like about Liberty is that the server is so dynamic and lightweight, yet it has significant additional features that you wont find in other lightweight servers (Tomcat or VMware tc Server). Things like JMS, EJB Lite, MDB, JPA, web services, etc. And not only that, but also the ability to do profiling of the server, etc. See examples of such advanced tooling at the link above.

The other nice thing is that Liberty now has clustering and ability to manage multiple servers. All of this without the heavy add-ons, such as full RDBMS and Hyperic required by JBoss JON or tc Server. It is interesting that tc Server download size is 19 MB, yet the admin “console”, which is vFabric Hyperic is 418 MB download and is such a drag to install. Ever worse, in full production you would need to buy licenses of Oracle DB or Postgres to keep all of your admin data. None of those extra megabytes nor costs with Liberty!

I will post detailed comparison of capabilities of Liberty and JBoss and tc Server in near future.

February 6, 2013

SPECjEnterprise2010 benchmark – IBM beats Oracle on performance and cost

by Roman Kharkovski

It has been quite some time since I wrote about the SPECj battles between IBM and Oracle. Today I would like to discuss the rare case of an “apples to apples” comparison between IBM and Oracle on almost identical hardware. It is not often that we get to see results published by different vendors on the identical processor types on servers with very similar configurations. Such rare comparison point became possible thanks to IBM publishing a result in late 2012.

Read full article here: SPECjEnterprise2010 benchmark – IBM beats Oracle on performance and cost.

January 28, 2013

Why NOT WebSphere?

by Roman Kharkovski

If you’ve read the title of this post and thought I left IBM you are wrong. I am still with IBM and I still do think that WebSphere is the best enterprise software on the market. In this post I would like to describe my recent experience building cloud based application and voice an idea how IBM (or any other vendor for that matter) could deepen its market penetration by providing free licenses and perhaps even free PaaS for certain classes of customers and applications.

Before I describe my idea, let me share some background with you and explain how I came to this conclusion, which I am sure is not new and many of you reading this probably have thought about this yourself. You see, I recently had to build a cloud based application for use by triathletes in USA. This was a hobby non-profit project for me. I have built an “ESB” to integrate two websites to allow for automatic synchronization of data between those websites. I have also made this project open source and you can find it on GitHub. If you are interested in more details about the project, here is an article: “Tri-Replicator – free app on google app engine”.

free
Before I started design and coding, I looked around for any PaaS where I could host this application for free. What I needed was Java runtime, access to the database, access to the REST APIs, SOAP-HTTP, encryption, SSL, scheduling and few other things. As you can imagine, classic JEE server or ESB would have fit this profile nicely. I was looking around trying to find free hosting for WebSphere runtime environment, or free hosted WebSphere Message Broker environment. Since my project was non-commercial, I did not want to pay any money for monthly hosting fees or licenses (despite my 25% IBM employee discount). Plus this project needs to be up and running every winter – from December until early March (read article above if you want to know why). Hence 90 day limited trial on the IBM Smart Cloud would not fit my bill as it wont work next year (unless I create fake user ID and apply for another 90 day trial). Amazon EC2 does not give anything for free – I would have to pay for machine time. Other hosting providers do not provide free IaaS or PaaS for Java.

Why did I NOT use WebSphere for my project?

After searching inside and outside of IBM, I could not find any way for me to implement my app on WebSphere App Server or Message Broker and have it hosted somewhere for free. That is when I thought about the Google App Engine. You can roughly call GAE an PaaS, plus they give you up to 5 million requests per month for free with no time limits. GAE gave me everything I needed for free: Eclipse plugin, Java runtime, JPA (DataNucleus based), JCE, Servlet API, GWT, and ability to add any custom libraries to my web app (for which I added HTMLUnit, Jersey and a couple of others).

After having completed development and deployment of this little application, I can say that GAE is not as bad as I expected it to be initially. However I estimate that I had to spend about twice as much time messing with all the different Open Source libraries when building this app, compared to what I could have done with WebSphere. Did I finally manage to complete the development and make it work? Yes. Could I cut my development time in half if I used WebSphere? Yes. Does Google App Engine provide a reliable hosting platform? No – it does have downtime and glitches every once in awhile. I would not use it for production apps. But for my purposes it works fine. Bottom line – I have saved on the hosting costs (does not get better than $0), but I have spent quite a few extra hours coding around bugs and issues in DataNucleus JPA, Google Web Toolkit, etc. I would not run my business on this stuff. Neither do some of my friends who are working for startups and tried to make use of GAE. But that is not the point of my discussion.

Lesson learned

The lesson that I learned and I want IBM to learn from this, is that because there is such thing as free limited use PaaS (provided by Google or somebody else) there is a great deal of “seeding the market” going on. Why is this important? Well, think of all the thousands of non-commercial projects or products being built every day. Think about thousands of small startups building their first apps. Think about small shops who do not have the budget to pay for carrier-grade WebSphere middleware. Think about all those students and consultants who are kicking technology tires. Once they use certain platform for their first applications, guess what would they use when they “grow up” and start working for enterprise companies? Or those small shops and startups start making real revenues and become ready to pay real money for software? Well, chances are they will use what they know. But if IBM does not make WebSphere (or other IBM software) available as a free PaaS to those small shops, they wont organically grow into IBM customers when they are no longer small.

Same goes for plain old on-premises software. Why not allow free use of any and all IBM software for on-premise use for transaction volumes under a certain limit? Or for companies whose revenue is smaller than say $10 Million USD (or pick whatever number you like). Those companies today are starting their software projects with Open Source or other freeware. And the main reason is the “cheap” or “free” cost of software. There will be no IBM revenue loss if we (IBM) provided those licenses for free to those small companies. On the up side they will be well positioned to become real paying customers if and when they are successful.

I hope IBM executives read this post and consider this idea to expand the market share of IBM software, to increase the number of people with IBM software skills on the market and to make it easier for those folks to build and run their apps, so they wont have to spend twice as much time with Open Source, like I did for my project.

In USA, once you have a new baby, hospital gives you plenty of free stuff in a “goodies bag”. Moms come home from hospital and start using that free stuff. After few days they need to go to the store to buy more. Guess what do they buy? (For those of you interested, my wife and I did not use the same brand of stuff for any of our three kids, but I think this is an exception, not a rule).

Follow

Get every new post delivered to your Inbox.

Join 407 other followers

%d bloggers like this: