>1500 HTTP requests per Jira page load!

Hi!

I’m running a local instance of Jira Server for development, v7.13.3.
Command: atlas-run-standalone --product jira --data-version 7.13.3 -v 7.13.3 -Dajp.port=8010 --jvmargs -Xmx4096m

I was noticing for that last week that Jira sure seemed slow navigating the pages until I just checked the Network panel in Chrome Dev Tools and noticed that it is loading an ungodly amount of scripts and css files for a single page. I tried many different pages and the lowest number of requests was >1200 for the home dashboard.

What is the reason for this? Our production server makes about 160 HTTP requests per page. Do I need to turn off some features??? I turned off Analytics but that didn’t help.

Get this, for a single issue page, there are 1,484 elements under the html>head section. 1,484!!!

Edit: FYI, a standalone Confluence instance does not exhibit this behavior. It’s total HTTP requests in ~51.

Thanks,
Al

That happens when you turn Dev mode on, which disables web resource batching so reach web resource is downloaded separately (and can be hot-refreshed)

3 Likes

Hi David,

Well, this is not run as part of a plugin project; it is run via atlas-run-standalone, so there is no pom file to turn devmode on/off. Are you sure? How do I turn it off?

No, I’m not sure. But maybe the run-standalone POM (which you don’t see but exists) activates debug mode - I guess that’s a question you should ask Atlassian’s Developer Support.

Yeah, you know this standalone Confluence instance is very slow too. It might be better to just create a skeleton plugin project and modify the pom and run an instance from there.

The pom has an <enableFastdev> element. Is that the dev mode you were referring to? I’ve always set it to false.

FYI, this issue is not resolved. david2 provided a lead, but researching it returns nothing and I don’t have time to break open jar files and hack a solution…

If an Atlassian cannot provide a solution here, then take this as a suggestion for improvement.

This isn’t a support forum. This is a community for developers about building things around Atlassian’s apps. If you need support - support.atlassian.com.

That said - you’re running in dev mode (since you’re using the sdk) so js/css batching is off. If you’re running a production instance you need to move to a real instance ASAP.

/Daniel

2 Likes

I know this isn’t a support forum. I think this would be the place to answer my question and resolve the issue with the SDK. And since you mention it, another thing for your SDK dev leads, it makes no sense that Jira launched with atlas-run-standalone would run with batching off, but launching Jira with atlas-run for a plugin would run with batching on. Apps run with atlas-run-standalone generally are not being debugged and are only used (typically) as supporting apps while developing another app, e.g., developing a Confluence plugin that requires Jira as a supporting app. Furthermore, not providing a simple way to turn-off batching for an atlas-run-standalone app is perplexing and makes running any app that way not worth the hassle. Take this feedback and do with it as you wish.

none of us are sdk developers nor do any of us likely interact with the sdk developers much.

atlas-run and atlas-run-standalone are awfully slow. In most cases it’s IMHO better to just run a normal Jira instance and optionally enable debug mode and disable resource minification, so you can debug JS code in the browser if needed.

You also don’t risk throwing away your database by accident (when running atlas-clean) and you can use a real database (like Postgres) instead of H2, which improves performance again and sometimes might catch errors in your Active Objects which work just fine on H2.

1 Like

This is what I’ve resorted to as well since the atlas- commands are just unbearably slow. Docker is also recommendable. Page loads take 30-60 seconds for me when using the SDK.

1 Like

BTW even if you’re running in a dev mode instance, you can toggle resource batching by pressing the “b” button while on a webpage. A little flag will show up showing you the new status of the we resource batching and it will take effect immediately, which you’ll seen when hard reloading the page.

For questions on AMPS / Atlassian SDK development, you’ll want to cc @mpaisley.

1 Like

Thanks Ulrich, are you able to do Java debugging with a normal instance, i.e., configure it to listen on a port to attach the eclipse debugger?

Yes, simply edit the file /bin/setenv (.bat or .sh depending on your OS) of your Atlassian product installation to include your JVM parameters.

If you want to use a remote debugger that would probably be
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
:slight_smile:

1 Like

Thanks for the reminder, but the “b” toggle does not work with atlas-run-standalone… just tested it.

Instead of start-jira.sh I just run catalina.sh jpda start. If you want more options, use the options Sven posted. My Jira runs on 8080 and the debugger by default uses port 8000 (which also seems to be Eclipse’s default).

Oops, you’re right. My bad. Probably a functionality of the quickreload plugin…