摘要: 为什么要打造多租户的企业级Maven私有仓库服务? 在Java的世界中,我们通常使用Maven的依赖体系来管理构件(artifact,又称为二方库或三方库)的依赖。Maven仓库用于存储这些构件。一般的远程仓库(比如Maven Central)只提供下载功能。
为什么要打造多租户的企业级Maven私有仓库服务?
在Java的世界中,我们通常使用Maven的依赖体系来管理构件(artifact,又称为二方库或三方库)的依赖。Maven仓库用于存储这些构件。一般的远程仓库(比如Maven Central)只提供下载功能。而用户想要管理自己的私有二方库,就只能搭建Maven私服。常用的Maven私服软件有Nexus和Artifactory等。Maven私服是很多企业都需要的功能。
如今云服务越来越深入人心,用户不仅纷纷把自身的服务发布到云端,甚至也会使用云服务来管理自己的整个研发流程。而如果有一个企业级的Maven私有仓库服务,用户只需要简单的开通服务,就可开箱即用,无需自己搭建,免去了维护的烦恼。
现有Maven私库软件的问题
打造这样的服务首先可能会考虑借助已有的一些Maven私库解决方案进行改造。Nexus和Artifactory的开源版虽然支持多租户,但由于其缺乏高可用特性,无法进行水平拓展,单节点的稳定性达不到要求。Nexus和Artifactory的商业版本具有高可用特性,但单集群支持的用户数始终有上限。
如下是Nexus的商业版本的高可用架构:
图片来源