当前位置: 首页>>代码示例>>Java>>正文


Java HystrixPropertiesStrategy类代码示例

本文整理汇总了Java中com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy的典型用法代码示例。如果您正苦于以下问题:Java HystrixPropertiesStrategy类的具体用法?Java HystrixPropertiesStrategy怎么用?Java HystrixPropertiesStrategy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


HystrixPropertiesStrategy类属于com.netflix.hystrix.strategy.properties包,在下文中一共展示了HystrixPropertiesStrategy类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: init

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
/**
 * registers the {@link ExecutionContextAwareHystrixStrategy}
 */
public static void init() {
    // keeps references of existing Hystrix plugins.
    HystrixConcurrencyStrategy existingConcurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    // reset the Hystrix plugin
    HystrixPlugins.reset();
    // configure the  plugin
    HystrixPlugins.getInstance().registerConcurrencyStrategy(new ExecutionContextAwareHystrixStrategy(existingConcurrencyStrategy));
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
    log.info("Context propagation enabled for Hystrix.");
}
 
开发者ID:enadim,项目名称:spring-cloud-ribbon-extensions,代码行数:21,代码来源:PreservesExecutionContextHystrixStrategy.java

示例2: bindTo

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@Override
public void bindTo(MeterRegistry registry) {
    // Keeps references of existing Hystrix plugins.
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();

    HystrixPlugins.reset();

    // Registers existing plugins except the new MicroMeter Strategy plugin.
    HystrixPlugins.getInstance().registerMetricsPublisher(new MicrometerMetricsPublisher(registry));
    HystrixPlugins.getInstance().registerConcurrencyStrategy(concurrencyStrategy);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
开发者ID:micrometer-metrics,项目名称:micrometer,代码行数:18,代码来源:HystrixMetricsBinder.java

示例3: init

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
			.getEventNotifier();
	HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
			.getMetricsPublisher();
	HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
			.getPropertiesStrategy();
	HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance()
			.getCommandExecutionHook();

	HystrixPlugins.reset();

	// Registers existing plugins excepts the Concurrent Strategy plugin.
	HystrixPlugins.getInstance().registerConcurrencyStrategy(
			new SecurityContextConcurrencyStrategy(existingConcurrencyStrategy));
	HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
	HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
	HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-netflix,代码行数:23,代码来源:HystrixSecurityAutoConfiguration.java

示例4: TracingConcurrencyStrategy

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
private TracingConcurrencyStrategy(Tracer tracer) {
    this.tracer = tracer;
    try {
        this.delegateStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegateStrategy instanceof TracingConcurrencyStrategy) {
            return;
        }

        HystrixCommandExecutionHook commandExecutionHook =
            HystrixPlugins.getInstance().getCommandExecutionHook();
        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher =
            HystrixPlugins.getInstance().getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy =
            HystrixPlugins.getInstance().getPropertiesStrategy();

        HystrixPlugins.reset();
        HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
        HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
        HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception ex) {
        log.log(Level.SEVERE, "Failed to register " + TracingConcurrencyStrategy.class +
            ", to HystrixPlugins", ex);
    }
}
 
开发者ID:OpenFeign,项目名称:feign-opentracing,代码行数:28,代码来源:TracingConcurrencyStrategy.java

示例5: testConfigurationThroughArchaius

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@Test
public void testConfigurationThroughArchaius() {
    HystrixPropertiesStrategy strategy = HystrixPlugins.getInstance().getPropertiesStrategy();

    HystrixCommandProperties defaultProps = strategy.getCommandProperties(HystrixCommandKey.Factory.asKey("default"), HystrixCommandProperties.Setter());

    assertFalse( defaultProps.circuitBreakerEnabled().get());
    assertEquals(77, (int) defaultProps.circuitBreakerErrorThresholdPercentage().get());

    HystrixCommandProperties gooberProps = strategy.getCommandProperties(HystrixCommandKey.Factory.asKey("goober"), HystrixCommandProperties.Setter());
    assertTrue( gooberProps.circuitBreakerEnabled().get());
    assertEquals(44, (int) gooberProps.circuitBreakerErrorThresholdPercentage().get());
}
 
开发者ID:wildfly-swarm,项目名称:wildfly-swarm,代码行数:14,代码来源:ArqHystrixTest.java

示例6: SleuthHystrixConcurrencyStrategy

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
public SleuthHystrixConcurrencyStrategy(Tracer tracer, TraceKeys traceKeys) {
	this.tracer = tracer;
	this.traceKeys = traceKeys;
	try {
		this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
		if (this.delegate instanceof SleuthHystrixConcurrencyStrategy) {
			// Welcome to singleton hell...
			return;
		}
		HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins
				.getInstance().getCommandExecutionHook();
		HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
				.getEventNotifier();
		HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
				.getMetricsPublisher();
		HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
				.getPropertiesStrategy();
		logCurrentStateOfHysrixPlugins(eventNotifier, metricsPublisher,
				propertiesStrategy);
		HystrixPlugins.reset();
		HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
		HystrixPlugins.getInstance()
				.registerCommandExecutionHook(commandExecutionHook);
		HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
		HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
		HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	}
	catch (Exception e) {
		log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
	}
}
 
开发者ID:reshmik,项目名称:Zipkin,代码行数:32,代码来源:SleuthHystrixConcurrencyStrategy.java

示例7: logCurrentStateOfHysrixPlugins

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
private void logCurrentStateOfHysrixPlugins(HystrixEventNotifier eventNotifier,
		HystrixMetricsPublisher metricsPublisher,
		HystrixPropertiesStrategy propertiesStrategy) {
	log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
			+ this.delegate + "]," + "eventNotifier [" + eventNotifier + "],"
			+ "metricPublisher [" + metricsPublisher + "]," + "propertiesStrategy ["
			+ propertiesStrategy + "]," + "]");
	log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
}
 
开发者ID:reshmik,项目名称:Zipkin,代码行数:10,代码来源:SleuthHystrixConcurrencyStrategy.java

示例8: logCurrentStateOfHysrixPlugins

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
private void logCurrentStateOfHysrixPlugins(HystrixEventNotifier eventNotifier,
		HystrixMetricsPublisher metricsPublisher,
		HystrixPropertiesStrategy propertiesStrategy) {
	if (log.isDebugEnabled()) {
		log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
				+ this.delegate + "]," + "eventNotifier [" + eventNotifier + "],"
				+ "metricPublisher [" + metricsPublisher + "]," + "propertiesStrategy ["
				+ propertiesStrategy + "]," + "]");
		log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-sleuth,代码行数:12,代码来源:SleuthHystrixConcurrencyStrategy.java

示例9: decodesIncomingCommandKeys

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@Test
public void decodesIncomingCommandKeys() throws Exception {
	HystrixPropertiesStrategy mock = Mockito.mock(HystrixPropertiesStrategy.class);
	MultiConfigId configId = MultiConfigId.create("t1");
	
	dispatcher.register(configId.toString(), mock);
	dispatcher.getCommandProperties(configId.createCommandKey("com.avanza.test.TestApi.TestService"), defaultCommandSetter);
	
	Mockito.verify(mock).getCommandProperties(HystrixCommandKey.Factory.asKey("com.avanza.test.TestApi.TestService"), defaultCommandSetter);
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:11,代码来源:MultiPropertiesStrategyDispatcherTest.java

示例10: decodesIncomingThreadPoolKeys

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@Test
public void decodesIncomingThreadPoolKeys() throws Exception {
	HystrixPropertiesStrategy mock = Mockito.mock(HystrixPropertiesStrategy.class);
	MultiConfigId configId = MultiConfigId.create("t1");
	
	dispatcher.register(configId.toString(), mock);
	dispatcher.getThreadPoolProperties(configId.createThreadPoolKey("com.avanza.test.TestApi.TestService"), defaultThreadPoolSetter);
	
	Mockito.verify(mock).getThreadPoolProperties(HystrixThreadPoolKey.Factory.asKey("com.avanza.test.TestApi.TestService"), defaultThreadPoolSetter);
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:11,代码来源:MultiPropertiesStrategyDispatcherTest.java

示例11: decodesIncomingCollapserKeys

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
@Test
public void decodesIncomingCollapserKeys() throws Exception {
	HystrixPropertiesStrategy mock = Mockito.mock(HystrixPropertiesStrategy.class);
	MultiConfigId configId = MultiConfigId.create("t1");
	
	dispatcher.register(configId.toString(), mock);
	dispatcher.getCollapserProperties(configId.createCollapserKey("com.avanza.test.TestApi.TestService"), defaultCollapserSetter);
	
	Mockito.verify(mock).getCollapserProperties(HystrixCollapserKey.Factory.asKey("com.avanza.test.TestApi.TestService"), defaultCollapserSetter);
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:11,代码来源:MultiPropertiesStrategyDispatcherTest.java

示例12: HystrixStrategies

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
public HystrixStrategies(HystrixPropertiesStrategy hystrixPropertiesStrategy,
						 HystrixConcurrencyStrategy concurrencyStrategy,
						 HystrixEventNotifier eventNotifier,
						 String id) {
	this.hystrixPropertiesStrategy = hystrixPropertiesStrategy;
	this.hystrixConcurrencyStrategy = concurrencyStrategy;
	this.hystrixEventNotifier = eventNotifier;
	this.id = id;
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:10,代码来源:HystrixStrategies.java

示例13: getThreadPoolProperties

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
private static HystrixThreadPoolProperties getThreadPoolProperties(HystrixFaultToleranceFactory hystrixFaultTolerance,
		Class<?> api) {
	HystrixPropertiesStrategy hystrixPropertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
	HystrixCommandGroupKey groupKey = hystrixFaultTolerance.getGroupKey(AstrixBeanKey.create(api));
	return hystrixPropertiesStrategy.getThreadPoolProperties(HystrixThreadPoolKey.Factory.asKey(groupKey.name()), 
			  HystrixThreadPoolProperties.Setter());
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:8,代码来源:HystrixCommandConfigurationTest.java

示例14: register

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
public static void register(String id, HystrixPropertiesStrategy strategy) {
	multiPropertiesStrategyDispatcher.register(id, strategy);
	verifyRegistered();
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:5,代码来源:MultiConfigs.java

示例15: register

import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy; //导入依赖的package包/类
public void register(String id, HystrixPropertiesStrategy strategy) {
	this.strategies.put(MultiConfigId.create(id), strategy);
}
 
开发者ID:AvanzaBank,项目名称:astrix,代码行数:4,代码来源:MultiPropertiesStrategyDispatcher.java


注:本文中的com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。