Bitbucket Data Center load profiles
Atlassian Advisory Services and support engineers can better tailor their configuration and environment recommendations when they know the overall size of your instance. This information also helps you better plan for the growth and scaling of your instance.
To help you estimate your instance's size, we narrowed down which metrics were most useful in doing so.Next, we created a set of profiles (or size tiers) for those metrics, ranging from Small to XLarge. We based each metric's profiles on a wide range of Server and Data Center customer case studies, covering instances of varying infrastructure sizes and configurations.
Your instance could fall under different profiles for each metric. For example, you could have an XLarge number of repositories, with everything else at Medium or below. We'll help you figure out the overall size of your instance!
Determine your content profile
Your content profile refers to the amount of data in your database, which impacts how long it takes to execute queries and perform common tasks like garbage collection. We use the number of repositories, licensed users, and pull requests to determine an instance's overall content profile.
Metric | How to collect it |
---|---|
Repositories |
|
Licensed users |
|
Pull requests | You can easily get the number of pull requests is to run the following query on the database:
|
Once you've collected all three metrics, use the table below to see where each metric fits:
Repositories | Active users | Pull Requests | |
---|---|---|---|
Small | up to 6,200 | up to 3,000 | up to 118,000 |
Medium | 6,200 to 21,000 | 3,000 to 10,000 | 118,000 to 350,000 |
Large | 21,000 to 52,000 | 10,000 to 25,000 | 350,000 to 850,000 |
XLarge | above 52,000 | above 25,000 | above 850,000 |
Determine your traffic profile
There are many metrics that you can use to determine the amount of traffic your instance gets, but we use total GIT hosting calls per hour to determine your overall traffic. This covers all GIT-related read and write calls.
To collect this metric, you need to enable JMX; for instructions, see Enabling JMX counters for performance monitoring. To get the total Git hosting calls, monitor your hosting statistics for both SSH and HTTP:
Protocol | Object name |
---|---|
SSH | com.atlassian.bitbucket:name=SshHostingStatistics |
HTTP | com.atlassian.bitbucket:name=HttpHostingStatistics |
The sum of both objects make up your total GIT hosting calls. Monitor the amount of calls you get over a given workday, and then calculate the average number of calls during the busiest 8-hour period. Once you've measured your average git hosting calls per hour, use the table below to see where your site fits:
Hosting calls per hour | |
---|---|
Small | up to 5,200 |
Medium | 5,200 to 14,500 |
Large | 14,500 to 32,700 |
XLarge | above 32,700 |
How to use this information
You may want to share your content and traffic profiles with your Advisory Services, if you have one, or with your support engineer the next time you need to open a ticket relating to performance, stability, or infrastructure generally.
In the examples above, our site would be classified as Large for data, and Medium for traffic.
You can also use these profiles as a point-in-time snapshot, to track the relative size of your instance over time. Stepping up into the next content or traffic profile is often a sign that it's time to evaluate your current infrastructure, and decide how you'll scale to meet the increased load.
Large and XLarge deployments
If your current or projected load profile is sized Large, read through our Infrastructure recommendations for enterprise Bitbucket instances on AWS. Here, we provide recommendations for deploying appropriately-sized infrastructure on AWS. That page also explains the test methodology and results that form the basis of those recommendations.
Help us help you
Collecting usage data allows us to measure the user experience across many thousands of users and deliver features and improvements that matter. It also helps us create the average profiles, like the ones on this page, that can be used to provide better configuration and environment recommendations.
If your site doesn't currently send analytics data to us, check out our Data Collection Policy to find out about what we collect, how it's sent to us, and how you can opt-in.