
Building Scalable and High-Performance Java Web Applications
Using J2EE Technology
Résumé
Packed with general system architecture tips and balanced with succinct examples for each technology, this book allows you to focus on practical strategies for effective application design without getting overwhelmed with useless detail. As a result, you will quickly and easily be able to understand how to use J2EE technologies to build application systems that deliver scalability and high performance.
Coverage includes:
- Essentials of Web application architecture
- The J2EE standard
- General techniques for building scalable and high-performance systems
- The HTTP protocol, with special focus on features that maximize performance
- Java™ Servlets and JavaServer Pages™ (JSP)
- Enterprise JavaBeans™ (EJB)
- Java™ Message Service (JMS)
- Effective database design techniques
- Efficient database management with JDBC™ and SQL
- Essentials of Web Services, including XML, SOAP, WSDL, andUDDI
A CD-ROM with relevant source code from various chapters accompanies this book.
Contents
Preface.
1. Scalable and High-Performance Web
Applications.
The Nature of the Web and Its Challenges.
Performance and Scalability.
Scalability.
The Internet Medium.
Interactive.
Dynamic.
Always On.
Integrated.
Lack of Complete Control.
Measuring Performance and Scalability.
Measuring Scalability.
Throughput and Price/Performance.
Scalability and Performance Hints.
Scalability Does Not Equal Performance.
Measure Scalability by Comparison.
Summary.
2. Web Application Architecture.
Application Requirements.
Data Management Requirements.
Interface Requirements.
Web Requirements.
Abstract Web Application Architecture.
Persistent Data Management.
N-tier Application Architecture.
The Network.
The Server.
Tier-Based Designs.
Challenge: Efficient Middleware.
Scalability and Performance Hints.
Use or Build Multithreaded Application Servers.
Find the Right Granularity.
Summary.
3. The J2EE Specification.
Deployment Issues.
Deployment Descriptor Files.
Platform Technologies and Services.
Transaction Management Using the Java Transaction API.
JNDI for Resource Location.
J2EE and Your Architecture.
Summary.
4. General Scalability and Performance Techniques.
Parallelism.
Redundancy.
Asynchrony.
Resource Pooling.
Summary.
5. HTTP Client/Server Communication.
Deployment Paradigms.
Applications without Browsers as Clients.
Efficiency of the HTTP Protocol.
Detailed Protocol Semantics.
HTTP Requests.
The GET Method.
The POST Method.
HTTP 1.1 Caching Details.
Connection Management.
Performance and Scalability Hints.
Consider Using HTTP for Non-Browser Clients.
Promote HTTP Response Caching.
Support Persistent Connections.
Summary.
6. Request Processing: Concepts and Strategies.
Specific Challenges.
Data Marshalling.
Request Servicing.
Modes of Request Processing.
Asynchronous Communication.
Scalability and Performance Implications.
The Role of J2EE in Request Processing.
Synchronous Processing with Java Servlets and Java Server Pages.
Asynchronous Processing with the Java Message Service.
Scalability and Performance Hints.
Stream Data between Threads.
Develop Remote Methods That Encourage Efficiency.
Summary.
7. Session Management with Java Servlets.
Extending the Web Server through Its API.
Redirecting the Web Server Request.
Using Servlets.
Interacting with a Servlet.
Web Server and Servlet Container Integration Details.
Developing Servlets.
Coding the Servlet.
Servlet Execution.
Servlets and Multithreading.
Servlets and Session Management.
Session Identification.
Using HTTP User Authentication.
Using Hidden Form Fields.
Using Rewritten URLs.
Using HTTP Persistent Cookies.
Using the Java Servlet Session Tracking API.
Deploying Servlets.
Developing Servlets with Java Server Pages.
The Structure of a JSP Page.
How JSP Works.
JSP Directives.
So, what is JSP... really?
Performance and Scalability Hints.
Prefer Hardware-Based Load Balancing.
Use Servlets for Session Management, not Business Logic.
Think Twice about Using JSP.
Summary.
8. Building Application Servers with Enterprise Java Beans.
Enterprise Java Beans: The J2EE Solution.
How EJBs Work.
Types of EJBs.
Example Application.
EJB Design.
Entity Beans.
Message-Driven Beans.
EJB Implementation.
Session Beans.
Entity Beans.
Message-Driven Beans.
Client/EJB Integration.
Performance and Scalability Hints.
When You Use Session Beans, Use Stateless Session Beans.
Strive for Coarse-Grain EJB Methods.
Use BMP Well or Don't Use It at All.
Know Your Vendor.
Summary.
9. Messaging for Efficient Enterprise Application Integration.
The Java Message Service.
JMS Concepts.
Clients.
Messages.
Administrative Objects.
JMS Programming Models.
The Synchrony of Message Consumption.
JMS Reliability versus Performance.
Message Persistence.
Timing Dependencies and JMS Publishing Models.
Using JMS: An Example Pub/Sub Application.
Developing the Message Subscriber.
Towards Deployment.
Scalability and Performance Hints.
Understand the JMS Efficiency versus Reliability Tradeoff.
Summary.
10. Effective Database Design.
Logical Database Design.
Physical Database Design.
Constraints.
Querying a Database.
Nested Queries.
Join Queries.
Other Important Database Objects.
Stored Procedures.
Triggers.
Indexes.
Sequences.
Other Objects.
Query Processing.
Scalability and Performance Hints.
Understand When to Use the Database.
Understand How Your Data Will Be Accessed.
Normalize Your Data Model.
Selectively Denormalize Your Model.
Use Stored Procedures.
Avoid Triggers and Other Implicit Execution.
Know Your Vendor.
Summary.
11. Using JDBC and SQL to Efficiently Query Databases.
JDBC Concepts and Objects.
Relevant JDBC Classes and Their Relationships.
Connecting to a Database.
Writing JDBC Queries.
Iterating through Results.
Executing Single Updates.
Other Kinds of Updates: Creating Tables and Stored Procedures.
Beyond the Basics.
Dynamic SQL.
Transaction Management.
Bidirectional Results Iteration.
Updateable Results.
Executing Batch Updates.
Scalability and Performance Hints.
Use Prepared Statement When Possible.
Use Batch Updates with a Remote Database.
Don't Overcommit.
Use Multithreading to Query in Parallel.
Summary.
12. Web Services: The Future of Web Applications.
Surveying Web Service Technologies.
Putting It All Together.
XML: Self-describing Data.
Parsing XML.
XML-Related Technologies.
Coding Web Services.
Describing Web Services with WSDL.
WSDL Example.
Invoking Web Services with SOAP.
Using SOAP over HTTP.
Registering Web Services with UDDI.
The UDDI APIs.
The Big Picture.
The Consumer Perspective.
Scalability and Performance Challenges.
XML Parsing Performance.
Summary.
Bibliography.
Index.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | Addison Wesley |
Auteur(s) | Greg Barish |
Parution | 04/02/2002 |
Nb. de pages | 388 |
Format | 18,8 x 23,3 |
Couverture | Broché |
Poids | 863g |
Intérieur | 2 couleurs |
EAN13 | 9780201729566 |
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse