zoukankan      html  css  js  c++  java
  • hystrix文档翻译之开始使用

    获取包

      使用maven获取包。

    <dependency>
        <groupId>com.netflix.hystrix</groupId>
        <artifactId>hystrix-core</artifactId>
        <version>x.y.z</version>
    </dependency>

      使用lvy获取包

    <dependency org="com.netflix.hystrix" name="hystrix-core" rev="x.y.z" />

      如果希望使用maven下载包

    <?xml version="1.0"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.netflix.hystrix.download</groupId>
        <artifactId>hystrix-download</artifactId>
        <version>1.0-SNAPSHOT</version>
        <name>Simple POM to download hystrix-core and dependencies</name>
        <url>http://github.com/Netflix/Hystrix</url>
        <dependencies>
            <dependency>
                <groupId>com.netflix.hystrix</groupId>
                <artifactId>hystrix-core</artifactId>
                <version>x.y.z</version>
                <scope/>
            </dependency>
        </dependencies>
    </project>

      然后执行

    mvn -f download-hystrix-pom.xml dependency:copy-dependencies

      它将会下载hystrix-core-*.jar和他的依赖包。

      使用hystrix的一个简单例子:

    public class CommandHelloWorld extends HystrixCommand<String> {
    
        private final String name;
    
        public CommandHelloWorld(String name) {
            super(HystrixCommandGroupKey.Factory.asKey("ExampleGroup"));
            this.name = name;
        }
    
        @Override
        protected String run() {
            // a real example would do work like a network call here
            return "Hello " + name + "!";
        }
    }

      有一下三种方式调用命令

    String s = new CommandHelloWorld("Bob").execute();
    Future<String> s = new CommandHelloWorld("Bob").queue();
    Observable<String> s = new CommandHelloWorld("Bob").observe();

    编译hystrix

      checkout源码并编译

    $ git clone git@github.com:Netflix/Hystrix.git
    $ cd Hystrix/
    $ ./gradlew build

      执行 clean build

    $ ./gradlew clean build
  • 相关阅读:
    php用正则表达式匹配URL的简单方法(亲测可行)
    MySQL中MyISAM与InnoDB区别及选择
    crontab定时任务语法及应用
    “购物狂欢节”如何应对“羊毛党”
    深入理解 Linux 的 RCU 机制
    白夜追凶 :手 Q 图片的显示和发送逻辑
    老司机教你如何优雅地完成一个小项目测试
    腾讯云分布式数据库可用性系统实践
    使用 Skeleton Screen 提升用户感知体验
    实战分享,教你蓝牙在小程序中的应用
  • 原文地址:https://www.cnblogs.com/zhangwanhua/p/8036855.html
Copyright © 2011-2022 走看看