The benefits of using a Binary Repository Manager in your software development pipeline are unarguable. Reliable and consistent access to remote artifacts, integration with your build environment, distribution of artifacts and replication of repositories are just a few of the reasons. There are, of course, many more benefits that increase your organization’s productivity in software development.
If you ask a hundred developers which is the best Binary Repository Manager out there, many will look at you and ask, “Binary what?” But those who are familiar will mention either Sonatype Nexus or JFrog Artifactory. A dry comparison matrix of these two products will indicate that they are very similar, however if you dig a bit deeper, you’ll find that what looks the same on the outside may be very different on the inside.
This paper emphasizes some of the differentiators of Artifactory that make it the best Binary Repository Manager available on the market today
|Support all major build tools, packaging formats and CI servers.||–>||Freedom of choice. One product serving all your binary needs.|
|Full support for Docker.||–>||Secure, private clustered Docker registry.|
|Enterprise features.||–>||High Availability configuration, S3 Object Store, Multi-push replication.|
|Checksum-based storage.||–>||Superior performance.|
|Fully reproducible builds.||–>||Save time and money when dealing with production issues.|
|Custom properties and user plugins||–>||Implement any custom company policy for binary management.|
|Advanced search with Artifactory
Query Language (AQL).
|–>||An easy way to formulate complex queries to search through the
goldmine of metadata in your repositories.
|Competitive pricing and unbeatable
|–>||24/7 support coverage. Pay per server, and get an unlimited
number of seats.
|Artifactory Cloud – Saas based
|–>||All the benefits of the best Repository Manager instantly set up on
Support for Docker
Artifactory is a fully-fledged repository for Docker images, and supports all Docker Registry APIs providing the image management and security features needed by enterprise Docker users:
> Distribute and share Docker images across your organization using local repositories.
> Proxy and cache remote Docker registries with remote repositories.
> Secure “docker push” and “docker pull” with access control.
> Reliable and consistent access to Docker images.
> Smart search for images.
Others do not support Docker.
Artifactory provides a number of enterprise features that are not available from other Binary Repository Managers:
Unparalleled Stability and Reliability with High Availability Configuration
Playing such a central role in the management of binaries, your Binary Repository Manager can become a missioncritical component of your organization meaning that any downtime can have severe consequences.
Artifactory is the only Binary Repository Manager available that supports a High Availability network configuration. With a cluster of 2 or more servers on the same Local Area Network, Artifactory maximizes your uptime and can take it to levels of up to “five nines” availability. Moreover, your system can accommodate larger load bursts with no compromise to performance. With horizontal server scalability, you can easily increase your capacity to meet any load requirements as your organization grows.
Artifactory is the only Binary Repository Manager offering multi-push replication, allowing you to simultaneously replicate a local repository to multiple, geographically distant target sites. This critical capability enables smooth geographic failover and fast recovery in the event of a disaster. Since replication is asynchronous, the process is fast, it minimizes the time during which repositories are not synchronized and does not incur any slowdown in responsiveness.
S3 Object Storage
Artifactory seamlessly manages binaries stored with any S3 storage provider on the cloud. This provides:
> Unlimited scalability since your files are on the cloud
> Security as provided by your S3 storage provider
> Disaster recovery since your binaries are on a distributed file system
Superior Performance Through Checksum-Based Storage
Artifactory optimizes storage by ensuring that any binary is only stored once on the file system. Rather than storing the file in its original name under a specific path, Artifactory creates a checksum of the file (MD5 and SHA1) and renames it to its checksum. All the metadata about a file is then stored in the Artifactory database.
Using checksum based storage, any operation done on an artifact (copy, move, delete) is actually implemented by changing the metadata stored in Artifactory’s database. Since database transactions are much faster than file system operations, this results in a performance boost that makes Artifactory up to 5 times faster than competing products.
Let’s first consider the simple operation of deleting a set of files. When storage is directly on the file system, you need to wait until all the files are gone. This can take time if your files are big. Using Artifactory’s checksumbased storage, delete operations are effectively instant. All the files are just marked as deleted through a fast database transaction, and the actual deletion from the file system only happens transparently in the background during the next scheduled garbage collection. Now consider promoting your builds through your deployment pipeline. This means copying or moving what may be hundreds of Megabytes from one repository to another. An operation that can take several minutes, and locks files in the process. And if you’re doing this several times a day, it can become a real nuisance and hindrance to development. In artifactory this is a quick database transaction which is effectively instant.
Quickly Recover from Production Issues with Fully Reproducible Builds
Bugs discovered in production can become nightmares that are urgent to fix. But to fix bugs, it’s important to recreate the exact build and the environment in which the bug was reported. Artifactory is the only Binary Repository Manager that stores exhaustive build information including specific artifact versions, modules, dependencies, system properties, environment variables, user information, timestamps and more. With this “Bill of Materials”, it is easy to faithfully reproduce a build at any time. Moreover, with built-in “Diff” tools you can compare builds and therefore know exactly what changes were introduced from one version to another.
Implement Any Development Policy with Custom Properties and User Plugins
No product can provide every feature that customers want out-of-the-box. However, it’s important to provide tools that allow each organization to customize your product to meet their specific requirements in the development cycle.
Custom properties is a unique feature in Artifactory that lets you attach any property to artifact metadata. Artifactory’s ability to search for artifacts based on all of these properties can be used to implement any corporate policy. Let’s consider an example in which a build can only be promoted to production if it passes the following “quality gates”:
> It has passed 3 tiers of QA (each tier is a separate property)
> It receives approval from legal
> It receives approval from marketing
> It has been backed up
With Artifactory, you can define a custom property for each of these gates to determine if a build is ready for production or not. You can find all production-ready builds through the Artifactory UI, but more importantly, your build tools can automatically determine which builds can be promoted to your production repository.
User Plugins allow developers to implement custom behavior that can be triggered by virtually any action on an artifact. Together with custom properties, user plugins make it easy to support any workflow required by your organization. To keep things simple, user plugins are written as Groovy scripts and have a simple Domain Specific Language (DSL) to wrap them as closures. Plugins can therefore be developed very easily and be deployed on-the-fly with no downtime. While other repository managers do support user plugins, they must be written in Java which makes it more complicated. In many cases, due to this added complication, many organizations just don’t bother writing plugins, and adhering to organization policies becomes a manual process.
Advanced Search with Artifactory Query Language (AQL)
Unique to Artifactory, AQL gives you unprecedented flexibility in how you search for artifacts. It offers a simple way to formulate complex queries that specify any number of search criteria, filters, sorting options and output fields. And as a RESTful API which uses data streaming to provide output data, it is extremely fast and efficient with unbeatable response time and low memory consumption, which goes on to improve your build times.
No matter how many files your organization may create, AQL lets you assemble builds with any set of components, define highly specific cleanup policies, find all weird or unusual licenses on any set of artifacts and much more. With AQL you are not limited by repository type and can search on any field or property found in the repository. Every bit of data in your repositories has now become available for you to mine.
Competitive Pricing and Unbeatable Support
Artifactory is offered at the most competitive prices available on the market today. You only pay once for each instance of Artifactory. There is no limit to the number of seats or users per instance. Once you have taken the Artifactory path, you never walk alone. JFrog offers pro-active and responsive SLA-based support packages with unbeatable response times – 4 hours for critical issues, and 24 hours in general.
Instant Binary Repository Management with Artifactory Cloud
Artifactory is the only Binary Repository Manager that is also offered as SaaS-based solution, and this offers several benefits:
> Instant setup and configuration – you are ready to go within minutes.
> Stay up-to-date with the latest version and all the features of Artifactory Pro.
> Interactive dashboard to manage your repositories and account.
> Reduced hardware footprint since there is no server that you need to buy, install, configure, maintain or monitor.
> Secure and reliable since all hardware is fully redundant and constantly monitored.
> Periodic backups are run for your repository content and configurations.
> Privacy and protection. Your data is securely accessed via SSL.
> Complete access control by managing internal users and groups.
Artifactory’s advanced feature set, full support for all major packaging formats with comprehensive metadata, integration with all major build tools and CI systems and unique advanced technologies have made it the choice of thousands of companies in every industry. The most discriminating industry giants like Apple, Netflix, Oracle, VMware, Twitter, Yahoo, Credit Suisse and others enjoy enterprise features that no other repository manager can provide. With out-of-the-box integrations available through VMware, Pivotal (Cloud Foundry), CA (Nolio deployment tool), Microsoft (Azure), IBM (uDeploy), Chef, CloudBees and others, Artifactory will continue to lead the way, both technically and commercially, in the Binary Repository Management and Continuous Integration domain.