Scaling Jenkins: Central Controller vs Instance Sprawl | The TeamCity Blog
Blog post from JetBrains
Jenkins, a widely used CI/CD tool, faces scaling challenges as organizations grow, primarily due to its single-controller architecture, which can become a bottleneck with increasing build demands. This setup competes for resources and leads to issues like slow performance and controller instability when the number of builds and complexity increases, making operational costs and plugin management difficult. Organizations typically attempt to scale by using either a large centralized controller, which risks single points of failure, or multiple controllers, leading to "instance sprawl" and maintenance challenges. In contrast, modern platforms like TeamCity offer a server-agent architecture emphasizing built-in integrations and centralized governance, which reduces dependency on plugins and operational overhead. This architectural distinction allows TeamCity to offer more predictable and stable CI/CD operations at scale, prompting organizations to consider whether they should focus on engineering their CI platform or their product.