Sybase Enterprise Application Server -- An industrial-strength application server
June 25, 2002
Longtime Sybase customers will feel right at home with Sybase Enterprise Application Server 2.0. Many of the components found in Sybase Enterprise Application Server 2.0 are actually recycled from other Sybase products. Most notably, the core of Sybase Enterprise Application Server 2.0 is the previously available Jaguar Component Transaction Server (CTS), which has a good reputation amongst Sybase shops but has failed to make an impact across the larger Internet world.
If you're not in charge of a Sybase shop, however, you'll still want to look at Sybase Enterprise Application Server 2.0 because of its catholic approach to supporting multiple component models. One of the drawbacks in the current application-server world is the split between the Enterprise JavaBean (EJB) component model and the Microsoft COM/ActiveX component model. Most application servers make you choose between one component or the other -- a strategy that any corporate manager would fine far too confining.
Since Sybase Enterprise Application Server 2.0 is built on an open component model, it will support almost any language or protocol on the market: the aforementioned Enterprise JavaBeans and its associated CORBA, COM/ActiveX, C and C++, and pure Java. In fact, the Jaguar Component Transaction Server has been altered to the point where CORBA IIOP is now the primary Jaguar protocol.
This open model may be surprising to someone used to a more confining object model. Since Sybase Enterprise Application Server 2.0 doesn't play any favorites when it comes to deployment, you could in theory use COM stubs in conjunction with Java components (a framework that would surely send both Sun and Microsoft into paroxysms of terror) so that Java components can be accessed by non-Java applications. And since there are no favorites, you could conceivably introduce new object components in the future without impacting the current Sybase Enterprise Application Server architecture.
According to Sybase offices, in the near future there will be closer integration with the PowerBuilder language within Sybase Enterprise Application Server. Currently there is support for non-visual PowerBuilder objects in Sybase Enterprise Application Server 2.0, with native support for all PowerBuilder objects in the future. Sybase Enterprise Application Server is also part of the Sybase Enterprise Application Studio, which consists of Sybase's PowerJ (a Java development tool) in conjunction with Sybase Enterprise Application Server and PowerBuilder. (Version 3.0 of Sybase Enterprise Application Server is also currently in beta testing.)
The support for Sybase products extends to the database field, where there's native support for Sybase's Adaptive Server Enterprise, but no other native database support (access to other databases must be done via JDBC or ODBC). The Web-server component of Sybase Enterprise Application Server 2.0, PowerDynamo (another preexisting Sybase product brought into the application-server mix) requires some sort of database server to work properly; in our case, we used SQL Anywhere, but also supported is the entire Sybase database line or Adaptive Server Enterprise. In addition, Sybase Enterprise Application Server 2.0 works with almost every Web server, including Apache and the Netscape series of servers, via support for ISAPI, NSAPI and CGI.
We experienced few problems in installation and configuration -- so few that we didn't even need an obligatory call to a support number. Once installed, Sybase Enterprise Application Server 2.0 features an easy-to-use browser- and Java-based administration tool that centralizes system management. In addition, the administration tool features run-time statistics and multiple logfiles.
Sybase Enterprise Application Server 2.0 also excels at the day-to-day tools that are expected of any high-end application server. Database connection pooling eliminates the need to create and destroy new database connections. New connections can be created if the cache is full, but you can control the minimum/maximum number of connections and set connection timeouts to eliminate unused database connections. However, there's no native load balancing or failover in Sybase Enterprise Application Server 2.0 (something found in both Netscape Application Server and SilverStream); Sybase recommends the use of Cisco LocalDirector or HydraWeb HydraSeries for these tasks.
Because of the lack of native load balancing and failover -- something we view as essential in any enterprise-level application server -- it's hard for us to give an unqualified thumbs-up to Sybase Enterprise Application Server 2.0. Still, with support for every component model under the sun and promised integration with PowerBuilder, Sybase Enterprise Application Server 2.0 is an attractive proposition for shops already committed to Sybase -- or for those shops without a specific commitment to any specific component model.
Pros: 7 Support for every component model under the sun, 7 Close integration with PowerBuilder, 7 Browser-based management
Cons: 7 No native load balancing or failover, 7 No native database support (aside from external Sybase tools)
New in v2.0: Jaguar CTS (component transaction server), PowerDynamo (dynamic Web page server), CORBA IDL/IIOP support, native C++ component support, enhanced monitoring and tuning support, page caching and scheduling, built-in naming services; Release Notes
New in v3.0: New high-availability and load balancing, support for the secure socket layer, adds native support for PowerBuilder nonvisual objects (NVOs), component-based EAServer Application Integrators, native Oracle connectivity, support for XML.
New in v3.6:
Complete J2EE implementation;
built-in connection pooling, thread pooling, session management, and implicit transactions;
thin-client Web applications can be created quickly and easily using HTML, DynaScript, and SQL;
sophisticated performance-tuning capabilities, such as database connection pooling, dynamic page caching, and script scheduling;
clusters enable: load balancing (synchronizing components, packages, and other configurations across a cluster's servers), and automatic fail-over of primary-system components to a secondary server;
server and client support for Entrust PKI security;
can add digital certificate IDs to transaction server roles;
quality of protection (QOP) feature allows users to establish minimum security requirements at the package, component, and method levels;
integration of data from legacy systems;
components can access data on the mainframe, PCs, or workstations by executing ODBC, or Open Client Client-Library calls;
support for most open standards;
New in v3.6.1:
Support for J2EE application clients;
hot standby server configuration;
secure HTTP connectivity for Java;
container-managed component persistence;
URL resource references;
application-authenticated database connections;
custom role and authorization services;
New in v4.0:
J2EE, CORBA, COM, and C/++ heterogeneous development and deployment within a single application server environment;
Java Messaging Service;
new Web server plug-ins can automatically handle JSP and servlet requests from the Web server;
embedded installation capabilities enable an application to be deployed without end-user intervention;
Windows NT - Intel (NT 4.0 SP3 or SP4). Unix - Sun Solaris