ОПТИМИЗАЦИЯ JAVA ПРИЛОЖЕНИЯ

Зайцев Артем Витальевич

Аннотация


Целью работы является обзор инструментов и методов диагностики проблем с производительностью, а также разбор нескольких прикладных случаев реализации оптимизаций.
В работе проведен разбор технологического стека приложения, с которым производится работа; рассматриваются технологии для сбора и анализа детальных данных для диагностики. Описывается реализация оптимизированного сохранения объектов на основе расчета расстояния Левенштайна между текстовыми значениями объектов, созданных или измененных в некоторый промежуток времени; проводится анализ методов, создающих нагрузку на СУБД, а также реализация кеширования для одной из сущностей приложения. Реализуется оптимизация сортировки и обработки некоторых объектов, используя структуру данных HashSet и оптимизация путем замены методов, генерирующих и выполняющих запросы к базе данных, на более легковесные и специализированные HQL запросы