|
![]() |
|||
|
||||
OverviewLinux Server Performance Tuning provides the knowledge and skills needed to understand and improve the performance of Linux servers. It describes the collective practical experience of IBM Linux Technology Center experts in Linux performance monitoring, evaluation and measurement, analysis, and tuning of Linux servers. It discusses methodologies for improving and maximizing the performance of business server applications running on an Intel-based hardware platform and the Linux operating system. Readers will obtains valuable insight into the tuning techniques needed to improve the performance of their software running on Linux. This includes an overview of the Linux kernel (including installation), a synopsis of the various Linux performance tools that can be used to isolate performance issues, and how to use them, and tuning principles, strategies and techniques for various Linux components such as the scheduler, memory and I/O subsystems. In addition, case studies for tuning these subsystems are also included, as well as the performance characterization of several Linux server applications, including web servers, database servers, application servers, and print and file servers. Full Product DetailsAuthor: Sandra K. Johnson , Gerrit Huizenga , Badari PulavartyPublisher: Pearson Education (US) Imprint: IBM Press Dimensions: Width: 18.20cm , Height: 3.20cm , Length: 23.20cm Weight: 0.937kg ISBN: 9780131447530ISBN 10: 013144753 Pages: 576 Publication Date: 09 June 2005 Audience: College/higher education , Tertiary & Higher Education Format: Paperback Publisher's Status: Out of Print Availability: Awaiting stock ![]() Table of ContentsPreface. Acknowledgments. About the Editors. About the Contributors. I. LINUX OVERVIEW. 1. Linux Installation Issues. Introduction Preinstallation Planning Configurable 2.6 Kernel Features Linux Logging Facility System Initialization: BSD Versus System V Initialization Summary References 2. Kernel Overview. Introduction The Evolution of Linux Linux Kernel Architecture Process Management Interprocess Communications The Linux Symmetrical Multiprocessing (SMP) Model File Systems New Features in Linux 2.6 Summary References 3. Overview of Server Architectures. Introduction Linux Servers Processors and Multiprocessing Memory I/O Linux Enterprise Servers Linux Clusters Examples of Server Systems Summary II. PERFORMANCE ANALYSIS TOOLS. 4. System Performance Monitoring. Introduction Background on Linux and Performance Analysis CPU Utilization Memory Utilization I/O Utilization Network Utilization Summary References 5. System Trace Tools. Introduction Requirements for System Tracing The top Utility strace OProfile Performance Inspector Summary References 6. Benchmarks as an Aid to Understanding Workload Performance. Introduction Benchmarking to Improve Your Workload What Types of Benchmarks Are There? Microbenchmarks Web Server Benchmarks Summary III. SYSTEM TUNING. 7. System Performance Principles and Strategy: A Benchmarking Methodology Case Study. Introduction Performance Evaluation Methodologies Benchmarking Methodology Case Study Analysis Methodology Benchmarks Summary Acknowledgments References 8. Scheduler Tuning. Introduction Single-Processor Systems Symmetric Multiprocessing (SMP) Non-Uniform Memory Access (NUMA) Symmetric Multithreading (SMT) The 2.6 Linux Scheduler Load Balancing Tunable Parts of the Scheduler Summary References 9. The Linux Virtual Memory Performance Implications. Introduction Memory and Address Space High-Memory Support Paging and Swapping The Linux Page Tables New Features in Linux 2.6 Summary References 10. I/O Subsystems Performance Implications. Introduction I/O Scheduling and the Block I/O (BIO) Layer Read and Write Request Batches Read Anticipation Heuristic I/O Components that Affect Performance Addressing an I/O Device Summary References 11. File System Tuning. Introduction File System Fundamentals Journaled File Systems Disks Factor into File System Performance Fragmenting a File System File Synchronization bdflush Parameters Asynchronous Input and Output Raw Disk I/O Ext2 and Ext3 ReiserFS Journaled File System (JFS) Next-Generation File System (XFS) Summary References 12. Network Tuning. Introduction The Network Protocol Stack Kernel Parameter Tuning Mechanisms Kernel Auto Tuning Core Kernel Parameter Descriptions TCP/IPv4 Protocol Kernel Parameters Summary References 13. Interprocess Communication. Introduction What Is Interprocess Communication? Linux SysV IPC Resources and the ipcs Command Semaphore Parameters Message Queue Parameters Shared Memory Segment Parameters Dynamically Modifying the Configurable IPC Parameters Configuring IPC Parameters Statically Pipes Summary 14. Code Tuning. Introduction General Principles Profiling to Understand the Application Compiler Options as Tuning Tools Code Tuning Algorithm: Achieving Performance Through Design Choices File I/O Summary IV. PERFORMANCE CHARACTERIZATION OF LINUX SERVER APPLICATIONS. 15. Web Servers. Introduction HTTP Requests and Responses Network Behavior of a Web Server Anatomy of a Web Server Transaction Different Models of Web Servers Tuning Web Servers Summary References 16. File and Print Servers. Introduction Types of Dedicated Network Storage Servers Optimizing the Performance of Network Storage References 17. Database Servers. Introduction Overview of Database Architectures Database Tuning Areas to Consider Process Management Memory Management I/O Management Summary 18. Application Servers. Introduction The Application Server Defined Java, J2EE, and Application Servers Performance Characterization of Application Servers Improving Performance and High Availability Summary References V. TUNING CASE STUDIES. 19. Case Study: Tuning the i/o Schedulers in Linux 2.6. Introduction Benchmark Environment and Workload Profiles I/O Schedulers and Performance Single-CPU Single-Disk Setup 8-Way RAID-5 Setup 16-Way RAID-0 Setup AS Sequential Read Performance AS Versus Deadline Performance CFQ Performance Summary References 20. Case Study: File System Tuning. Introduction Analyzing File Layout Tuning File Systems Measuring I/O Summary References 21. Case Study: Network Performance on Linux. Introduction Benchmarks Used in the Case Study Enhancements in the Linux 2.4 and 2.6 Kernels Case Study Summary References 22. Case Study: Commercial Workload Tuning. Introduction Overview of Commercial Workload Tuning Standard Commercial Workload Model for J2EE Our Commercial Workload Model: Stock Trading The Performance Analysis Exercise Summary References Appendix A: Tuning Kernel Parameters. Introduction The sysctl Interface The procfs Interface sysfs (Linux Kernel 2.6 Only) General Kernel Parameters Virtual Memory File System Network Index.ReviewsAuthor InformationSandra K. Johnson, Ph.D., is a Senior Technical Staff Member and the Chief Technology Officer of Global Small and Medium Business, IBM Systems and Technology Group. She was formerly the Linux Performance Architect with the IBM Linux Technology Center in Austin, Texas. She has more than sixteen years of experience in designing and evaluating the performance of operating systems and applications. Johnson is a member of the IBM Academy of Technology. Gerrit Huizenga is a software engineer and architect for Linux Base Technologies in the IBM Linux Technology Center in Beaverton, Oregon. Gerrit has been architecting, designing, and implementing operating system capabilities with a focus on performance, scalability, standards, and security for twenty years. Prior to his work at the IBM Linux Technology Center, Gerrit was the Chief Technologist for Operating Systems at Sequent Computer Systems, Inc. Badari Pulavarty is a senior engineer at the IBM Linux Technology Center in Beaverton, Oregon. He has fifteen years of experience developing UNIX operating systems. © Copyright Pearson Education. All rights reserved. Tab Content 6Author Website:Countries AvailableAll regions |