Hi Atlassian Team,
We have developed a Custom Issue Event listener that listents to all evetns happed on configured projects and for each event it invokes a Rest API method which is deployed outside jira.
We have encountered the Jira was slow when updating, transitioning and creating issues for the configured projects. In other words, the three operations (issue create, issue update, generic event) are taking extra time to complete.
If we uninstall the plugin and trigger the same three operations, the process time is very quick.
We would like to improve peformance of these standard events when the plugin is installed.
We are using the Jira Api com.atlassian.sal.api.net.Request (requestFactory.createRequest) to invoke our on premise Rest resouce.
We are thinking to make asynchronous calls to our onpremise Rest api to save process time. we are beliving the current api is synchronous call and thats why it is taking extra process time for the above events.
Please let us know your suggestions.
Hi Atlassian Team,
Well not Atlassian but… The atlassian-events is not multi-threaded. Whatever code that’s being registered to be triggered is happening on the same thread that the user is manipulating JIRA with. So if you’re calling out to a remote system every time that somebody makes a change to an issue and your JIRA instance is busy - yeah it will get sluggish real quick.
Do you need it to be real time? Could you write a scheduled job that runs every 5minutes and just checks for updated issues (specific fields etc) using JQL. Or have you event listener create an AO entry in the database with the issue key. Then through a scheduled service you can submit the updated issues.
Thanks Much Daniel for your recommendations. I would discuss the above mentioned recommendations with my manager and would get back to you if I need any details.
Really appreciate your help.
Thanks Much Daniel. I forgot to mention that we have implemented your suggested approach and we went to production last month. The issue is resolved now. Thanks Much for your help.