Treffer: Optimizing Java applications for cloud environment

Title:
Optimizing Java applications for cloud environment
Authors:
Publication Year:
2024
Collection:
Theseus.fi (Open Repository of the Universities of Applied Sciences / Ammattikorkeakoulujen julkaisuarkisto)
Document Type:
Dissertation bachelor thesis
Language:
English
Rights:
fi=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.|sv=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.|en=All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.|
Accession Number:
edsbas.6E776B3D
Database:
BASE

Weitere Informationen

This thesis focuses on optimizing the performance of Java applications deployed in cloud environments, specifically on AWS. The project explores common challenges such as high CPU usage, memory allocation inefficiencies, and frequent garbage collection cycles, which can impact the scalability and efficiency of applications in a cloud-based setup. Using a Java-based calculator application as the test case, the research involved deploying the application on an AWS EC2 instance and monitoring its performance using VisualVM. Initial observations revealed areas for improvement in CPU and memory usage, which guided the optimization efforts. Techniques like JVM tuning, including adjustments to heap size and the implementation of the G1 Garbage Collector, were applied. These changes resulted in reduced garbage collection frequency, more stable memory usage, and smoother performance during computationally intensive tasks. The findings demonstrate how targeted optimizations can significantly improve resource management and application responsiveness in cloud environments. This research serves as a practical guide for addressing performance bottlenecks in Java applications, laying the foundation for further enhancements like load balancing and caching to achieve even greater efficiency.