8.5. HP Bluestone Total-e-Server and the J2EE Specification

HP Bluestone Total-e-Server provides a proven, flexible, secure, highly scalable, and fault-tolerant infrastructure for all types of e-services—including application development, deployment, integration, and management. Total-e-Server provides a certified J2EE 1.2 platform implementation. It includes all the required APIs, including the EJB 1.1 specification—plus Message Driven Beans from EJB 2.0. Robust implementations of JSP 1.1 and Servlet 2.2 are included, as well. It also provides implementations of JTA and JTS, guaranteeing that transactions adhere to two-phase commit.

Building on the J2EE platform design in this way, Total-e-Server allows developers to create new applications using a variety of loosely coupled, portable modular components. As a result, Altura's developers can extend and add new functionality to its new Java technology–based application framework—the Altura Merchant Operating System (AMOS)—quickly, easily, and at a lower cost than they could using their script-based proprietary solution.

Total-e-Server consists of several integrated components.

  • HP Bluestone Universal Business Server is the application server at the heart of HP Bluestone Total-e-Server. The Universal Business Server is the implementation and glue for the services that allow containers like J2EE to be implemented upon a common set of enterprise services. The Universal Business Server architecture is also responsible for providing the scalability, fault-tolerant, and overall enterprise-class features to all containers built on top of it.

  • HP Bluestone XML Server provides the ability to exchange XML documents dynamically—externally, with customers and suppliers, as well as internally, among different back-office data systems.

  • HP Bluestone Universal Listener Framework constantly monitors server ports to identify the presence and protocol of an incoming message. This allows the Universal Business Server to process a wide range of incoming data requests correctly. The Universal Listener Framework supports an extensive list of protocols—including HTTP, JMS, XML, FTP, SMTP, and WAP—and interacts with a wide variety of client devices. The Universal Listener Framework allows servlets and message-driven beans to process e-mail messages just as flexibly as HTTP requests and JMS messages.

  • HP Bluestone Application Manager is an advanced, agent-based management component that provides real-time performance and status information on the entire Web infrastructure. It monitors all user interactions and ensures the quality, performance, and integrity of all work performed over the Web.

  • HP Bluestone Security Console provides user, group, and role-based access control to every system level. A user can establish security levels for applications, pages within applications, user interaction points on pages, or each application-accessed data resource. With Total-e-Server, a business can take advantage of the latest encryption and security certification technologies on the market.

8.5.1. Total-e-Server's Universal Business Server and the J2EE Specification

Total-e-Server's Universal Business Server is based entirely on Sun Microsystems' J2EE specification. It is a J2EE certified application server that implements the complete set of J2EE API's. This includes Java ServerPages, Java Servlets, and Enterprise JavaBeans. For support of ACID transactions, Total-e-Server ships with a Java Transaction Service.

HP Bluestone's support for EJBs ensures that developers can focus on developing the business logic for an application. They don't have to worry about developing the infrastructure for enterprise-class distributed components. HP Bluestone Total-e-Server helps with the development, deployment, and interfacing of these EJB components. HP Bluestone's implementation of EJBs includes an out-of-the-box implementation of Container Managed Persistence that allows for related entities and cross-table joins. Total-e-Server also ships with a production-quality implementation of Message Driven Beans, as defined in the EJB 2.0 specification. This gives the developer the ability to add asynchronous beans to his or her architecture.

Total-e-Server also supports Sun Microsystems' Servlet 2.2 specification. Servlets provide developers with a simple API that extends the functionality of a Web server and allows developers to process requests. Servlets can make use of JavaBeans and Enterprise JavaBeans to build the logic to handle a request, and they enable developers to create Web-based applications quickly, with loosely coupled reusable components.

Total-e-Server also provides full support for the JSP 1.1 specification. With JSP technology, developers can easily and quickly create dynamic Web pages that leverage existing business systems. Using JSPs facilitates the separation of the Web-page design from the business logic itself, enabling designers to change page layout, without changing the underlying dynamic content. By separating the content generation from the user interfaces, JSPs greatly reduce Web-based application development and maintenance times.

In addition to EJBs, servlets, and JSPs, Total-e-Server also provides support for Tag Libraries (TagLibs) as described in the JSP 1.1 specification. Tag Libraries further simplify the application-development process by providing a pre-defined set of instructions to conduct an application routine (such as accessing a database). TagLibs are entered within JSPs as a single line of code (tag), which greatly reduces the amount of programming needed to create new applications. Programmers can easily select one or more of these tags from a library of previously defined TagLibs. TagLibs can also be reused on multiple applications quickly and easily.

