JIRA consumes about 700Mb RAM, why? And how do i decrease memory usage?

aselenwall September 1, 2011

When I first installed JIRA it consumed about 250Mb of my RAM. I then thought "oh my, that's a lot", well for me at least that's a lot.

After creating a project in JIRA (yes, 250Mb memory usage without any issues... in the system) I was recommended by JIRA to reindex. So I did. And then the memory usage increased to about 700Mb. Now, I understand that the reason for the increase is the indexing. But what I would like to know is how to decrease the memory usage. What I would like to index are my issues and projects. What is JIRA indexing that will require 700Mb in-memory? And how do I fix this?

5 answers

2 votes
Kinto Soft
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

Are you using the JIRA Standalone distribution? In that case I would not include the required resurces by Tomcat.

Tomcat or any compatible Java Web App server is mandatory to run JIRA, but I think you don't should include those resources in the JIRA account as you don't include the RAM required to run your OS.

In order to get the approximate real RAM required by JIRA you should deploy the WAR file on an existing Tomcat server and check the vailable RAM before and after it.

The Standalone distribution is really a Tomcat Server plus the JIRA web app already deployed.

aselenwall September 2, 2011

Great advice, I will try this. Thanks.

Kinto Soft
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 2, 2011

You can also left JIRA Standalone and deploy all your other Java Web Apps on it. Simply, create a webapps directory by hand and deploy all your wars there. It's just what my JIRA app does.

BTW, I've deployed JIRA Standalone plus another Tomcat with several web apps running on a hosted Linux with 1 Gb of RAM. Go to www.svnflash.com and and www.docminer.com and click on the Live Demos. Both are running on the same host but on different Tomcats. DocMiner is deployed on the same Tomcat provided by JIRA Standalone. You may compare performance with your ISP. It's for public demo, so feel free to navigate and use it, create issues and so on. The JIRA java process is consuming +780 Mb of RAM (1 project and 10 issues). To access JIRA click on any issue displayed on the document.

1 vote
MatthewC
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

Indexing generally takes place in the background, you don't really have to do a full re-index just because you've made a small modification. I know Jira keeps telling you but it's a pain because project administrators can see it which means that when I modify a custom field, I get emails from project leads telling me that "jira must be reindexed now" without realising that it would lock everyone out.

If you've got that little memory to work with on your host & it's going to cost too much to get more then I would either:

  1. Find a new host, I use 1&1 & it doesn't cost a lot (not meant to be spam.....)
  2. Use Jira Studio instead

You can restrict the memory but if Jira needs it you'll get the OutOfMemory exceptions. The JVM flags are:

-Xms512m -Xmx512m

Read these:

http://confluence.atlassian.com/display/JIRA/Increasing+JIRA+Memory

http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

0 votes
Eugenio Eugenio September 1, 2011

Hi Andreas,

I'll send you some papers from oracle and you may have a basis for tuning the performance in your java.

http://java.sun.com/performance/reference/whitepapers/tuning.html

aselenwall September 2, 2011

Thanks, but I still don't think this is a performance issue, tuning Java won't decrease the memory required by JIRA, and I don't think JIRA is slow it actually works quite well. But since my VPS only allows me to use 1Gb of RAM, 700Mb is quite much for one process.

0 votes
MatthewC
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

BTW how big is your Jira? How many issues/projects

0 votes
Radu Dumitriu
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

A good starting point is this: http://www.oracle.com/technetwork/java/javase/index.html

I can understand your pain, but these days (they say) memory is cheap.

Radu Dumitriu
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

No, what I mean is : you can limit the memory usage by using JVM flags. However, I recommend you to have at least 768 Mb for your Jira instance. Indexind is done globally, so it cannot be restricted to one project only.

aselenwall September 1, 2011

Yes I heard that as well, but my VPS provider says it will cost me a lot :) Or at least more than I am willing to pay for :)

Thanks for the link, but I don't think this is a Java issue but rather a JIRA memory issue. I guess indexing in this case means they index _everything_ to make JIRA faster while searching for documents and plugins and such. But I would rather just index the parts of JIRA that concerns me, i.e. my projects and related issues.

aselenwall September 1, 2011

But that would only generate OutOfMemoryException. Is it possible to turn indexing off?

Radu Dumitriu
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 1, 2011

See this page: http://confluence.atlassian.com/display/JIRA/JIRA+Requirements

It says: If you are planning to have a small number of projects (10-20) with 1,000 to 5,000 issues in total and about 100-200 users, a recent server (2.0+ GHz quad core CPU) with 1-2 GB of available RAM should cater for your needs.

aselenwall September 2, 2011

Thanks for all your replies, really appreciate it. But I am starting to realize that JIRA might not be right solution for me at this point. I will however try to run it on my existing web service instead of a stand-alone application.

I wanted to run JIRA on some "hobby"-projects to learn more about it but if it requires me to pay twice as much for my VPS than I already do, I don't think JIRA is for me.

aselenwall September 2, 2011

Thanks for all your replies, really appreciate it. But I am starting to realize that JIRA might not be right product for me at this point. I will however try to run it on my existing web server instead of a stand-alone application.

I wanted to run JIRA on some "hobby"-projects to learn more about it but if it force me to pay twice as much for my VPS than I already do, I don't think JIRA is for me.

Suggest an answer

Log in or Sign up to answer