Memory optimization of java based applications with the help of garbage collection log

Dissertant

Faranih, Bashar M.

Thesis advisor

al-Mashayki, Akram M. O.

Comitee Members

al-Kayid, Ahmad
al-Hamami, Ala H.

University

Amman Arab University

Faculty

Collage of Computer Sciences and Informatics

Department

Department of Computer Science

University Country

Jordan

Degree

Master

Degree Date

2014

English Abstract

Nowadays, performance of web applications tends to be one of the most important topics when building applications.

We build applications to serve different kinds of needs that also would vary in their importance.

It would take tremendous efforts building such beneficial applications, thus maintaining such applications and making sure that they are highly scalable and available is even a harder job.

Accordingly, this thesis aims to shift the way of approaching and tackling performance problems to a new era, which is being proactive rather than reactive.

Memory related problems are one of the most popular problems amongst performance problems, according to the design and purpose of the application, we can predict or come up with a sufficient resources setup for the application, but still, this may still not be sufficient to maintain an available and scalable application.

In fact; the resources setup may vary according to the usage of the application Applications may not crash, or it may not be suffering from a noticeable slowness, this does not mean that the available memory for the application or the memory usage of the application is normal.

With the help of the Garbage Collection Log in Java, the researcher believes that we can learn many things about the memory usage if normal or not and even if the memory setup is correct or not, which as a result may enable us to tune Java based applications performance accordingly by tuning it’s memory usage.

There are many tools available in the market that generates readings from the garbage collection log, but none are used to really analyze this log and generate even more useful information that could easily tell us the source of the problem and how to act.

We need to read the pattern of memory usage for the application which no other tool provides.

We cannot depend on Snapshots of the memory at a specific time (Heap dumps) to get the whole picture of the memory usage and pattern since generating a Heap dump at a specific time is a costly operation, thus, a constant generation of Heap dumps at each second of the course of the application sounds irrational.

So, we need other means to analyze the memory usage/consumption of the memory throughout the course of the application that is not costly and easy to get.

The problem is that we used to deal with garbage collection log as the output of the garbage collection operation, but as the researcher will prove in this work, the activities of the garbage collection not only show the result of each operation, but could also tell us more like if the current memory setup is correct or if there is a problem with the application implementation itself, in order to take action and fix issues accordingly.

Doing so, could even be very beneficial in determining problems that the customers did not notice yet, even that they do exist.

If No one is complaining, this does not mean that everything is going fine behind the scenes.

The new approach helps discovering problems that with the right parameters and circumstances could explode to a severe performance issue.

The theories and concepts that are theoretically presented by this work are proved and justified using a new tool that the researcher has developed to help better solve performance issues related to memory.

This will be the first tool to tackle and present solutions for such issues rather than only some readings.

Main Subjects

Mathematics

No. of Pages

109

Table of Contents

Table of contents.

Abstract.

Abstract in Arabic.

Chapter One : Introduction.

Chapter Two : Literature review.

Chapter Three : Java memory structure and possible issues.

Chapter Four : The proposed solution.

Chapter Five : The tool (GC Log Analyzer).

Chapter Six : Conclusions and future work.

References.

American Psychological Association (APA)

Faranih, Bashar M.. (2014). Memory optimization of java based applications with the help of garbage collection log. (Master's theses Theses and Dissertations Master). Amman Arab University, Jordan
https://search.emarefa.net/detail/BIM-561832

Modern Language Association (MLA)

Faranih, Bashar M.. Memory optimization of java based applications with the help of garbage collection log. (Master's theses Theses and Dissertations Master). Amman Arab University. (2014).
https://search.emarefa.net/detail/BIM-561832

American Medical Association (AMA)

Faranih, Bashar M.. (2014). Memory optimization of java based applications with the help of garbage collection log. (Master's theses Theses and Dissertations Master). Amman Arab University, Jordan
https://search.emarefa.net/detail/BIM-561832

Language

English

Data Type

Arab Theses

Record ID

BIM-561832