Tuesday, July 23, 2013

Java EE and application servers, part three

The application server provides applications with a range of services, as illustrated in the following figure:

Main services provided by an application server

The web server handles HTTP requests and responses from and to clients. Your application only needs to indicate at which URLs its web pages and web services should be made available to clients.

The messaging service enables applications to produce and consume messages to communicate between them.

The thread management service provides and manages new threads for applications to execute work. The application server maintains a pool of threads that can be reused, which increases the scalability of applications by using server resources more efficiently.

The injection service enables applications to obtain resources and dependencies automatically at run time. The application server creates and manages the lifecycle of these dependencies (objects), so the application does not have to.

The transaction management service enables applications to define transactional operations and restores the resources associated with a transaction to their original state automatically if an operation cannot be completed entirely.

The authentication service enables applications to manage users and groups and to grant access to some parts of an application only to some users or groups.

The connection pooling service maintains a pool of active connections to a resource (such as a database or a legacy system) that can be reused by applications. Connection pooling improves the performance of applications that use these connections.

The naming directory service enables administrators and applications to register resources (such as connection pools or message queues) in the application server and to access them by their name.

We will learn how to use these services in future posts.

No comments:

Post a Comment