Active Server Pages (ASP) on NetWare
Articles and Tips: article
V.P. of Engineering
Halcyon Software
01 May 1999
Instant ASP (I-ASP) allows corporations to serve their ASP applications on platforms and Web servers that are best suited for their corporate needs. This article discusses how ASP applications can use I-ASP as a gateway and gluing layer for virtually all major server side technologies.
- Introduction
- The Technology
- The Server Manager
- CreateObject = Create ANY Object
- Remote IDE and Debugger
Introduction
Over the last two years, ASP has enjoyed tremendous success to the extent that an introduction to ASP here is practically unnecessary. We have seen it breathe a new life into countless Web sites (and Web developers). We are familiar with its many virtues such as easy database connectivity, a vast library of objects, sophisticated scripting support, extensive support from 3rd party development tools, and so on (ad infinitum, if you used to be a CGI developer). However, despite all these savvy features, we are all painfully aware of its greatest limitation it runs on only one platform with only one Web server. And at a time when the majority of Internet and intranet servers are non-WinNT, a large number of Webmasters and developers are excluded from taking advantage of this very promising and useful technology.
As a member of this "excluded" corporate majority, we clearly understood the difficulties faced by other companies in this area. We were acutely aware that an open ASP solution is greatly missed by corporations that require rapid Web deployment without compromising their perfectly suited platforms. We understood that a cross-platform, cross-server solution would not only assist such businesses but would propel the ASP technology itself. Furthermore, access to other component architectures (Enterprise JavaBeans, CORBA, etc.) would increase its utility and help raise ASP development and deployment numbers, thus allowing the technology to evolve at a faster pace. These were our primary reasons for designing Instant ASP"a Run-Anywhere ASP server for the enterprise.
The Technology
Instant ASP (I-ASP) allows corporations to serve their ASP applications on platforms and Web servers that are best suited for their corporate needs. Furthermore, instead of being restricted to a single component architecture, ASP applications can use I-ASP as a gateway and gluing layer for virtually all major server side technologies.
I-ASP is built as a Java Servlet, runs on all Java-enabled platforms, and offers more than mere ASP compatibility. It offers full scalability and comes with VBScript and JScript interpreters, built-in objects, installable components, ADO, CDO, and more. In addition, it provides support for COM/DCOM, JavaBeans, Enterprise JavaBeans (EJB), CORBA and native components. Interaction to all component technologies is provided through a uniform and familiar interface. I-ASP will also support an implementation of JavaServer Page (JSP) specification, which is the upcoming Java-based Web application interface for server-side applications.
I-ASP servlet architecture works with virtually all the popular Web servers in the market. The server-to-servlet connectivity is available through either Halcyon's high-performance servlet interface or server's native servlet support. A partial list of supported servers includes Apache (UNIX, Mac OS, Windows), Java Web Server, Microsoft Internet Information Server (IIS), Netscape FastTrack and Enterprise, Novell NetWare, Sun Web Server, WebLogic's Tengah, Zeus, and many others.
On the NetWare platform, I-ASP can be easily configured with Novell's own ServletGateway product that adds Java servlet support to the existing Novonyx Web server. Once configured, all requests for ASP pages are sent to I-ASP for processing. A detailed description of different I-ASP components is provided below.
The Server Manager
The Server Manager runs on the Web server and manages all external and internal (inter-component) communications. It is responsible for startup and shutdown of I-ASP sessions, allocating resources as needed by the multiple clients, session logging, managing pooling and recycling for server resources such as threads, objects, buffers, and database connections.
A Server Console, implemented as a Java applet, is provided for remote server administration. This applet can be remotely executed using any Java-enabled Web browser. The applet allows Web masters to create new configurations for different I-ASP virtual instances, manipulate scalability options, manage log files and perform all other server management tasks.
CreateObject = Create ANY Object
As mentioned earlier, I-ASP allows ASP applications to take advantage of a wide variety of components and interfaces, from simple Java classes to Enterprise JavaBeans and remote COM objects. Creating and managing these differing components, and employing their varying APIs from a single ASP application can be a formidable task. With I-ASP, the CreateObject function allows access to all these disparate types of components and interfaces, and shields the ASP application from the intricacies of different component architectures. Thus, an ASP application can create any available component using the familiar CreateObject function, without knowing the component's underlying architecture. Once the object is created, it can be used and manipulated like any of the installable components.
Remote IDE and Debugger
A large number of companies use co-located or remote Web servers. In many cases, the Web servers do not have a GUI display device connected to them. Consequently, remote development capabilities have become essential for Web application development cycle. Halcyon offers a powerful Remote IDE and Debugger that allows remote debugging of I-ASP applications. Being a Java applet, this tool runs on any Java-enabled Web browser. Developers can access data from I-ASP applications, edit the I-ASP source code, then execute and debug the I-ASP program interactively.
Optimization Features
Performance is always a critical factor especially for server products. Keeping this in mind, Halcyon is integrating several innovative technologies in the I-ASP product. These include Request Preprocessing (output caching), performance diagnostics, loop optimizations, and high-performance customized adapters for popular database and application servers.
Another key optimization feature being integrated is pre-compilation. Using this feature, ASP applications can be compiled to Java bytecode prior to deployment. By eliminating source code parsing and interpretation, this feature allows fast application execution using a native Java virtual machine.
Finally, I-ASP will be taking full advantage of the Sun's HotSpot technology that features behavior-driven adaptive optimization. In addition to improving execution speed, HotSpot will also help reduce memory consumption.
The features discussed so far clearly demonstrate that I-ASP provides a unique blend of extensive compatibility, sophisticated features, flexibility and ease of use. Combined with the remote IDE/Debugger development and solid external component support, it delivers everything needed by corporations to serve multi-tier, distributed Web applications rapidly and efficiently, on the platforms of their choice. For more information and an in-depth description of the product, visit Halcyon's Web site at http://www.halcyonsoft.com.
About the Author
Naufal A. Khan is the V.P of Engineering at Halcyon Software. He is the chief architect of the company's product line and supervises the entire software development effort. Naufal can be reached at naufal@halcyonsoft.com.
* Originally published in Novell AppNotes
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.