我们在使用 WSO2 ESB sincronizer 时遇到了一些问题,因为我们有集群配置,所以我们使用 svn 来存储“存储库/部署/服务器”的内容。carbon.xml 配置如下:
<DeploymentSynchronizer>
<Enabled>true</Enabled>
<AutoCommit>false</AutoCommit><!--true for the mgt node-->
<AutoCheckout>true</AutoCheckout>
<RepositoryType>svn</RepositoryType>
<SvnUrl>https://svn/x/trunk/serverESB/desenv/</SvnUrl>
<SvnUser>user</SvnUser>
<SvnPassword>password</SvnPassword>
<SvnUrlAppendTenantId>false</SvnUrlAppendTenantId>
</DeploymentSynchronizer>
它可以正常工作一段时间,但在一些部署和取消部署后它停止工作。尽管它仍然给出了它要进行 sincronize 的消息,并且 svn 更新似乎已正确执行,但 esb 不会加载新部署的 XML:
TID: [0] [ESB] INFO {org.wso2.carbon.core.deployment.SynchronizeRepositoryRequest} - Received [SynchronizeRepositoryRequest{tenantId=-1234, tenantDomain='carbon.super', messageId=f9b51e23-8a3c-4f08-acb0-5a1f0f4590b2}] {org.wso2.carbon.core.deployment.SynchronizeRepositoryRequest}
TID: [0] [ESB] INFO {org.wso2.carbon.core.deployment.SynchronizeRepositoryRequest} - Going to synchronse artefacts. {org.wso2.carbon.core.deployment.SynchronizeRepositoryRequest}
通常在此消息之后,它会打印 INFO 说明部署了新服务,但它没有发生。
当我尝试关闭服务器时,它会给我消息“等待部署完成......”,然后卡住(所以我必须使用“kill -9”杀死):
TID: [0] [ESB] INFO {org.wso2.carbon.core.ServerManagement} - Waiting for deployment completion... {org.wso2.carbon.core.ServerManagement}
如果我手动重新启动它,所有部署都将正常工作,并且 sincronizer 将再次开始正常工作(一段时间)。
ps:我尝试使用操作系统的 svn (SuSe) 以及 SVNKit 模块。我们的 svn 存储库版本是 1.5.1。