Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.net.ConnectException:连接被eureke服务器拒绝_Java_Spring Boot_Netflix Eureka_Spring Cloud Netflix - Fatal编程技术网

java.net.ConnectException:连接被eureke服务器拒绝

java.net.ConnectException:连接被eureke服务器拒绝,java,spring-boot,netflix-eureka,spring-cloud-netflix,Java,Spring Boot,Netflix Eureka,Spring Cloud Netflix,我正在尝试创建一个简单的eureka服务器,它将检测其他微服务,并且所有其他微服务都可以通过它进行对话。我正在使用spring boot 2.0.3 我的尤里卡服务器 EurekaServerApplication.java文件(eureka服务器) HelloServer应用程序 application.property(eureka服务器) application.yml(eureka服务器) 我的尤里卡客户 HelloServerApplication.java(eureka客户端) ap

我正在尝试创建一个简单的eureka服务器,它将检测其他微服务,并且所有其他微服务都可以通过它进行对话。我正在使用spring boot 2.0.3

我的尤里卡服务器 EurekaServerApplication.java文件(eureka服务器)

HelloServer应用程序 application.property(eureka服务器)

application.yml(eureka服务器)

我的尤里卡客户 HelloServerApplication.java(eureka客户端)

application.yml(eureka客户端)

当我运行eureka服务器时,我可以在访问服务器,但当我尝试运行eureka客户端HelloServerApplication.java时,eureka服务器显示以下错误,eureka客户端关闭-

eureka服务器上出现错误

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }
}
spring.application.name=eureka-server
server.port=8070
eureka:
  client:
    registerWithEureka: false
    fetchRegistry: false
    server:
      waitTimeInMsWhenSyncEmpty: 0
2018-06-25 17:26:30.250 ERROR 4635 --- [get_localhost-3] c.n.e.cluster.ReplicationTaskProcessor   : Network level connection to peer localhost; retrying after delay

com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused (Connection refused)
    at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:187) ~[jersey-apache-client4-1.19.1.jar:1.19.1]
    at com.netflix.eureka.cluster.DynamicGZIPContentEncodingFilter.handle(DynamicGZIPContentEncodingFilter.java:48) ~[eureka-core-1.9.2.jar:1.9.2]
    at com.netflix.discovery.EurekaIdentityHeaderFilter.handle(EurekaIdentityHeaderFilter.java:27) ~[eureka-client-1.9.2.jar:1.9.2]
    at com.sun.jersey.api.client.Client.handle(Client.java:652) ~[jersey-client-1.19.1.jar:1.19.1]
    at com.sun.jersey.api.client.WebResource.handle(WebResource.java:682) ~[jersey-client-1.19.1.jar:1.19.1]
    at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74) ~[jersey-client-1.19.1.jar:1.19.1]
    at com.sun.jersey.api.client.WebResource$Builder.post(WebResource.java:570) ~[jersey-client-1.19.1.jar:1.19.1]
    at com.netflix.eureka.transport.JerseyReplicationClient.submitBatchUpdates(JerseyReplicationClient.java:116) ~[eureka-core-1.9.2.jar:1.9.2]
    at com.netflix.eureka.cluster.ReplicationTaskProcessor.process(ReplicationTaskProcessor.java:80) ~[eureka-core-1.9.2.jar:1.9.2]
    at com.netflix.eureka.util.batcher.TaskExecutors$BatchWorkerRunnable.run(TaskExecutors.java:187) [eureka-core-1.9.2.jar:1.9.2]
    at java.lang.Thread.run(Thread.java:748) [na:1.8.0_171]
Caused by: java.net.ConnectException: Connection refused (Connection refused)
    at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_171]
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_171]
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_171]
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_171]
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_171]
    at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_171]
    at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:134) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:610) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:118) ~[httpclient-4.5.5.jar:4.5.5]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[httpclient-4.5.5.jar:4.5.5]
    at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:173) ~[jersey-apache-client4-1.19.1.jar:1.19.1]
    ... 10 common frames omitted
我尝试将两侧的所有属性移动到bootstrap.application文件,但没有成功


我尝试了这个解决方案:,但没有成功。

服务器端和客户端的eureka配置都非常敏感。服务url和默认区域配置应编写如下:

 service-url (Not serviceUrl):
   defaultZone(Not default-zone) : http://localhost:portNumberHere/eureka

尽管有以下设置,eureka似乎仍在尝试连接自身: eureka.client.register with eureka=false eureka.client.fetch registry=false 你有两个选择来解决这个问题 1-保留eureka的默认端口 2-将以下内容添加到您的应用程序中。eureka服务器的属性
eureka.server.maxThreadsForPeerReplication=0

以下YAML和application.properties文件中的配置适合我

命名服务器:YAML文件中配置的名称

application.yml

eureka.client.service-url.defaultZone:http://naming-server:8761/eureka

此外,在Eureka财产文件中,确保您已按照上述答案中的说明填写了以下内容

应用程序.属性

eureka.client.register-with-eureka = false
eureka.client.fetch-registry = false

您是否在服务器上缺少`defaultZone:http://${eureka.instance.hostname}:${server.port}/eureka/`,我已经在HelloServer的application.yml文件中将其添加为
serviceUrl:defaultZone:http://localhost:8070/eureka/
请签出,看起来您需要在客户端和服务器上都安装它。@CraigSmith我添加了
服务URL:defaultZone:http://localhost:8070/eureka/
在两个yml文件中(服务器/客户端). 现在服务器没有显示巨大的异常消息,而是显示-
2018-06-25 18:50:27.352信息9171-[nio-8070-exec-2]c.n.e.registry.AbstractInstanceRegistry:Registered instance HELLO-server/192.168.1.201:HELLO server:8071,状态为UP(复制=false)2018-06-25 18:50:27.414信息9171-[nio-8070-exec-3]c.n.e.registry.AbstractInstanceRegistry:注册实例HELLO-SERVER/192.168.1.201:HELLO-SERVER:8071,状态为DOWN(replication=false)
为什么既有application.properties又有application.yml?您可能应该选择其中一个。毫无疑问,您的意思是编写
defaultZone
。@BereketBabiso,我认为服务url和服务url都是相同的
 service-url (Not serviceUrl):
   defaultZone(Not default-zone) : http://localhost:portNumberHere/eureka
eureka.client.register-with-eureka = false
eureka.client.fetch-registry = false