Скотт Оукс - Эффективный Java. Тюнинг кода на Java 8, 11 и дальше
Второе изданиеНазвание: | Эффективный Java. Тюнинг кода на Java 8, 11 и дальше | |
Автор: | Скотт Оукс | |
Жанр: | Базы данных, Учебники и самоучители по компьютеру | |
Изадано в серии: | неизвестно | |
Издательство: | Питер | |
Год издания: | 2021 | |
ISBN: | 978-5-4461-1757-4, 978-1492056119 | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Эффективный Java. Тюнинг кода на Java 8, 11 и дальше"
Программирование и тестирование обычно принято относить к разным профессиональным сферам. Скотт Оукс — признанный эксперт по языку Java — уверен, что если вы хотите работать с этим языком, то обязаны понимать, как выполняется код в виртуальной машине Java, и знать, какие настройки влияют на производительность. Вы сможете разобраться в производительности приложений Java в контексте как JVM, так и платформы Java, освоите средства, функции и процессы, которые могут повысить производительность в LTS-версиях Java, и познакомитесь с новыми возможностями (такими как предварительная компиляция и экспериментальные уборщики мусора).
Читаем онлайн "Эффективный Java. Тюнинг кода на Java 8, 11 и дальше". [Страница - 2]
- 1
- 2
- 3
- 4
- . . .
- последняя (34) »
Пишите меньше кода............................................................................................................28
Применяйте преждевременную оптимизацию........................................................30
Ищите в других местах: база данных всегда является узким местом.............32
Оптимизация для типичного случая..............................................................................33
Итоги...................................................................................................................................................34
Глава 2. Тестирование производительности......................................................35
Тестирование реального приложения................................................................................35
Микробенчмарки...................................................................................................................35
Макробенчмарки....................................................................................................................41
Мезобенчмарки.......................................................................................................................43
6 Оглавление
Пропускная способность, пакетирование и время отклика.....................................45
Измерения затраченного времени................................................................................45
Измерения пропускной способности...........................................................................47
Тесты на определение времени отклика.....................................................................48
Дисперсия..................................................................................................................................52
Тестируйте рано, тестируйте часто................................................................................56
Примеры хронометражных тестов.......................................................................................60
JMH................................................................................................................................................60
Примеры кода..........................................................................................................................69
Итоги...................................................................................................................................................73
Глава 3. Инструментарий производительности Java.........................................74
Средства операционной системы и анализ......................................................................74
Использование процессора..............................................................................................75
Очередь выполнения...........................................................................................................80
Уровень использования диска.........................................................................................81
Уровень использования сети............................................................................................83
Средства мониторинга Java......................................................................................................85
Основная информация VM.................................................................................................87
Информация о потоках........................................................................................................90
Информация о классах.........................................................................................................91
Оперативный анализ уборки мусора............................................................................91
Последующая обработка дампов кучи.........................................................................91
Средства профилирования......................................................................................................91
Профилировщики с выборкой.........................................................................................92
Инструментальные профилировщики................................................................................97
Блокирующие методы и временная шкала потоков..............................................98
Профилировщики низкоуровневого кода............................................................... 100
Java Flight Recorder.................................................................................................................... 102
Java Mission Control............................................................................................................. 103
Краткий обзор JFR............................................................................................................... 104
Оглавление
7
Включение JFR....................................................................................................................... 111
Выбор событий JFR............................................................................................................. 115
Итоги................................................................................................................................................ 118
Глава 4. Работа с JIT-компилятором................................................................... 119
JIT-компиляторы: общие сведения..................................................................................... 119
Компиляция HotSpot.......................................................................................................... 121
Многоуровневая компиляция.............................................................................................. 123
Распространенные флаги компилятора.......................................................................... 125
Настройка кэша команд................................................................................................... 125
Анализ процесса компиляции....................................................................................... 127
Уровни многоуровневой компиляции...................................................................... 131
Деоптимизация..................................................................................................................... 133
Флаги компилятора высокого уровня.............................................................................. --">
- 1
- 2
- 3
- 4
- . . .
- последняя (34) »