What is the Pramati Server?
What is the Pramati Server?
The Pramati Server is a J2EE compliant application server that can be used for deploying secure, robust, and interoperable business applications. The Server is built using state-of-the-art technologies and comes with deployment and management tools for applications. A wide range of applications that use J2EE and legacy components can be run on the Server.
What is the Pramati Server made up of?
The Server infrastructure comprises of:
- A Web Container with JavaServer Page (JSP) compiler and servlet engine for serving dynamic content, and an HTTP Server for serving static HTML pages, with failover and load balancing support.
- An Enterprise JavaBeans Container for all types of EJBs, including Message Driven Beans (MDBs), and entity relationships with failover and load balancing support.
- An embedded Message Server, with a high availability failover option.
- A core services framework, that allows to plug-in services like security, naming, resource, and transaction, and is optimized for reliability and high performance.
- A high performance Cluster Service backbone that extends transparent, self-organizing load balancing, and failover for all types of components running on the nodes.
- Java Management Extension based (JMX-based) management model powers remote monitoring and configuring of the Server using the Console.
- An EJB-aware Swing-based Deploy Tool for configuring, distributing, and deploying J2EE applications on the Server nodes.
What are the features of the Pramati Web Container?
The Pramati Web Container provides a runtime environment for serving static HTML pages, dynamic JSPs, and servlet components. The Pramati Web Container includes a JSP compiler, servlet engine, and a high-throughput HTTP Server, and provides the following features:
- Compliance to JSP 2.0 and Servlet 2.4 specifications
- Hot deployment of updated Web components
- Multiple deployment options
- An enhanced throughput by extensive object pooling and caching
- An optimizable session maintenance with advanced session storage and retrieval mechanism
- Enhanced HTTP Server performance through static-file caching
- Session tracking using URL rewriting and cookies
- Enterprise level security and SSL support with client authentication capability
- Pluggable JSSE providers
- A DNS-based virtual hosting architecture
- Direct doc-root pick-up for unit deployment of JSPs, Servlets, or HTML pages
- A software load balancer
- An HTTP-aware commercial grade load balancer based on weighted round-robin algorithm
- Can be configured using the Console
- Dynamic Cache Service including:
- Rules-based caching of dynamic content
- Pluggability to Request Dispatcher and Web Server
- Web Server security including:
- Protection against DoS/DDoS
- Request header processing
- JAAS wrapper for deployed applications
For further details, read Configuring Pramati Web Server.
What are the features of the Pramati Enterprise JavaBeans?
The Pramati Server EJB Container provides a robust runtime environment for deployment and execution of all EJB components. It supports all Enterprise JavaBeans 2.0 features and the advanced Timer and Notification Service coming up in EJB 2.1 specification. To improve the concurrent access for entity EJBs, the Container can defer locking services to the corresponding database. The EJB Container manages concurrent access to an entity bean in such a way that data corruption is completely avoided.
Other highlights of the EJB Container are:
- All types of beans and their interfaces are supported - stateful and stateless session beans, CMP entity beans, Container Managed Relationships (CMRs), Message Driven Beans (MDBs), EJB QL, home/remote local/local home interfaces, and re-entrant beans
- Session synchronization
- Local and remote entities
- Pass-by-value semantics
- Pass-by-reference semantics
- Auto pool size configuration with pre-defined Low Activity Intervals (LAIs)
- EJB QL compiler and SQL converter
- EJB select methods
- Support for all types of relationships
- Support for home business methods
- Cascade deletion
- Customizable bean lifecycle support
- Message Server integration for a high-performance, scalable implementation
What are the features of Pramati Java Message Service?
The Message Server embedded within the Server is an integral part of the enterprise application architecture, and transparently offers all JMS services within the J2EE framework. With an embedded Message Server running, administrators need not separately re-configure the application server for Message Server and MDB applications.
The embedded Message Server is built to JMS 1.0.2 specifications, and supports:
- Distributed transactional messaging through XA implementation
- Guaranteed message delivery
- Point-to-point and publish-subscribe models
- Persistent messaging for retrieval using durable subscribers in case of sudden server shutdown
- Configurable administered objects such as message and queue size, and queued message time-outs
- Optimized Message Server load and performance
- Distributed messaging through firewalls
- Web-based management of administered objects
- Loaded Send feature where the Message Server provides a way to store messages in a temporary store table to avoid keeping many messages in-memory, thus optimizing memory and increasing scalability and reliability
What are the features of Pramati Message Driven Beans?
The Server EJB Container supports MDBs that are stateless, server-side, transaction-aware components. These MDBs can be used for processing asynchronous messages. Introduced in EJB 2.0, MDBs process messages delivered by the Message Server.
With Pramati Server embedded Message Server or any externally configured Message Server, you can:
- Deploy and run MDBs in Pramati Server EJB Container
- Initiate and complete transactions using MDBs
- Connect to, and modify databases triggered by these beans
What are the Standard Compliances provided by Pramati?
The following table lists the standard compliance provided by the Server with respect to J2EE Technologies:
Table 1: Standard Compliance
| Standard |
Version |
| Java 2 platform, Enterprise Edition | 1.3 |
| Enterprise JavaBeans | 2.0, with Timer and Notification Service from EJB 2.1 |
| JavaServer Pages | 1.2 |
| Servlets | 2.4 |
| Java Authentication and Authorization Service | 1.0 |
| Java Secure Socket Extension | 1.0.2 |
| Java Message Service | 1.0.2 |
| Java Connector API | 1.0 |
| Hyper Text Transfer Protocol | 1.1 |
| Java Activation Framework | 1.0 |
| Java Database Connectivity | 2.0 Standard Extension |
| Java Naming Directory Interface | 1.2 |
| JavaMail | 1.1 |
| Java Management Extensions | 1.0 |
| Java Transaction API | 1.0 |
| Java XML Processing API | 1.1 |
| Remote Method Innovation/Internet Interoperable Object Protocol | - |
What is the Architecture of the Pramati Server?
Pramati Server, with the embedded Pramati Message Server, ensures a high-performance, scalable, and robust platform for component-based J2EE applications. It also provides a comprehensive set of tools for server management and administration.
What are the features of the Pramati Services Framework?
The Pramati Services framework allows standard infrastructure services, as well as specific Server services, to be plugged-in to the platform. It enables compatibility with other platform services by allowing them to plug-in or write to published APIs.
The Services Framework is a part of the Pramati kernel that consists of the following modules:
- Lifecycle Manager for managing services lifecycle
- Service Dependency Manager for taking care of services compatibility
- Configuration Manager for managing services configuration
- Java Authentication and Authorization Service based (JAAS-based) security infrastructure that offers security wrapper for deployed applications
- Advanced Management Framework that exposes Server APIs for remote management
- Logging for logging error, warning, and stack trace information
What are the features of the Pramati Security Framework?
The Server implements a JAAS framework that enables the application security realm to be selected based on business requirements.
What are the features of the Pramati Clustering Framework?
The Server provides a Cluster Services module for transparent and pluggable load balancing algorithms and failover mechanisms. This service works on a peer-to-peer model, with no master-slave relationship, and has no points of failure.
What are the features of the Pramati Server Management Console?
The Server ships with a Web-based Management Console that interacts with JMX-based management models, JSPs, and configurable MBean components. Administrators can customize the Console to create multiple views on a server. The Console provides a customizable infrastructure for enterprise server administrators. Through dynamic monitoring, tuning, and control of applications, system administrators can optimally deploy resources and extract maximum performance in any deployment scenario.
The Console can be configured to communicate alerts and other information to WAP-enabled devices. The Server is managed using the Console that relies on the Administration Service to list all Server configurations on the LAN. The Console is often used for deploying applications and configuring them. The Console is recommended as it has an intuitive interface.
Most of the activities that are performed by administrators are focused around configuring, tuning, and monitoring applications. Deploying of applications and configuring them is normally a one time activity, which is usually done using the Console.
An administrator can deploy and configure applications by using the Server command shell, or the Console. An administrator can also deploy and configure resources by either manually editing the XML configuration files present in the <install_dir>/server/nodes/<node_name>/config directory, or using the Server command shell. Of all the above, the Console is most often used (and recommended) as it has a more intuitive interface.
This guide discusses in details about how to manage Pramati Server using the Console, as also the ways in which you can use the Server command shell and the XML files to configure your resources and/or applications.
However, before you start reading about how to manage applications or components of the Server, it is suggested you read the topics covered under Pramati Server Technical Reference that discuss some necessary concepts for a better understanding of the Server and it’s architecture.
What are the features of the Pramati Server Administration Service?
The Server is configured and started using the Server Administration Service. The Service equips the administrator to:
- Discover various Server instances running on the LAN through a discovery mechanism based on User Datagram Protocol (UDP)
- Configure and start:
- The Server on local or remote host
- A Server Cluster on local or remote hosts
- Pramati Message Server on local or remote hosts
The Deploy Tool is designed for EJB 2.0 component deployment requirements. It provides an automatic resolution of Container Managed Relationships (CMRs) against target database schema, and writes the deployment descriptors. It provides the key intermediate step of preparing and saving the archives for distribution to multiple servers. It enables quick deployment on local and remote Servers by mapping the application to the target environment and writing server-specific descriptors.
The Deploy Tool:
- Assists in complex O-R mapping between entity beans and multiple databases
- Resolves relationships defined in the abstract persistence schema of the application with the database relationships
- Prepares archives for deployment by resolving O-R Mappings
- Allows setting of security, application resources (JMS, Mail, XA Connectors), and environment settings
- Validates enterprise archives for conformance to J2EE technologies
- Highlights incomplete tasks until the archive is fully validated and ready to be deployed
- Enables seamless deployment of applications on a cluster of J2EE Servers
Summary
This section discussed the Pramati Server framework and gave an overview of the various features provided by the Server. You learnt that the Server supports a wide range of applications that use J2EE and legacy components.
Related Topics:
|