Performance and uptime are crucial when hosting any application. For the Atlassian suite, the use of apps can have a major impact on these hosting aspects. There are many third-party developers as well as Atlassian developed apps that are available to be installed within the Atlassian tech stack. Depending on the app installed, each of these apps will have its own impact on the application and its health. Many apps that may be installed are considered lightweight and the impact would be very minimal; however, there are apps that are resource intensive and can cause significant impact of application performance. The apps that tend to cause the largest impact on application performance are those that allow customization of scripts and manipulation of data within those scripts, especially if these scripts are capable of running on a particular cadence or during certain issue functions. Other app types that are frequently found as the culprit for performance issues are those that return long running database queries. Common impacts from these resource intensive types of apps are high CPU usage and high memory usage. When either of these metrics begin to rise, the server is forced to work harder in order to operate the application, which then can cause the application to face performance degradation, manifested in slow page loads, timeouts, or outages.
There are best practices you can implement in order to prevent your apps from having an impact on your application's performance. It is highly recommended that you install apps that are supported and developed by a trusted developer. Be sure to also read any documentation and truly understand what the app does before installing. It is extremely important that the apps are always up-to-date as well: apps may have bug fixes in releases that are ahead of yours, and even though you may not be currently facing any issues with your release, it is best to be sure you are on the latest version so that you can prevent any issues that may already be known by the developers. We also recommend that you thoroughly test any app you are considering installing within a non-production environment. Running User Acceptance Testing in a lower environment will allow you to capture any performance issues that may come from the app. Following this approach will strengthen your instance and help prevent any potential impacts your apps can have on your Atlassian applications.
If you run into any trouble with your Atlassian apps, let us know, we'd love to help you make the best of your tools.