5

我正在尝试在 2 个不同的端口 8080 和 9000 上运行 2 个 Dropwizard Server 应用程序。第一个应用程序成功启动,但是当我尝试在端口 9000 上运行时,我不断收到以下异常。我不明白的是为什么有 2 个端口由应用程序使用以及如何强制我的应用程序为第二个端口使用不同的端口号

INFO  [2014-03-22 17:17:28,031] org.eclipse.jetty.server.AbstractConnector: Started    
InstrumentedBlockingChannelConnector@0.0.0.0:9000 
WARN  [2014-03-22 17:17:28,033] org.eclipse.jetty.util.component.AbstractLifeCycle: FAILED   
SocketConnector@0.0.0.0:8081: java.net.BindException: Address already in use
! java.net.BindException: Address already in use
! at org.eclipse.jetty.server.bio.SocketConnector.newServerSocket(SocketConnector.java:96)    
~[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.server.bio.SocketConnector.open(SocketConnector.java:85) ~[jetty-
server-8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:316) ~
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.server.bio.SocketConnector.doStart(SocketConnector.java:156) ~
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
[jetty-util-8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.server.Server.doStart(Server.java:291) [jetty-server-
8.1.10.v20130312.jar:8.1.10.v20130312]
! at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
[jetty-util-8.1.10.v20130312.jar:8.1.10.v20130312]
! at com.yammer.dropwizard.cli.ServerCommand.run(ServerCommand.java:48) [dropwizard-core-
0.6.2.jar:na]
! at com.yammer.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:39) 
[dropwizard-core-0.6.2.jar:na]
! at com.yammer.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:58) 
[dropwizard-core-0.6.2.jar:na]
! at com.yammer.dropwizard.cli.Cli.run(Cli.java:53) [dropwizard-core-0.6.2.jar:na]
! at com.yammer.dropwizard.Service.run(Service.java:61) [dropwizard-core-0.6.2.jar:na]
! at com.paypal.demandgen.places.indexing.IndexingServer.main(IndexingServer.java:96)    
[classes/:na]
WARN  [2014-03-22 17:17:28,034] org.eclipse.jetty.util.component.AbstractLifeCycle: FAILED or
4

4 回答 4

8

使用 yml 文件中的以下设置在不同的端口上运行服务器(一些设置是为提高服务器性能而配置的常规设置)

server:
  applicationConnectors:
    - type: http
      port: 9179
      outputBufferSize: 32KiB
      idleTimeout: 30 seconds
      minBufferPoolSize: 64 bytes
      bufferPoolIncrement: 1KiB
      maxBufferPoolSize: 64KiB
      acceptorThreads: 1
      selectorThreads: 2
      acceptQueueSize: 1024
      reuseAddress: true
      soLingerTime: 600s
  adminConnectors:
    - type: http
      port: 9180
于 2014-10-27T19:33:18.240 回答
8

Dropwizard 实际上提供两个站点:主站点和位于不同端口的管理站点。管理部分允许您查看您网站上的指标和健康检查。

在这种情况下,问题是由于管理客户端,默认情况下在端口 8081 上运行。所以你还需要设置-Ddw.http.adminPort=9001(例如)

于 2014-03-22T19:34:25.477 回答
0

您可以尝试一件事,您可以检查控制台,如果您的服务器已经在运行,那么在控制台中您将看到一个红色按钮,如果该按钮已启用但已启用(可单击),则单击该按钮并重新运行您的代码,这次 Eclipse 将重新初始化服务器和端口的所有实例。

于 2017-02-17T05:28:13.313 回答
0

对我有用的是做出这些改变

server:
  applicationConnectors:
    - type: http
      port: 6666
    - type: https
      port: 6444
  adminConnectors:
    - type: http
      port: 6667
于 2021-07-06T10:11:22.120 回答