The Customer – a software development firm producing enterprise ready cloud software for businesses around the globe – had been a long-time user of Jira Software Server and Confluence Server as integral parts of their development and DevOps toolchain for many years. Before contacting Automation Consultants, the customer’s Atlassian applications had been hosted and supported by an external outsourcing partner. Due to persistent performance issues with Jira that had been left unresolved, the customer decided to migrate to a new hosting environment based in AWS, managed and supported by Automation Consultants.
Following a period of discovery, Automation Consultants migrated the customer’s large-scale Jira and Confluence applications from the previous hosting platform to a new AWS platform, designed by Automation Consultants to follow both Atlassian best practice and AWS ‘Well-Architected’ design principles. The migration was fully tested, with a trial run in a non-production environment and subsequent UAT signed off by the customer’s key stakeholders. Once the trial migration had been performed successfully, the live migration was done over a weekend to eliminate any outage in business hours and minimise disruption to the customer.
After the migration, Automation Consultants’ support team began working on understanding the challenges faced by the customer’s Atlassian administrators. Many project and system administrators complained of general poor performance of Jira Software, with occasional slowdowns and crashes, which had historically had a widespread impact on productivity. One key component of the solution that Automation Consultants designed for the customer was the inclusion of comprehensive infrastructure and JVM monitoring. Amazon Cloudwatch was used for this, as it was determined to be the simplest and most cost-effective solution.
Through investigating system settings, reviewing data from Cloudwatch and performing analysis of thread dumps during slowdowns, AC was able to pinpoint the key factors leading to poor performance including:
- Suboptimal configuration of JVM parameters;
- Widespread, unrestricted usage of ScriptRunner for Jira, resulting in many suboptimal and computationally intensive scripts that when run caused severe degradation of performance;
- Large scale EazyBi data imports taking place during working hours;
- Extensive usage of the REST API for certain reports with no limitations in place.
Over time, Automation Consultants worked with the application’s administrators to rectify the above problems. Optimisations were made gradually to fine-tune the JVM configuration for the application’s workload, and the frequency of EazyBi data imports was set to ensure large imports did not take place during working hours. Automation Consultants produced a report highlighting multiple suboptimal ScriptRunner scripts across the application and making recommendations designed to reduce the computational load on the system.
As these changes were implemented, the customer reported a marked improvement in application performance and stability. Since then, the application has been well maintained and is running steadily with good performance.