The Central Maven Repository is a public resource essential to the day to day work routines for millions of developers. It is a public resource that has transformed the way that open source communities distribute software artifacts, and we continue to see repository use increase over time. Central Maven Repository is currently serving around 30 TB to hundreds of thousands of clients every single month, and the traffic levels on central are steadily increasing. The Central Maven repository regularly breaks four million requests in a day. It is massive, and massively important. Sonatype employees play a large role in helping to maintain this public resource, and so do you.
While this continued growth is great, we’re starting to have some issues with edge-case usage patterns of the Central repository. In order to defend the availability of this essential public resource the team that maintains the Central Maven Repository strong suggests that you…
Start Using a Repository Manager
Clearly, we think Nexus is the best option out there, but there are others including Artifactory and Archiva. If you haven’t downloaded a repository manager, and you are using Maven (or Ivy), we strongly suggest that you download a repository manager to help us protect Central. Central can handle the current load, and we’re not in any danger of exceeding the limits of the systems that serve Central, but bandwidth translates to real energy use, and we’d like to think that people are interested in conservation. We’re at 30 TB and growing in 2008, time will only tell how quickly that figure grows. Installing a repository manager in your organization will help reduce congestion and make sure that we’re using our resources efficiently.
Our statistics suggest that there are single organizations with more than 50,000 hits per day for the same 100 files. In other words, either someone has configured an automated build to wipe out the local repository, or there are hundreds of developers at a single company being told to constantly wipe out ~/.m2/repository. Again, if you are making 50,000 requests to the Central Maven Repository, it is time to download Nexus and start taking some control over your own builds. If you are making 50,000 requests to Central, installing a local repository manager should save you some serious build time. When Maven is configured to hit a local Nexus instance, it will likely be using a fast network connection to a private resource. When Maven is configured to hit Central, you are competing with the millions of developers that use Maven.
If you work at an organization which uses Maven, you need to start using a Repository Manager today. By our calculations, if every organization that used Maven, used a repository manager. The traffic and usage profile of the Central Maven repository would be down dramatically. Repository managers like Nexus are easy to setup and freely available.