JIRA is slow, times out, doesn't respond sporadically with haproxy

Brian Cook June 29, 2017

Hello, during the course of some investigation with Atlassian Support we had discovered that JIRA was performing poorly due to being routed through a proxy. Atlassian Support had asked that we attempt to comment out some lines in our server.xml configuration file for "scheme", "proxyName", and "proxyPort" to test accessing JIRA directly (bypassing the proxy: https://confluence.atlassian.com/jirakb/how-to-bypass-a-proxy-and-ssl-to-test-network-connectivity-827328189.html )

It turned out that JIRA performed great after bypassing the proxy and after quite some time testing back and forth with the proxy configuration, it was clear that the slow-down and timeouts was coming from the proxy. 

Here are the lines we are using

       <Connector port="8080"

                   maxThreads="150"
                   minSpareThreads="25"
                   connectionTimeout="20000"

                   enableLookups="false"
                   maxHttpHeaderSize="8192"
                   protocol="HTTP/1.1"
                   useBodyEncodingForURI="true"
                   redirectPort="8443"
                   acceptCount="100"
                   disableUploadTimeout="true"
                   scheme="https"
                   proxyName="jira.redacted"
                   proxyPort="443"

        />

 And here is our haproxy config

frontend http-jira
    bind *:44333 ssl crt /etc/ssl/haproxy/jira_xxx.pem no-sslv3 no-tlsv10 no-tlsv11

backend jira
    balance roundrobin
    option httpchk
    server our-jira-server-1 our-jira-server-1.ourdomain.com:8080 check

would it have to do with the bind address being mismatched or is there something else we should include in the haproxy config?

Any help would be greatly appreciated.

1 answer

0 votes
Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
June 29, 2017

Those settings look fine for a simple proxy (although the round-robin is irrelevant for plain JIRA Server).  So I doubt it's the config.  As it's not JIRA, the question becomes what is your proxy doing - is it overloaded?  Broken caching?  Intermittent slow downs suggest load, but it's hard to tell.

Brian Cook July 7, 2017

I can't point to the proxy being overloaded as it's working fine everywhere else, it's just with JIRA that it seems to be acting up. What will happen is that JIRA will try to load up, say, an image from a thumbnail or you'll click a transition button. Then it will wait and wait, trying to load up the image or transition but never quite getting there.

Eventually, it will time out and you'll refresh the page. Then the transition or opening the image will work just fine. While it's loading, though, even if you refresh the page it doesn't seem to help. You have to wait anyway...

It seems minor but when you have several hundred users working in tandem it can be quite disruptive. 

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
July 7, 2017

I'd start with a look at the proxy logs - is it showing "JIRA Server not responding", or something else?

Whatever you find there, I'd still also check the JIRA logs to see what that is doing.  And maybe look into performance logging there (but I'd want to rule out the proxy before going into any detail there - no point blaming JIRA if it's the proxy.  And vice-versa)

Suggest an answer

Log in or Sign up to answer