Java Performance. In-Depth Advice for Tuning and Programming Java 8, 11, and Beyond. 2nd Edition

- Autor:
- Scott Oaks


- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 450
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Java Performance. In-Depth Advice for Tuning and Programming Java 8, 11, and Beyond. 2nd Edition
Coding and testing are generally considered separate areas of expertise. In this practical book, Java expert Scott Oaks takes the approach that anyone who works with Java should be adept at understanding how code behaves in the Java Virtual Machine—including the tunings likely to help performance. This updated second edition helps you gain in-depth knowledge of Java application performance using both the JVM and the Java platform.
Developers and performance engineers alike will learn a variety of features, tools, and processes for improving the way the Java 8 and 11 LTS releases perform. While the emphasis is on production-supported releases and features, this book also features previews of exciting new technologies such as ahead-of-time compilation and experimental garbage collections.
- Understand how various Java platforms and compilers affect performance
- Learn how Java garbage collection works
- Apply four principles to obtain best results from performance testing
- Use the JDK and other tools to learn how a Java application is performing
- Minimize the garbage collector’s impact through tuning and programming practices
- Tackle performance issues in Java APIs
- Improve Java-driven database application performance
Wybrane bestsellery
-
W tej książce opisano wiele funkcjonalności, narzędzi i procedur, dzięki którym można poprawić efektywność kodu napisanego w Javie 8 i 11 LTS. Główny nacisk położono na zagadnienia istotne dla środowisk produkcyjnych, ale przedstawiono również ciekawe nowe technologie, takie jak kompilacja z wypr...
Wydajność Javy. Szczegółowe porady dotyczące programowania i strojenia aplikacji w Javie. Wydanie II Wydajność Javy. Szczegółowe porady dotyczące programowania i strojenia aplikacji w Javie. Wydanie II
(47.40 zł najniższa cena z 30 dni)51.35 zł
79.00 zł(-35%) -
Threads are essential to Java programming, but learning to use them effectively is a nontrivial task. This new edition of the classic Java Threads shows you how to take full advantage of Java's threading facilities and brings you up-to-date with the watershed changes in Java 2 Standard Edition ve...(126.65 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%) -
One of Java's most striking claims is that it provides a secure programming environment. Yet despite endless discussion, few people understand precisely what Java's claims mean and how it backs up those claims. If you're a developer, network administrator or anyone else who must understand or wor...(177.65 zł najniższa cena z 30 dni)
177.65 zł
209.00 zł(-15%) -
Ta książka jest kolejnym, zaktualizowanym i uzupełnionym wydaniem kultowego podręcznika dla profesjonalnych programistów Javy. To pierwszy tom, w którym opisano podstawy języka i najważniejsze zagadnienia związane z programowaniem interfejsu użytkownika, a także kolekcje, wyrażenia lambda, techni...(70.95 zł najniższa cena z 30 dni)
83.85 zł
129.00 zł(-35%) -
What will you learn from this book?Head First Java is a complete learning experience in Java and object-oriented programming. With this book, you'll learn the Java language with a unique method that goes beyond how-to manuals and helps you become a great programmer. Through puzzles, mysteries, an...(237.15 zł najniższa cena z 30 dni)
237.15 zł
279.00 zł(-15%) -
To książka przeznaczona dla programistów, którzy chcą tworzyć aplikacje biznesowe z użyciem wzorców projektowych, wzorców biznesowych i najlepszych praktyk. Zawiera wyjaśnienie podstawowych koncepcji Javy EE 8, opis jej warstw oraz omówienie najlepszych praktyk tworzenia aplikacji biznesowych. Pr...(34.20 zł najniższa cena z 30 dni)
37.05 zł
57.00 zł(-35%) -
Język Java jest konsekwentnie udoskonalany i unowocześniany dzięki zaangażowaniu wielu ludzi. Nowoczesny język Java staje się coraz bardziej wieloparadygmatowy, co oznacza, że stosowanie najlepszych praktyk w coraz większym stopniu determinuje jakość kodu. Obecnie napisanie kodu, który prawidłowo...(59.40 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%) -
Książka, którą trzymasz w dłoni, stanowi przegląd praktyk BDD na wszystkich poziomach procesu rozwoju oprogramowania. Znajdziesz w niej informacje na temat odkrywania i określania wysokopoziomowych wymagań, implementacji funkcji aplikacji oraz pisania automatycznych testów akceptacyjnych i jednos...
BDD w działaniu. Sterowanie zachowaniem w rozwoju aplikacji BDD w działaniu. Sterowanie zachowaniem w rozwoju aplikacji
(38.50 zł najniższa cena z 30 dni)42.35 zł
77.00 zł(-45%) -
Dzięki Java. Kurs video nauczysz się programować także aplikacje rozrywkowe i gry według własnego uznania. Nasz ekspert wprowadzi Cię w najważniejsze zasady programowania oraz poruszania się na platformie Eclipse. Dowiesz się, czym jest polimorfizm i jak stosować operacje wejścia-wyjścia. Kolejne...
Java. Kurs video. Poziom pierwszy. Podstawy tworzenia aplikacji Java. Kurs video. Poziom pierwszy. Podstawy tworzenia aplikacji
(24.50 zł najniższa cena z 30 dni)31.05 zł
69.00 zł(-55%) -
Otwórz się na Javę i projektowanie obiektowe. Przystąp do nauki unikalną metodą, wykraczającą poza suche opisy składni oraz sposobów omijania codziennie spotykanych raf programistycznych. To doskonały podręcznik dla osób, które lubią uczyć się nowych języków programowania i nie mają wykształcenia...(43.65 zł najniższa cena z 30 dni)
53.35 zł
97.00 zł(-45%)
O autorze ebooka
Scott Oaks jest architektem w Oracle Corporation. Zajmuje się wydajnością chmury Oracle i oprogramowaniem platformy. Wcześniej przez wiele lat pracował w Sun Microsystems ? specjalizował się w takich dziedzinach jak programowanie sieci, technologia RPC czy oprogramowanie OPEN LOOK Virtual Window Manager. W 2001 roku dołączył do Java Performance Group, w której działa aktywnie do dziś. Jest autorem wielu książek dla programistów.
Kup polskie wydanie:
Wydajność Javy. Szczegółowe porady dotyczące programowania i strojenia aplikacji w Javie. Wydanie II
- Autor:
- Scott Oaks
43,45 zł
79,00 zł
(39.50 zł najniższa cena z 30 dni)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-920-5606-5, 9781492056065
- Data wydania ebooka:
-
2020-02-11
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 5.6MB
- Rozmiar pliku Mobi:
- 13.9MB
Spis treści ebooka
- Preface
- Who Should (and Shouldnt) Read This Book
- Whats New in the Second Edition
- Conventions Used in This Book
- Using Code Examples
- OReilly Online Learning
- How to Contact Us
- Acknowledgments
- 1. Introduction
- A Brief Outline
- Platforms and Conventions
- Java Platforms
- JVM tuning flags
- Java Platforms
- Hardware Platforms
- Multicore hardware
- Software containers
- The Complete Performance Story
- Write Better Algorithms
- Write Less Code
- Oh, Go Ahead, Prematurely Optimize
- Look Elsewhere: The Database Is Always the Bottleneck
- Optimize for the Common Case
- Summary
- 2. An Approach to Performance Testing
- Test a Real Application
- Microbenchmarks
- Microbenchmarks must use their results
- Microbenchmarks must test a range of input
- Microbenchmarks must measure the correct input
- Microbenchmark code may behave differently in production
- Microbenchmarks
- Macrobenchmarks
- Mesobenchmarks
- Test a Real Application
- Understand Throughput, Batching, and Response Time
- Elapsed Time (Batch) Measurements
- Throughput Measurements
- Response-Time Tests
- Understand Variability
- Test Early, Test Often
- Benchmark Examples
- Java Microbenchmark Harness
- JMH and parameters
- Comparing tests
- Setup code
- Controlling execution and repeatability
- Java Microbenchmark Harness
- Common Code Examples
- Summary
- 3. A Java Performance Toolbox
- Operating System Tools and Analysis
- CPU Usage
- Java and single-CPU usage
- Java and multi-CPU usage
- CPU Usage
- The CPU Run Queue
- Disk Usage
- Network Usage
- Operating System Tools and Analysis
- Java Monitoring Tools
- Basic VM Information
- Working with tuning flags
- Basic VM Information
- Thread Information
- Class Information
- Live GC Analysis
- Heap Dump Postprocessing
- Profiling Tools
- Sampling Profilers
- Instrumented Profilers
- Blocking Methods and Thread Timelines
- Native Profilers
- Java Flight Recorder
- Java Mission Control
- JFR Overview
- JFR Memory view
- JFR Code view
- Overview of JFR events
- Enabling JFR
- Enabling JFR via Java Mission Control
- Enabling JFR via the command line
- Selecting JFR Events
- Summary
- 4. Working with the JIT Compiler
- Just-in-Time Compilers: An Overview
- HotSpot Compilation
- Just-in-Time Compilers: An Overview
- Tiered Compilation
- Common Compiler Flags
- Tuning the Code Cache
- Inspecting the Compilation Process
- Tiered Compilation Levels
- Deoptimization
- Not entrant code
- Deoptimizing zombie code
- Advanced Compiler Flags
- Compilation Thresholds
- Compilation Threads
- Inlining
- Escape Analysis
- CPU-Specific Code
- Tiered Compilation Trade-offs
- The GraalVM
- Precompilation
- Ahead-of-Time Compilation
- GraalVM Native Compilation
- Summary
- 5. An Introduction to Garbage Collection
- Garbage Collection Overview
- Generational Garbage Collectors
- GC Algorithms
- The serial garbage collector
- The throughput collector
- The G1 GC collector
- The CMS collector
- Experimental collectors
- Choosing a GC Algorithm
- When to use (and not use) the serial collector
- Single hyper-threaded CPU hardware
- When to use (and not use) the serial collector
- When to use the throughput collector
- Garbage Collection Overview
- Basic GC Tuning
- Sizing the Heap
- Sizing the Generations
- Adaptive sizing
- Sizing Metaspace
- Controlling Parallelism
- GC Tools
- Enabling GC Logging in JDK 8
- Enabling GC Logging in JDK 11
- Summary
- 6. Garbage Collection Algorithms
- Understanding the Throughput Collector
- Adaptive and Static Heap Size Tuning
- Understanding the Throughput Collector
- Understanding the G1 Garbage Collector
- Tuning G1 GC
- Tuning the G1 background threads
- Tuning G1 GC to run more (or less) frequently
- Tuning G1 GC mixed GC cycles
- Tuning G1 GC
- Understanding the CMS Collector
- Tuning to Solve Concurrent Mode Failures
- Running the background thread more often
- Adjusting the CMS background threads
- Tuning to Solve Concurrent Mode Failures
- Advanced Tunings
- Tenuring and Survivor Spaces
- Allocating Large Objects
- Thread-local allocation buffers
- Sizing TLABs
- Humongous objects
- G1 GC region sizes
- G1 GC allocation of humongous objects
- AggressiveHeap
- Full Control Over Heap Size
- Experimental GC Algorithms
- Concurrent Compaction: ZGC and Shenandoah
- Latency effects of concurrent compaction
- Throughput effects of concurrent compacting collectors
- Concurrent Compaction: ZGC and Shenandoah
- No Collection: Epsilon GC
- Summary
- 7. Heap Memory Best Practices
- Heap Analysis
- Heap Histograms
- Heap Dumps
- Out-of-Memory Errors
- Out of native memory
- Out of metaspace memory
- Out-of-heap memory
- GC overhead limit reached
- Heap Analysis
- Using Less Memory
- Reducing Object Size
- Using Lazy Initialization
- Eager deinitialization
- Using Immutable and Canonical Objects
- Creating canonical objects
- Object Life-Cycle Management
- Object Reuse
- Object pools
- Thread-local variables
- Object Reuse
- Soft, Weak, and Other References
- Soft references
- Weak references
- Finalizers and final references
- Cleaner objects
- Compressed Oops
- Summary
- 8. Native Memory Best Practices
- Footprint
- Measuring Footprint
- Minimizing Footprint
- Native Memory Tracking
- NMT over time
- Shared Library Native Memory
- Native memory and inflaters/deflaters
- Native NIO buffers
- Footprint
- JVM Tunings for the Operating System
- Large Pages
- Linux huge (large) pages
- Linux transparent huge pages
- Windows large pages
- Large Pages
- Summary
- 9. Threading and Synchronization Performance
- Threading and Hardware
- Thread Pools and ThreadPoolExecutors
- Setting the Maximum Number of Threads
- Setting the Minimum Number of Threads
- Thread Pool Task Sizes
- Sizing a ThreadPoolExecutor
- The ForkJoinPool
- Work Stealing
- Automatic Parallelization
- Thread Synchronization
- Costs of Synchronization
- Synchronization and scalability
- Costs of locking objects
- Costs of Synchronization
- Avoiding Synchronization
- False Sharing
- JVM Thread Tunings
- Tuning Thread Stack Sizes
- Biased Locking
- Thread Priorities
- Monitoring Threads and Locks
- Thread Visibility
- Blocked Thread Visibility
- Blocked threads and JFR
- Blocked threads and JStack
- Summary
- 10. Java Servers
- Java NIO Overview
- Server Containers
- Tuning Server Thread Pools
- Async Rest Servers
- Asynchronous Outbound Calls
- Asynchronous HTTP
- Async HTTP clients
- Async HTTP clients and thread usage
- Asynchronous database calls
- Asynchronous HTTP
- JSON Processing
- An Overview of Parsing and Marshaling
- JSON Objects
- JSON Parsing
- Summary
- 11. Database Performance Best Practices
- Sample Database
- JDBC
- JDBC Drivers
- Where work is performed
- The JDBC driver type
- JDBC Drivers
- JDBC Connection Pools
- Prepared Statements and Statement Pooling
- Setting up the statement pool
- Managing statement pools
- Transactions
- JDBC transaction control
- Transaction isolation and locking
- Result Set Processing
- JPA
- Optimizing JPA Writes
- Optimizing JPA Reads
- Reading less data
- Using JOIN in queries
- Batching and queries
- JPA Caching
- Default caching (lazy loading)
- Caching and eager loading
- Join fetch and caching
- Avoiding queries
- Sizing the JPA cache
- Spring Data
- Summary
- 12. Java SE API Tips
- Strings
- Compact Strings
- Duplicate Strings and String Interning
- String deduplication
- String interning
- Custom string interning
- String Concatenation
- Strings
- Buffered I/O
- Classloading
- Class Data Sharing
- Class data sharing benefits
- Class Data Sharing
- Random Numbers
- Java Native Interface
- Exceptions
- Logging
- Java Collections API
- Synchronized Versus Unsynchronized
- Collection Sizing
- Collections and Memory Efficiency
- Lambdas and Anonymous Classes
- Stream and Filter Performance
- Lazy Traversal
- Object Serialization
- Transient Fields
- Overriding Default Serialization
- Compressing Serialized Data
- Keeping Track of Duplicate Objects
- Summary
- A. Summary of Tuning Flags
- Index
O'Reilly Media - inne książki
-
Combing the web is simple, but how do you search for data at work? It's difficult and time-consuming, and can sometimes seem impossible. This book introduces a practical solution: the data catalog. Data analysts, data scientists, and data engineers will learn how to create true data discovery in ...(228.65 zł najniższa cena z 30 dni)
228.65 zł
269.00 zł(-15%) -
This updated edition of the Nutshell guide not only helps experienced Java programmers get the most out of versions through Java 17, it also serves as a learning path for new developers. Chock-full of examples that demonstrate how to take complete advantage of modern Java APIs and development bes...(228.65 zł najniższa cena z 30 dni)
228.65 zł
269.00 zł(-15%) -
Get started with Ray, the open source distributed computing framework that simplifies the process of scaling compute-intensive Python workloads. With this practical book, Python programmers, data engineers, and data scientists will learn how to leverage Ray locally and spin up compute clusters. Y...(228.65 zł najniższa cena z 30 dni)
228.65 zł
269.00 zł(-15%) -
Remove your doubts about AI and explore how this technology can be future-proofed using blockchain's smart contracts and tamper-evident ledgers. With this practical book, system architects, software engineers, and systems solution specialists will learn how enterprise blockchain provides permanen...(271.15 zł najniższa cena z 30 dni)
271.15 zł
319.00 zł(-15%) -
FinOps brings financial accountability to the variable spend model of cloud. Used by the majority of global enterprises, this management practice has grown from a fringe activity to the de facto discipline managing cloud spend. In this book, authors J.R. Storment and Mike Fuller outline the proce...(271.15 zł najniższa cena z 30 dni)
271.15 zł
319.00 zł(-15%) -
Edge AI is transforming the way computers interact with the real world, allowing IoT devices to make decisions using the 99% of sensor data that was previously discarded due to cost, bandwidth, or power limitations. With techniques like embedded machine learning, developers can capture human intu...(271.15 zł najniższa cena z 30 dni)
271.15 zł
319.00 zł(-15%) -
Why is it difficult for so many companies to get digital identity right? If you're still wrestling with even simple identity problems like modern website authentication, this practical book has the answers you need. Author Phil Windley provides conceptual frameworks to help you make sense of all ...(194.65 zł najniższa cena z 30 dni)
194.65 zł
229.00 zł(-15%) -
Python was recently ranked as today's most popular programming language on the TIOBE index, thanks to its broad applicability to design and prototyping to testing, deployment, and maintenance. With this updated fourth edition, you'll learn how to get the most out of Python, whether you're a profe...(305.15 zł najniższa cena z 30 dni)
305.15 zł
359.00 zł(-15%) -
With the accelerating speed of business and the increasing dependence on technology, companies today are significantly changing the way they build in-house business solutions. Many now use low-code and no code technologies to help them deal with specific issues, but that's just the beginning. Wit...
Building Solutions with the Microsoft Power Platform Building Solutions with the Microsoft Power Platform
(262.65 zł najniższa cena z 30 dni)271.15 zł
319.00 zł(-15%) -
Companies are scrambling to integrate AI into their systems and operations. But to build truly successful solutions, you need a firm grasp of the underlying mathematics. This accessible guide walks you through the math necessary to thrive in the AI field such as focusing on real-world application...(271.15 zł najniższa cena z 30 dni)
271.15 zł
319.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
W przypadku usługi "Druk na żądanie" termin dostarczenia przesyłki może obejmować także czas potrzebny na dodruk (do 10 dni roboczych)
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.


Oceny i opinie klientów: Java Performance. In-Depth Advice for Tuning and Programming Java 8, 11, and Beyond. 2nd Edition Scott Oaks (0)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.