Reviews /
A Web application engine for the enterprise world
|
|
|||
|
|
Netscape Application Server 2.1 is a high-performance, high-availability Web app server
Electronic commerce is the Porsche of the networking world - flashy, exciting and expensive. Like building a top-end sports car, putting enterprise database applications on the World Wide Web requires a server that offers high performance, high availability and the flexibility to allow complex systems integration.
We found Netscape Communications Corp.'s Netscape Application Server 2.1 delivers an impressive list of capabilities for developing and operating electronic commerce applications. Compared with applications on standard Web servers using Common Gateway Interface (CGI) running on the same hardware, it offered much lower response latencies and higher throughput.
We also built an application that employed two Netscape Application Servers and found increased overall throughput. We attempted to induce failures by disconnecting the power or network for one of the two systems. This caused pending requests on the disconnected server to time out, but new requests continued to be processed by the remaining server.
Systems integration capabilities
Netscape Application Server requires you to use a separate Web server to host static pages and images, relay requests for dynamic content and return results to the browser. The Web server must support Netscape Server API or Internet Server API plug-in interfaces or run CGI executables.
When a request for dynamic content comes in, a plug-in on the standard Web server determines the best Netscape Application Server to relay the request to. Netscape Application Server takes the relayed request and calls your custom C++ or Java Web application logic module for processing. It then returns the results back through the standard Web server to the requesting browser.
Database integration is a key strength of Netscape Application Server. With a single uniform interface, you can access an impressive array of native drivers for Oracle Corp., Sybase, Inc., Informix Software, Inc. and Microsoft Corp. SQL Server databases. Also supported are Open Database Connectivity access and a variety of legacy interfaces, including most IBM mainframe sources. Database access with Netscape Application Server can run from simple single-row queries to complex hierarchical queries such as "products grouped by category and manufacturer.''
Netscape Application Server allows you to return data to the client in HTML from templates you design or via Extensible Markup Language (XML) for data exchange with other systems. With XML, you can provide a simple data interchange interface for other applications. For instance, you could allow resellers to integrate your inventory query interface with their online ordering system.
On the other hand, Netscape Application Server's rich and powerful server interfaces and template mechanisms are proprietary application server interfaces such as Enterprise JavaBeans and Java Serverlet are rapidly gaining momentum; Netscape has announced plans to support these and other emerging application server interfaces later this year.
|
Building applications
Along with database query and application deployment tools, Application Server includes tools for site development, but be warned: The application development process with Netscape Application Server does not approach the point-and-click integration of tools such as Microsoft FrontPage or NetObjects, Inc.'s NetObjects Fusion. On the other hand, low-end development environments don't have the ability to handle serious mission-critical issues as well as Application Server does.
The product includes Web application generator tools for creating simple data input, querying or reporting applications for the Web. These tools also can help you quickly build an application skeleton as a starting point for your custom development.
Application servers use a component approach to application construction, which allows developers to reuse pieces easily. The primary components of an application for Netscape Application Server are application logic modules written in C++ or Java, HTML templates for defining the Web application interface, and query files, which contain libraries of data access operations.
Application logic modules are executable components that process the input and return results to the client. Netscape Application Server provides graphical tools to help you create simple application logic skeletons for data input, querying or reporting. The application server includes a rich programming interface to allow you to implement even the most challenging of Web applications.
Netscape Application Server lets you keep session information for each user, such as shopping cart contents, preferences or buying interests, and share session information across multiple servers. This allows you to scale complex applications and deliver automatic failover by adding servers, while continuing to track user session information.
You can use HTML templates to merge the data from your database and application logic processing with an HTML design. The product includes a simple HTML designer to help you create templates quickly, or you can use any of the leading HTML design tools to craft your own look and feel. Special template tags in the HTML code reference the data you want to display and its formatting options. The template system can handle everything from simple form information to complex hierarchical query results. It's relatively easy to generate hierarchical reports such as "products by category and manufacturer'' with simple layered template references to the "category'' and "manufacturer'' groups in query data.
A query designer provides a point-and-click interface to create queries and data models directly from your database. The designer is an effective tool for most database access operations required by Web applications. It gives you a graphical view of query, insert, update and delete operations. The query designer outputs raw SQL, so you can quickly sketch your data access with the graphical designer and then customize the output SQL.
You can iron out bugs in application logic using most of the leading development tools for Java and C++, with the notable exception of Microsoft Visual J++ and the Microsoft Java Virtual Machine, thanks to Microsoft's rejection of standard Java technology for calling native code. Flexible logging services also allow you to record and recognize problems in running systems.
Administration/management tools
Netscape provides several development and system management tools to assist you through the Web application project life cycle. Most of the major tools provided are built in pure Java and run on any Java 1.1.5-compatible environment. An application generator lets you design simple Web forms and reports along with the queries necessary to get data for them. Hard-core developers can use a programming interface to the server for full access to the more complex application server capabilities. Project management and deployment tools help deal with automating the distribution of your application from development and test platforms to production systems.
Netscape Application Server includes an integrated remote administration and real-time graphical system monitoring tool. With it, you can manage access to applications, balance loads across multiple servers, and start and stop individual applications or an entire server. A scrolling window displays real-time critical server performance characteristics including CPU and disk load. Flexible server logging options include the ability to log information to a database. You can also be notified via e-mail when crashes and other major system events occur.
The Deployment Manager and Project Manager tools make deploying applications across multiple systems much easier. Developers use the Project Manager to specify a package of application code modules, templates and static content. You can easily deploy projects to any Netscape Application Server by opening a project and selecting the server to deploy it on. To minimize downtime, you can update applications on running servers without shutting down the server.
Installation and documentation
Installing Netscape Application Server is simple. The software installs a Web server plug-in used for feeding requests to Application Server. You select directories to copy the software to, enter an administrator password and restart the system.
Netscape Application Server comes with ample printed and online HTML documentation. Both provide well-written overviews of the system, demonstrate product features and detail reference information. Inexperienced Web application designers are guided through some simple interactive samples. Experienced Web professionals will find the reference information covers the necessary details effectively and simply.
RELATED LINKS
Scorecard and NetResults
How we rated the server in several categories, key findings and vendor contact info.
When do you need a Web application server instead of a Web server?
Network World, 4/13/98.
Machado is the president and chief technical officer of Mobility.Net, a provider of Web mail and electronic commerce solutions for network businesses. He can be reached at mike@ mobility.net or www.mobility.net.
