【问题标题】:Spring cloud Hystrix not workingSpring Cloud Hystrix 不工作
【发布时间】:2018-07-21 02:40:04
【问题描述】:

我正在从公共方法内部调用两个标有@HystrixCommand 的私有方法。但是 Hystrix 断路器不工作。 如果我将 @HystrixCommand 移动到公共父方法,它可以工作,但我不希望它在顶部。

public PersonResponseModel getPerson(String nino,int id)
    {
        //person data from database
        Person person=fetchPerson(nino);
        PersonResponseModel personResponseModel=personMapper.personToPersonResponse(person);

        //Get org data from extenal resource
        OrganizationDTO organizationDTO=getOrganizationData(id);
}

   @HystrixCommand
    private OrganizationDTO getOrganizationData(int OrganizationId)
    {
        randomlyRunLong();  // Testing 
        ResponseEntity<OrganizationDTO> reponse= organizationClient.getOrganization(OrganizationId);
        OrganizationDTO organizationDTO=reponse.getBody();
        return organizationDTO;
    }

    @HystrixCommand
    private Person fetchPerson(String nino)
    {
        return personRepository.findByNino(nino);
    }

这是一个很常见的场景我希望spring cloud和Hystrix应该支持这个。

【问题讨论】:

  • 在这里查看我的答案stackoverflow.com/questions/48628164/…
  • 我已经检查了你的答案。你的意思是如果我将这些私有方法移动到单独的类中它会起作用吗?如果我错了,请纠正我。
  • 是的。你是对的..

标签: spring spring-boot spring-cloud-netflix hystrix netflix


【解决方案1】:

问题已通过将使用@HystrixCommmand 注释的单个方法移动到单独的类文件和断路器开始工作来解决。

谢谢,pvpkiran。

【讨论】:

    猜你喜欢
    • 2018-10-05
    • 2017-08-22
    • 2016-06-18
    • 2020-06-14
    • 2016-03-31
    • 2015-05-31
    • 2015-06-13
    • 2016-12-08
    • 2018-07-18
    相关资源
    最近更新 更多