zoukankan      html  css  js  c++  java
  • spring cloud spring-hystrix

    <dependencyManagement>
    		<dependencies>
    			<dependency>
    				<groupId>org.springframework.cloud</groupId>
    				<artifactId>spring-cloud-dependencies</artifactId>
    				<version>Dalston.SR3</version>
    				<type>pom</type>
    				<scope>import</scope>
    			</dependency>
    		</dependencies>
    	</dependencyManagement>
    	<dependencies>
    		<dependency>
    			<groupId>org.springframework.cloud</groupId>
    			<artifactId>spring-cloud-starter-config</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.cloud</groupId>
    			<artifactId>spring-cloud-starter-eureka</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.cloud</groupId>
    			<artifactId>spring-cloud-starter-ribbon</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.cloud</groupId>
    			<artifactId>spring-cloud-starter-hystrix</artifactId>
    		</dependency>
    		
    	</dependencies>
    

      

    @Service
    @DefaultProperties(defaultFallback = "getMemberFallback")
    public class MemberService {
    
    	@Autowired
    	private RestTemplate restTpl;
    
    	@HystrixCommand(fallbackMethod = "getMemberFallback", groupKey = "MemberGroup", commandKey = "MemberCommandKey",
    			commandProperties = {
    			@HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds", value = "1000")
    	}, threadPoolProperties = {
    			@HystrixProperty(name = "coreSize", value = "2")
    	})
    	public Member getMember(Integer id) {
    		try {
    			Thread.sleep(2000);
    		} catch (Exception e) {
    			
    		}
    		
    		Member member = restTpl.getForObject(
    				"http://spring-hy-member/member/{id}", Member.class, id);
    		return member;
    	}
    
    	public Member getMemberFallback(Integer id) {
    		Member m = new Member();
    		m.setId(1);
    		m.setName("error member");
    		return m;
    	}
    }
    

      

    @RestController
    public class TestController {
    
    	@Autowired
    	private MemberService memberService;
    
    	@RequestMapping(value = "/router", method = RequestMethod.GET, 
    			produces = MediaType.APPLICATION_JSON_VALUE)
    	public Member router() {
    		return memberService.getMember(1);
    	}
    
    }
    

      

  • 相关阅读:
    Overview of .rdp file settings
    Html事件冒泡
    文件复制cp的操作及scp的运用
    防火墙操作
    批量添加文件夹
    linux查看历史输入命令history
    linux 批量删除文件
    服务器磁盘空间不足的问题
    linux查看CPU、内存、磁盘大小
    tomcat启动成功但是无法访问ip地址及端口问题解决始末
  • 原文地址:https://www.cnblogs.com/zfzf1/p/8550521.html
Copyright © 2011-2022 走看看