HP Bluestone Total-e-Server includes a bundled TagLib package with predefined TagLibs, such as SQL, formatting, JMS, and EJB, and plans are in place to add many more predefined TagLibs in future editions. Developers using Total-e-Server can easily create their own TagLibs for commonly used routines, or they can draw from the wide selection of publicly available TagLibs.

8.5.2. Developing Applications for HP Bluestone Total-e-Server

HP Bluestone has reduced the learning curve for new Total-e-Server environment users by incorporating the latest open Java technology standards and by avoiding proprietary development tools. At Altura, many developers are using Metrowerks CodeWarrior for Java, but developers there are free to use whatever HTML/JSP or Java development tools they like. Total-e-Server allows developers to utilize any IDE, GUI creation tool, and UML tool. The platform does not tie developers to any single vendor's development software. This is true for the “comprehensive” tool suites, as well. With Total-e-Server, developers can pick and choose the IDE from one vendor and the GUI tool from another.

As part of Total-e-Server, HP Bluestone offers HP Bluestone J2EE Developer, which provides a point-and-click interface for developers deploying JavaBeans and EJBs. J2EE Developer includes a container-managed persistence tool that maps an entity EJB's fields to databases via XML and provides support for fine-grained objects. J2EE Developer also contains tools for generating home and remote interfaces, as well as deployment descriptors.

8.5.3. Deploying Total-e-Server

HP Bluestone Total-e-Server provides a wealth of application services—from dynamic load balancing to application isolation and comprehensive state management—and these are key to meeting Altura's needs. They provide rapid responses to user interactions while guaranteeing interaction integrity, regardless of whether those interactions involve simple database queries or complex electronic commerce transactions. HP Bluestone Total-e-Server places no restrictions on the number of CPUs or the mixture of platform configurations in a given deployment environment. It can run on a single CPU or across a network of computers (see Figure 8.3). This flexibility effectively ensures unlimited linear scalability for enterprise-wide production applications.

Figure 8.3. Deploying HP Bluestone Total-e-Server on Multiple Machines


And because Total-e-Server is written entirely in the Java programming language, it runs on any platform that supports a Java virtual machine (JVM), including Microsoft, Sun, IBM, HP, and others. A production environment can contain from zero to n instances of the application server. Each application-server instance can support any number of applications, in any combination. An application can also deploy on many applications-server instances. The flexibility to place these applications and application servers at different points in the deployment architecture in a controlled manner optimizes bandwidth, performance, and CPU resources.

Deploying applications to a production site is simplified with HP Bluestone Application Manager, which provides tools to pack and deploy applications. An application is packaged with all its components, Web pages, images, servlets, JSPs, TagLibs, EJBs, and any dependent classes. Then, using HP Bluestone Application Manager deployment capabilities, it is a drag-and-drop maneuver to deliver those packages to 1 or 100 machines. The package and deployment capabilities of HP Bluestone Application Manager enable developers to build and deploy newer versions of applications to a host machine quickly. HP Bluestone Application Manager also makes it easy to manage and configure those applications, providing access to all the applications, even in a distributed system, through a single console window.

HP Bluestone Application Manager also provides Altura International with HP Bluestone Hot Versioning deployment system (see Figure 8.4), which guarantees true 24x7x365, nonstop operations. With Hot Versioning, a Web application stays online and user sessions remain uninterrupted even while an organization's IT personnel upgrade or perform maintenance on the application. The Hot Versioning deployment system delivers the ability to change the version of a running application dynamically—and the version change can be forward or backward. HP Bluestone Total-e-Server even allows application-version selection to occur on a group basis or at the individual instance selection.

Figure 8.4. HP Bluestone Application Manager (BAM) Provides Powerful Capabilities for Rapid Deployment and Hot Versioning.


8.5.4. HP Bluestone EJB Server

Built on the latest EJB 1.1 specification, Total-e-Server's EJB server provides enterprise services for EJBs such as container and bean-managed persistence, threading, transactions, security, database connectivity and more. The high performance of the EJB server is achieved through optimizations such as object pooling, database-connection pooling, lifecycle management, and optimizations in the process invocation of beans. Total-e-Server ensures the scalability of the EJB server through the use of load-balancing features. In addition, in order to protect business technology investments, HP Bluestone EJB server is implemented in plug-and-play components. The security, Java Naming and Directory Interface (JNDI), and Java Transaction Server (JTS) components are all replaceable. This interface-based approach enables users to build their own implementations, plug in third-party implementations, or leverage their current infrastructure for those services.

