Комплексное исследование влияния параметров G1 Garbage Collector на производительность и стабильность JVM
Работая с нашим сайтом, вы даете свое согласие на использование файлов cookie. Это необходимо для нормального функционирования сайта, показа целевой рекламы и анализа трафика. Статистика использования сайта отправляется в «Яндекс» и «Google»
Научный журнал Моделирование, оптимизация и информационные технологииThe scientific journal Modeling, Optimization and Information Technology
cетевое издание
issn 2310-6018

Комплексное исследование влияния параметров G1 Garbage Collector на производительность и стабильность JVM

Золотухина Д.Ю. 

УДК 004.4
DOI: 10.26102/2310-6018/2024.47.4.039

  • Аннотация
  • Список литературы
  • Об авторах

Актуальность исследования обусловлена необходимостью повышения эффективности управления памятью в высоконагруженных Java-приложениях, где минимизация пауз сборки мусора и поддержание высокой пропускной способности являются критически важными задачами. Данная статья направлена на систематическое изучение параметрического пространства G1 Garbage Collector (G1 GC) и разработку практических рекомендаций по его оптимизации для условий высокой нагрузки. Ведущим методом исследования является эмпирический подход, включающий разработку тестового многопоточного приложения на Java, способного создавать устойчивую нагрузку на память и процессор. Для анализа были использованы контрольная и шесть экспериментальных конфигураций G1 GC, различающихся настройками таких параметров, как размер регионов памяти, порог заполнения кучи, максимальная длительность пауз, доля молодых регионов, количество потоков GC и включение Periodic GC. Результаты измерений ключевых метрик, включая длительность пауз, частоту сборок, пропускную способность и объем освобожденной памяти, были визуализированы и систематизированы с использованием инструмента GCViewer. В статье представлены рекомендации по оптимизации G1 GC, выявлены преимущества перераспределения памяти в пользу молодых регионов и включения Periodic GC, а также показаны ограничения параметра MaxGCPauseMillis при агрессивной настройке. Полученные результаты имеют практическую ценность для разработчиков высоконагруженных приложений, требующих низких задержек и высокой стабильности работы системы. Выводы исследования способствуют углублению понимания работы G1 GC и могут служить основой для дальнейших исследований в области управления памятью JVM.

1. Sihan W. Java Garbage Collectors. International Journal of Open Information Technologies. 2022;10(6):57–61.

2. Zhao W., Blackburn S.M. Deconstructing the garbage-first collector. In: VEE '20: Proceedings of the 16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, 17 March 2020, Lausanne, Switzerland. New York: Association for Computing Machinery; 2020. pp. 15–29. https://doi.org/10.1145/3381052.3381320

3. Аникин Д.А. Преимущества автоматизированного управления памятью на примере Java Hotspot. Столыпинский вестник. 2022;4(9). URL: https://stolypin-vestnik.ru/wp-content/uploads/2022/11/10-3.pdf

4. Nisbet A., Nobre N.M., Riley G., Luján M. Profiling and Tracing Support for Java Applications. In: ICPE '19: Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering, 07–11 April 2019, Mumbai, India. New York: Association for Computing Machinery; 2019. pp. 119–126. https://doi.org/10.1145/3297663.3309677

5. Bruno R., Ferreira P. A Study on Garbage Collection Algorithms for Big Data Environments. ACM Computing Surveys. 2019;51(1). https://doi.org/10.1145/3156818

6. Pufek P., Grgić H., Mihaljević B. Analysis of Garbage Collection Algorithms and Memory Management in Java. In: 2019 42nd International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), 20–24 May 2019, Opatija, Croatia. IEEE; 2019. pp. 1677–1682. https://doi.org/10.23919/MIPRO.2019.8756844

7. Наливайко А.С. Рекомендации по оптимизации потребления памяти в Java. Молодой ученый. 2020;(24):59–63.

8. Прозорова А.П., Вершинин Е.В., Потапов А.Е. Влияние на производительность приложения малого объема памяти и использование Garbage Collector (GC). Электронный журнал: наука, техника и образование. 2019;(1):55–61.

9. Петров И.А. Верификация кучи памяти объектов виртуальной машины. Современные информационные технологии и ИТ-образование. 2021;17(3):603–612. https://doi.org/10.25559/SITITO.17.202103.603-612

10. Филатов А.Ю., Михеев В.В. Анализ эффективности потоково-локальной сборки мусора в распределённых системах хранения и обработки данных. Вестник СибГУТИ. 2022;(1):77–88. https://doi.org/10.55648/1998-6920-2022-16-1-77-88

Золотухина Дарья Юрьевна

Финансовая корпорация Открытие

Воронеж, Российская Федерация

Ключевые слова: g1 garbage collector, управление памятью, оптимизация jvm, высоконагруженные приложения, тюнинг параметров gc, throughput, длительность пауз, сборка мусора, молодые регионы памяти, производительность java-приложений

Для цитирования: Золотухина Д.Ю. Комплексное исследование влияния параметров G1 Garbage Collector на производительность и стабильность JVM. Моделирование, оптимизация и информационные технологии. 2024;12(4). URL: https://moitvivt.ru/ru/journal/pdf?id=1774 DOI: 10.26102/2310-6018/2024.47.4.039

52

Полный текст статьи в PDF

Поступила в редакцию 16.12.2024

Поступила после рецензирования 23.12.2024

Принята к публикации 26.12.2024

Опубликована 31.12.2024