TomcatExpert

Apache Tomcat Support: Part Four- ApacheTomcat Self Support and Apache Tomcat Vendors Support

posted by avanabs on April 21, 2010 09:09 AM

We've been discussing the various support options, including community support, available for Apache Tomcat, and contrasting those to Commercial JEE Application Server Support options. In this final blog in the series, we're focusing on the remaining two Tomcat Options, Self Support and Vendor Support agreements.

Tomcat Self Support

The second option is supporting Tomcat within the IT organization. In this case, the IT organization must have significant Tomcat expertise on staff and they provide much/all of the support to the various users within the organization. Both the level of expertise required and the challenges of providing that for 24x7x365 mission critical applications are neither simple nor inexpensive.

Less understood is that server infrastructure software is inherently different from application software. It’s a specialty within the software industry; relatively few programmers have the skills and expertise to deal with the kinds of problems found within operating systems and application containers. Realistically, it takes a substantial scale of operations to make this option viable, but for very large organizations, the cost savings and ability to control the process may make self support worthwhile.

Pros of Self Support

  • Not dependent on third parties, resolution is under the organization’s control
  • Problems can be addressed very rapidly, without waiting for third parties or communities of volunteers to decide to act
  • As responsive as the organization is willing/able to staff for
  • Access to Tomcat developer community is improved by high levels of User expertise.

Cons of Self Support

  • Requires significant internal expertise
  • Requires different skill sets than normal application development/support
  • Variable and unpredictable internal costs
  • Significant danger of forking code, diverging from “standard” Tomcat

Tomcat Vendor Support

As noted above, for those customers desiring guaranteed support services, there are several vendors offering Tomcat maintenance contracts (support subscriptions). These vendors have specialists on staff with the skills and experience to deal with Tomcat internals, and the best of them are also active in the Apache Tomcat community. Some of these vendors also have recognized that Tomcat itself is not a complete enterprise ready solution and they offer both Tomcat enhancements and layered products to make Tomcat more complete and “enterprise ready”.

When assessing Tomcat support vendors there are a number of important considerations. These include:

  • Does the vendor deliver a more complete Tomcat product, including the necessary platform support, installers, management capabilities, etc?
  • What about QA…does the vendor have the capability to properly test both incremental releases and patches, or does that remain the customer’s responsibility (and cost)?
  • Does the vendor really have Tomcat expertise on staff? Anyone can claim Tomcat expertise, but vendors with a roomful of engineers and the latest how-to books from Barnes and Noble fall way short of those vendors with Apache Tomcat Committers on staff and ready to handle the tough problems.
  • Do the vendors fixes, patches, and enhancements flow seamlessly back into the Tomcat community? If not, then every patch creates the potential for a code branch, creating a nightmare of upgrade problems in the future.
  • Does the vendor provide expertise for optimizing and tuning Tomcat? As with all infrastructure products, and in particular open source community projects, Tomcat ships with a specific configuration. In Tomcat’s case, this is optimized for developer desktop use, and significant expertise is required to optimally tune Tomcat for demanding production environments.
  • What about new features? Can the vendor create important new capabilities and manage those thru the community process to become part of the standard distribution?

Since there is no license price for Apache Tomcat, maintenance agreements/subscriptions are generally based on a competitive market, not artificial list prices. Depending on the vendor and what’s included, these agreements typically cost between $ 500 and $ 1,000/year.

 Pros of Vendor Support

  • Leverage vendor’s staff expertise (sometimes including Committers…ASK)
  • Guaranteed service levels
  • Value added enhancements, particularly “enterprise enablement”
  • Platform specific integration and builds
  • Vendor maintains Tomcat compatibility across patches, enhancements, and Apache releases
  • Professionally tested releases (ask vendor about QA capability)

Cons of Vendor Support

  • Service contract (subscription) costs
  • Releases are on vendors schedule, not necessarily in lock step with Tomcat community, nor with individual customers timeline
  • Utilization of Tomcat enhancements that may not be incorporated back into the Tomcat distribution creates some vendor lock-in. Typically, these enhancements are outside of the scope of the Apache project, but well within the scope of “enterprise ready”.

Conclusion

For those IT organizations that are used to proprietary infrastructure software, Tomcat can be a breath of fresh air…think FREEDOM! Tomcat offers support choice, instead of vendor monopoly, which allows the IT organization to dramatically reduce support costs in a competitive market. Tomcat also allows the IT organization to decide what portion of the support risk (and cost) to take on and what portions to outsource.

Community support is typically the cheapest option, but is also the most risky due to its indeterminate volunteer structure/approach. Self support falls in between for costs, can be the best for responsiveness, but requires fairly large scale adoption to cover internal fixed costs and community participation. Support subscriptions from a reputable vendor that is well connected with the Apache Tomcat community provide the highest level of support, albeit at a fairly moderate cost (about 10-20% of the cost of typical JEE maintenance contracts).

All things considdered, contracting with a Tomcat Support vendor that's closely connected with the community usually offers the best balance of low cost and responsive service.

Andy has recently decided to make the jump from individual consulting to join the Spring Source team. He will continue to be working with major clients to assist them with IT architecture evolution, now as a member of a large and growing organization. His first project will be leveraging Tomcat, Spring, and a Tomcat based data grid/cache called GemFire. He’s looking forward to sharing the lessons learned with the tomcatexpert community. Andy has been architecting, designing, and building enterprise infrastructure and applications software for most of his career. He’s been responsible for BEA’s “Blended Source” initiative, combining the best of Open Source (including both Tomcat and Spring) with WebLogic, BEA’s WebLogic Enterprise Security product family, MEI Software’s financial systems, Netegrity’s SiteMinder security product, Camex’s electronic publishing systems, mainframe applications for Bell Telephone, and many others. During that time his hands on technology experience has ranged from octal coding into neon lighted switches all the way through JAVA and beyond, including many generations of “the best and final thing we will ever need”, and he looks forward to working on the even better things coming in the future. He was involved in the early days of Open Source software as a contributor to EMACS and refocused on Open Source during his tenure as Director of Product Management with BEA Systems, combined with a fascination for the rapidly evolving application deployment architectures and technologies driving today’s development. Andy has provided architecture and technology guidance for both vendors and IT organizations and he shares what he is learning through consulting services and through his web site, Enterprise Software Trends (www.estrends.com).

Comments

Post new comment

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.