Merging Linux and Java on the Server Side - page 3
Merging Java and Linux on the Server Side
Is iServer 1.6 a Web server or an application server? At the moment, it's a Web server with some application-server capabilities, but if Servertec follows through with its ambitious object-oriented development plans, in the future iServer will be added to our application-server listings as well.
iServer, written entirely in Java, has the dual purpose of serving both Web pages and Java servlets. On the Web-server side, iServer is a simple multithreaded Web engine with some rather nifty features, such as implementing session-manager threads for a multiserver environment and maintaining session states. The server supports HTTP 1.1 and doesn't eat up a lot of resources: a basic iServer installation takes up 85K and the full package occupies around 125K. However, the Web server could be described charitably as bare-boned: there's no explicit Perl support (though one could implement Perl through CGI), for example.
Since it can manage Java servlets, the Servertec folks are making some grandiose claims for iServer, saying that it supports the more advanced protocols like IIOP and CORBA as well as more pedestrian protocols like ODBC, JDBC, SSI and CGI. But iServer doesn't appear to support IIOP and CORBA right out of the box--instead, you'll need to create or purchase servlets (iServer does include servlets to enable JDBC and ODBC support.) iScript is a rather unique marriage of BASIC and Java, allowing you to create BASIC-like scripts for a Java environment. The trend in the Web-server world seems to be giving away a Web server and then tying users into a non-standard programming language. While there is some definite appeal to iScript, there aren't many compelling reasons to use it instead of Perl or Tcl.
iServer administration is done through Web-based administration. Every aspect of iServer can be administered in this fashion, while detailed log files help track usage levels and site problems.
As an application server, iServer has some attractive features, including load balancing (which allows incoming requests to a cluster to be managed in the most efficient manner, which might include redirection to a less busy server), fault tolerance and database-connection pooling. These features, which are usually found in enterprise-level application servers but not usually in Web servers, allow for a scalable Web-server installation--something that's still quite rare in the Linux world.
However, there are some failings in iServer that will cause you to pause before implementing it on the enterprise level, scalability aside. Security is subpar when compared to other enterprise-level Web server or application servers. There's no provisioning for RADIUS authentication or any other third-party authentication. You must set up users, realms, access rights, resources, and access control lists by hand--you cannot import any user lists from the outside.
iServer is definitely a work in progress, and it will be interesting to watch this product as it expands into the application-server space. If you're willing to evolve your own system as iServer evolves, then it makes for an attractive tool. But if your needs are of a more immediate nature, you'll want to look at a more mature application server or Web server.