The EJB implementation within Total-e-Server also includes an implementation of Message Driven Beans. Message Driven Beans are an EJB type specified in version 2.0 of the EJB specification. They are asynchronous beans that provide a standard mechanism for writing and deploying components to process messages. These messages could be delivered through JMS or any other messaging implementation. HP Bluestone has delivered an implementation of EJB 2.0 that has been tested with many industry-respected JMS implementations. The combination of Total-e-Server with Message Driven Beans and the Universal Listener Framework allows e-mail messages, FTP messages (and any other Universal Listener Framework listener type) to be processed via Message Driven Beans.

When operating within the application server, JSP and servlet engines can also be run in the same application server instance as the EJB Server. This in-process deployment technique, which is unique to HP Bluestone, eliminates the remote network calls that degrade Web and EJB application performance. Moreover, the process ensures that JSPs and servlets enjoy the fault tolerance, scalability, security, and performance provided by the Universal Business Server.

8.5.5. Monitoring J2EE Applications

HP Bluestone Application Manager provides more than packaging and deploying of applications, it also monitors application servers, gathers statistics, triggers alerts, generates reports, and much more. Together, HP Bluestone Application Manager and Total-e-Server monitor and provide statistics on more than 25 activities, and more activities can be monitored, depending on customers' needs. Should one of Altura's application servers fail, or should response time fall below a defined threshold, HP Bluestone Application Manager can generate an alert and force an e-mail or page to be sent to the administrator. HP Bluestone Application Manager was a huge win for Altura International, which no longer needs to rely on hand-developed screens or scripts for managing its applications. With HP Bluestone Application Manager, Altura no longer wonders whether servers are running or requests are being handled within proper request time limits.

HP Bluestone Application Manager allows statistics and alerts to be switched on and off from a management console. With the flip of a switch, for instance, administrators can monitor an application server's memory use. They can view reports on the information gathered from the servers within a domain, too. HP Bluestone Application Manager uses an agent-based technology to reduce the overhead associated with monitoring server activities.

8.5.6. Load Balancing

HP Bluestone Total-e-Server provides Altura with dynamic load-balancing support through HP Bluestone Load Balance Broker and through assistance from HP Bluestone Application Manager.

The Load Balance Broker runs as a Web-server plug-in, and Total-e-Server provides versions compatible with Netscape, Microsoft, and Apache Web servers. A generic Load Balance Broker that will run on any Web server is included, as is a servlet version of the Load Balance Broker for Web servers supporting Java technology. It automatically determines when to start additional instances of application servers and where to route incoming requests. The Load Balance Broker keeps track of the load (how many active users/requests) and status (running, not running, not responding) on each application server. It starts application- server instances as appropriate for load conditions and performs auto-application restart if a failure is detected. By continuously monitoring and managing tasks assigned to all applications, Universal Business Server meets peak loads, without affecting the performance of the entire system.

8.5.7. Fault Tolerance

Because application crashes were a serious problem in Altura International's early Web-application architecture, it was critically important that its new application architecture be impervious to failure. HP Bluestone Total-e-Server delivers precisely the fault tolerance Altura needs. With no single point of failure and support for robust persistent state management, Total-e-Server is designed to support customers who need to be running on a 24x7 basis. Total-e-Server even provides fault tolerance for JSP and servlet requests, as well as EJB requests.

With Total-e-Server, individual application servers—even whole machines—can go down without customers noticing. Applications can be configured to use the Universal Business Server's Persistent State Server, a server configured so that all state information is written to a JDBC database. If the CPU hosting the application server goes offline, no state information is lost. If a visitor to an Altura site, for example, begins the checkout process and then the CPU hosting the application fails, a new CPU comes online, the application server is automatically reinitiated, and all user state information is regenerated from the JDBC database. The shopper never sees a problem.

HP Bluestone Load-Balance Broker also helps ensure this customer-facing fault tolerance by constantly directing and redirecting requests to running application servers. The load-balance broker also can request that new instances of the application server be created. Thus, even with a small number of machines, a production site can offer fault tolerance and scalability. A site that needs to grow has to do very little to increase the number of machines available to the load-balance broker.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset