在PHP开发中使用Satis和Packagist ?认为JFrog Artifactory !
如果您正在用PHP开发服务器端代码,那么您很有可能正在使用PHP Composer来管理您的依赖项并从中获得第三方组件Packagist.要托管内部私有包,可以使用Toran Proxy或自己的Git存储库。您甚至可以为您的存储库使用开源的Satis。
嗯,猜猜看。你的生活变得轻松了。为什么?
因为Artifactory现在支持PHP的作曲家存储库。这意味着它可以从Packagist代理和管理您需要的依赖项,并在私有PHP Composer存储库中托管您的内部包和索引文件。当然,Toran Proxy可以满足您管理PHP依赖关系的一些需求,但是在迁移到Artifactory之前,您无法获得许多功能。这里有一些。
通用
您可能正在使用Composer进行PHP开发,但同级其他人正在使用鲍尔用于前端开发,以及大楼的其他地方,你的DevOps正在提供虚拟化环境码头工人.您需要维护多少不同的存储库来支持不同的开发环境?答案是一!
首先,Artifactory是一个通用的工件存储库,这意味着它支持所有主要的包格式。但是构建和持续集成呢?有些团队可能会使用Maven与詹金斯CI,其他人可能会使用Gradle与TeamCity,而另一些人甚至可能使用云CI提供商。好消息是Artifactory支持所有这些场景。它与所有常见的构建工具和CI服务器无缝地工作,因此无论您的开发生态系统是如何构建的,Artifactory都可以处于中间位置,托管您的内部包,并成为您从任何外部资源获取包的一站式商店。
智能搜索和AQL
企业工件存储库可以快速增长到承载数百万工件,并且找到您碰巧要查找的一个特定文件可以很容易地成为二进制干草堆中的针。
Artifactory使搜索既简单又复杂。从基于名称和创建日期等固有属性的最简单搜索,到基于属性(包括自定义属性)的搜索,再到基于校验和的搜索工件,Artifactory提供了许多不同的方法来查找工件。然后,有人工查询语言(AQL)搜索超级英雄。AQL为您提供了一种简单的方法来制定任何复杂程度的查询,使您可以轻松地使用任意数量的搜索条件、过滤器、排序选项和输出字段来锁定该查询。AQL有效地将您的存储库和元数据变成以前无法利用的信息金矿。尝试搜索从Packagist下载的具有非“Apache”许可证依赖项的PHP包。您只能使用Artifactory上的AQL来做到这一点。
企业级存储库
Satis可以托管您的内部私有包,但是它支持跨团队协作有多好呢?如果你需要与另一个团队在地球的一个角落工作,然后,你的QA团队在地球的另一个角落。然后,萨提斯(或托兰代理)有多稳定。它曾经宕机或无法使用吗?作为依赖项管理器,这对开发团队和构建服务器非常关键。然后,您的包托管在哪里?当然,在你的文件系统里。您的文件系统可以处理多少tb ?在需要时添加存储有多复杂?Artifactory对所有这些问题都有答案。
首先,让我们谈谈全球合作。通过支持多推复制, Artifactory在多个分散的站点保持存储库同步,因此在全球不同地区工作的团队有效地在他们的工作存储库中看到相同的工件。现在,让我们谈谈可用性。Artifactory可以部署在一个高可用性使用冗余服务器架构进行配置,可提供5 - 9的可用性。由于没有单点故障,即使一台服务器出现故障,其他服务器也可以继续为所有用户提供服务。最后,我们来到了仓库。Artifactory提供了无与伦比的存储功能,因此您的对象存储有效地具有无限的潜力,可以根据您的需要进行增长。不管是通过filestore分片功能,或基于云的对象存储(AWS或GCP), Artifactory对对象存储的支持允许您的存储库随着业务的增长而大规模扩展。
这只是触及了表面。我可以继续谈论一些事情,比如远程而且虚拟存储库,用户管理,与企业认证系统的集成LDAP而且活动目录,SSO,SSH,OAuth身份验证,用户插件,GPG签署还有更多,这些你都无法从萨提斯或托兰代理那里得到。在使用Composer开发PHP时,对于真正的企业级存储库管理,您需要Artifactory。