language-icon Old Web
English
Sign In

Enterprise Java Performance

2000 
I. INTRODUCTION. 1. Performance in General. Performance Versus Optimization. Performance Life Cycle. Before Coding. During Coding. After Coding. Types of Performance Problems. Low-Hanging Fruit. Application Design. Poor Design Choices. Information Hiding. Physics. The Java Language and Its Environment. Interactions with Other Environments. Persisting Java Objects. Time, Distance, and Space. 2. Tools for Identifying Java Performance. Java-Specific Tools. Java Profiler. Third-Party Java Profiling Tools. Simple Timing Measurements. Verbosegc. The PerfMonitor Class. System Tools: Windows NT Performance Monitor. Summary. 3. Java Performance Problem Areas. Basic Timing Comparisons. Just In Time and Static Compilation. Creating and Reusing Objects. Using Constants. Using Strings. StringTokenizer Usage. Exception Usage. Loop Techniques. Loop Constants. Local Variables. Terminate Loops Early. Casting Techniques. Avoid Losing Class Information. Avoid Contiguous Instanceof and Casts. Avoid Unnecessary Casts and Instanceofs. Synchronization. Garbage Collection. Collections. Collections Framework. Vectors. Hash Tables. Summary. II. PERFORMANCE PHYSICS. 4. Local/Remote Issues. Possible Approaches to Remote Objects. Remote Method Invocation. Enterprise Java Beans. SanFrancisco's Foundation Layer. The Costs of Remote Access. How to Write and Use a Remote Server in Java. Changing Method Call Granularity. The Remote Access Spectrum. Object Granularity. Implications of Granularity for Performance. Putting the Data in the Right Place. Object Affinity. Partitioning. Summary. 5. Granularity. Interface Granularity. Implementation Granularity. Granularity and Performance: A Design Example. Example 1: A Fine-Grained Design. Example 2: Make the Orderline Objects Serializable. Summary. 6. Bottlenecks. Why Bottlenecks Are Hard to Avoid. Synchronization Bottlenecks. Locking Bottlenecks. Objects and Locking. Deadlocks and Lock Ordering. Garbage Collection Bottlenecks. Distributed Garbage Collection. Summary. III. BENCHMARKING. 7. Java Benchmarking Overview. Java Benchmarks. Pendragon Software CaffeineMark 3.0. JMark 2.0. VolanoMark 2.1. SPECjvm98. Our Simple Benchmark. Summary. 8. An Application-Level Benchmark. The BOB Benchmark. TPC-C Overview. BOB Structure. Running BOB. BOB Implementation. Benchmark Infrastructure. Benchmark Transactions. Benchmark Entities. Summary. IV. APPLICATION ENVIRONMENTS. 9. SanFrancisco and Performance. SanFrancisco Overview. Foundation Layer. Foundation Object Model Base Classes. Business Object Lifecycle. Entity Lifecycle. Collections and Queries. Other Base Classes. Foundation Object Model Services. Common Business Objects Layer. Core Business Processes Layer. Useful References. Books About SanFrancisco. Additional Publications About SanFrancisco. IBM Redbooks About SanFrancisco. Summary. 10. Enterprise Java Beans and Performance. J2EE Architecture and Technologies. Enterprise Java Beans. Choosing an Implementation. EJB Implementations and Performance. EJB Architecture and Performance. Session Beans. Entity Beans. Flavors of Entity Beans. Granularity of EJBs. Session Beans Versus Entity Beans. Features to Look for in an EJS. Summary. 11. CORBA and Java. CORBA Overview. Java IDL. RMI-IIOP. Effect of RMI over IIOP on Performance. Summary. 12. Jini and Performance. Jini Overview. Lookup. Discovery. Leasing. Remote Events. Transactions. Performance Considerations in Jini. Summary. V. APPLICATION MODELS. 13. How Java Is Used. Web Out. Web In. Application Glue. Database Up. Application Wrapper. Objects Down. Combination Approaches. Summary. 14. Performance Implications. Web Out. Web In. Application Glue. Character Encoding and Endian. Accumulation of Remote Objects. Application Wrapper. Excessive Client Interaction. Capacity Limits. Reducing Client-Server Interactions. Database Up. Excessive Middleware Interactions. Objects Down. Excessive Client Interaction. Excessive Remote Object Interaction. Excessive Middleware Interaction. Memory Leaks and Object Retention. Excessive Garbage Collection. Summary. VI. SCALING UP. 15. System Tuning. Memory and System Tuning. SanFrancisco Solutions. EJB Solutions. Database Tuning. Operating System Memory Allocation. Balancing Memory Requirements. Disk Configuration. Network Configuration. The Performance-Tuning Process. Summary. 16. Large-Scale Effects. The Application and Its Environment. Memory. Processor. Input/Output. Software. Large-Scale Effects. SMP and Cluster Effects. Heap Allocation and Garbage Collection on SMP. Why Multiple Servers? Object Placement, Access, and Replication. Summary. Appendix A: Machines Used. Machine A. Machine B. Machine C. Index.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    10
    Citations
    NaN
    KQI
    []