java - Confluence 和 synchrony 无法启动

标签 java tomcat confluence

问题

当我尝试启动 Confluence 时,我总是得到这个异常:

30-Aug-2017 08:44:03.053 SEVERE [main] org.apache.catalina.core.StandardServer.await StandardServer.await: create[localhost:8091]:
 java.net.BindException: Address already in use (Bind failed)

这是日志和 server.xml:

我的confluence版本:confluence-6.3.1

到目前为止我注意到了什么

当我启动 confluence 时,它​​会生成一个进程(上午 08:41)

conflue+  5430  264 19.6 4935920 1606444 pts/0 Sl   08:41   7:24 /opt/atlassian/confluence/jre//bin/java -Djava.util.logging.config.file=/opt/atlassian/confluence/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dconfluence.context.path= -Datlassian.plugins.startup.options= -Dorg.apache.tomcat.websocket.DEFAULT_BUFFER_SIZE=32768 -Dsynchrony.enable.xhr.fallback=true -Xms1024m -Xmx1024m -XX:+UseG1GC -Datlassian.plugins.enable.wait=300 -Djava.awt.headless=true -XX:G1ReservePercent=20 -Xloggc:/opt/atlassian/confluence/logs/gc-2017-08-30_08-41-24.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=2M -XX:-PrintGCDetails -XX:+PrintGCDateStamps -XX:-PrintTenuringDistribution -Djava.endorsed.dirs=/opt/atlassian/confluence/endorsed -classpath /opt/atlassian/confluence/bin/bootstrap.jar:/opt/atlassian/confluence/bin/tomcat-juli.jar -Dcatalina.base=/opt/atlassian/confluence -Dcatalina.home=/opt/atlassian/confluence -Djava.io.tmpdir=/opt/atlassian/confluence/temp org.apache.catalina.startup.Bootstrap start

哪个使用8090端口

netstat -nap |grep :::80
tcp6       0      0 :::8090                 :::*                    LISTEN      5430/java

然后它产生另一个进程(在 08:43 AM)

conflue+  5430  264 19.6 4935920 1606444 pts/0 Sl   08:41   7:24 /opt/atlassian/confluence/jre//bin/java -Djava.util.logging.config.file=/opt/atlassian/confluence/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dconfluence.context.path= -Datlassian.plugins.startup.options= -Dorg.apache.tomcat.websocket.DEFAULT_BUFFER_SIZE=32768 -Dsynchrony.enable.xhr.fallback=true -Xms1024m -Xmx1024m -XX:+UseG1GC -Datlassian.plugins.enable.wait=300 -Djava.awt.headless=true -XX:G1ReservePercent=20 -Xloggc:/opt/atlassian/confluence/logs/gc-2017-08-30_08-41-24.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=2M -XX:-PrintGCDetails -XX:+PrintGCDateStamps -XX:-PrintTenuringDistribution -Djava.endorsed.dirs=/opt/atlassian/confluence/endorsed -classpath /opt/atlassian/confluence/bin/bootstrap.jar:/opt/atlassian/confluence/bin/tomcat-juli.jar -Dcatalina.base=/opt/atlassian/confluence -Dcatalina.home=/opt/atlassian/confluence -Djava.io.tmpdir=/opt/atlassian/confluence/temp org.apache.catalina.startup.Bootstrap start
conflue+  5756 82.4  8.0 4665924 658816 pts/0  Sl   08:43   0:40 /opt/atlassian/confluence/jre/bin/java -classpath /opt/atlassian/confluence/temp/1.0.0-release-confluence_6.1-a1ab321e.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/postgresql-42.1.1.jar -Xss2048k -Xmx1g synchrony.core sql

哪个使用8091端口

tcp6       0      0 :::8090                 :::*                    LISTEN      5430/java
tcp6       0      0 :::8091                 :::*                    LISTEN      5756/java

片刻之后它无法启动。如果我终止同步进程(第二个),汇合会正确启动,但我无法编辑文档,因为我在 synchrony-proxy/heartbeat 上收到 502 错误> 网址。

那我该怎么办呢?我可以把同步放到另一个端口吗?或者同步应该更快地启动并释放端口?预期的行为是什么?

最佳答案

可以通过设置系统属性更改同步端口:

Synchrony runs on port 8091 by default. If this port is already in use by another application on your server you can use the the synchrony.port system property to change it to an available port.

另外:

Multiple Synchrony processes If you see an error immediatley in the editor, but Confluence reports that Synchrony is running, check to make sure that you only have one Synchrony process running. If you do have multiple Synchrony processes running, stop Confluence, kill the additional Synchrony processes and then restart Confluence. You can avoid this problem by always using stop-confluence.sh / stop-confluence.bat to stop Confluence, rather than simply closing the Tomcat window.

documentation 中所述

关于java - Confluence 和 synchrony 无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45954130/

相关文章:

java - 第一个confluence servlet插件,ClassCastException问题

java - 请帮我读取一个文件并计算其中有多少个特定的字母JAVA

java - 使用JDBC 8连接到Excel

java - Windows Tomcat 上的 JFreeChart NoClassDefFoundError

tomcat - 已解决- Tomcat 9. 如何将 catalina.out 传递给服务日志 (journalctl)

velocity - 如何在 Confluence 宏中获取当前 URL?

java - JMenu setDelay() 弹出延迟

java - 从 Jenkins 或网站重启 Tomcat

tomcat - JSF 2 自定义 404 错误页面不会与具有配置的 facelet 扩展的不存在页面一起显示