Liferay Cloud IDE,多个开发人员在同一个 liferay 服务器上工作

Liferay Cloud IDE, Multiple developpers working on same liferay server

我们想开始使用 liferay。但是服务器太重,开发人员的计算机没有足够的 RAM。我们想集中服务器实例。

换句话说,我们想建立一个开发服务器,所有开发者都可以连接并直接在他们的网络浏览器中开发,编译,查看结果并将代码推送到 git 存储库。

我找到了一些很好的云 IDE,比如 eclipse CHE 和一个很好的 maven archetype 用于 liferay projet。所以我可以用 Maven 构建项目。但现在我想知道是否有可能配置 Liferay,就像每个开发人员都可以在不打扰其他人的情况下工作一样。如果可能的话,怎么做?

开发人员可以共享同一个数据库,可以使用不同的端口。也许,服务器可以生成临时 URL 像一些在线云编辑器。

我发现了这个 post Liferay With Multiple Server Instances,但我认为这不是最好的方法,因为他为每个项目创建一个服务器。我觉得太重了。

如有必要,我们的 IS 中有 kubernetes。

Liferay 的 tomcat 包,默认情况下,配置为进程最多占用 2.5G,但它可以 运行 少得多 - 默认值最近才被提高,因为许多人从不更改默认值,然后想知道为什么生产系统 运行 内存不足。对于一台机器上的 1 个并发用户(唯一开发人员),我猜想之前默认的 1G 堆 space 就足够了。你是说这对你的开发人员的机器来说太多了吗?

共享服务器上有许多开发人员会带来一个问题:是的,您可以从不同的机器部署不同的代码,但是:设置断点怎么样?你能连接多个调试器吗?如果出现故障,您如何知道最近的部署导致了故障?

共享服务器是一种集成技术,而不是开发技术。如果您的开发人员没有足够的可用内存来 运行 在他们的 IDE 旁边安装他们自己的 Liferay 服务器,当每个人都访问同一台服务器时,升级他们的机器比降低他们的速度要便宜得多他们无法正确调试。您支付一次内存费用,但您等待的开发人员按小时计费。

可以共享一台服务器吗?当然是啦。 有没有可能共享一台服务器而不互相打扰?我怀疑。

当您说:您认为它太重了:您的假设基于什么?实际的开发人员机器是什么样子的?是什么阻止您投资额外的内存?

共享一些基础设施很简单 - 即让所有基础设施都连接到同一个数据库服务器(并为每个人提供自己的模式)。但是额外的工作和设置可能需要您按小时支付给开发人员的费用与您为几个内存芯片支付的费用一样多。

另一种选择是:运行远程服务器上的 Liferay,但每个开发人员保留 1 个实例。这样你就不需要本地内存,但可以在云端拥有内存。计算您为远程云机器支付的费用是否高于为本地内存支付的费用 - 这个决定由您决定。