1024程序员节特辑 | 解密Spring Cloud Hystrix熔断提高系统的可用性和容错能力

news2024/10/7 9:24:46

在这里插入图片描述

目录

  • 1、Spring Cloud Hystrix 的背景和意义
  • 2、Spring Cloud Hystrix 的架构设计
  • 3、Spring Cloud Hystrix 的主要组件
  • 4、Spring Cloud Hystrix 熔断器的底层原理和整体架构
  • 5、Spring Cloud Hystrix 命令
  • 6、Spring Cloud Hystrix 熔断器
  • 7、Spring Cloud Hystrix参数说明
  • 8、Spring Cloud Hystrix降级策略
  • 9、Spring Cloud Hystrix 监控和告警
  • 10、Spring Cloud Hystrix具体实践

专栏集锦,大佬们可以收藏以备不时之需

Spring Cloud实战专栏:https://blog.csdn.net/superdangbo/category_9270827.html

Python 实战专栏:https://blog.csdn.net/superdangbo/category_9271194.html

Logback 详解专栏:https://blog.csdn.net/superdangbo/category_9271502.html

tensorflow专栏:https://blog.csdn.net/superdangbo/category_8691332.html

Redis专栏:https://blog.csdn.net/superdangbo/category_9950790.html

1024程序员节特辑文章:

1024程序员节特辑 | ELK+ 用户画像构建个性化推荐引擎,智能实现“千人千面”

1024程序员节特辑 | OKR VS KPI谁更合适?

1024程序员节特辑 | Spring Boot实战 之 MongoDB分片或复制集操作

Spring实战系列文章:

Spring实战 | Spring AOP核心秘笈之葵花宝典

Spring实战 | Spring IOC不能说的秘密?

国庆中秋特辑系列文章:

国庆中秋特辑(八)Spring Boot项目如何使用JPA

国庆中秋特辑(七)Java软件工程师常见20道编程面试题

国庆中秋特辑(六)大学生常见30道宝藏编程面试题

国庆中秋特辑(五)MySQL如何性能调优?下篇

国庆中秋特辑(四)MySQL如何性能调优?上篇

国庆中秋特辑(三)使用生成对抗网络(GAN)生成具有节日氛围的画作,深度学习框架 TensorFlow 和 Keras 来实现

国庆中秋特辑(二)浪漫祝福方式 使用生成对抗网络(GAN)生成具有节日氛围的画作

国庆中秋特辑(一)浪漫祝福方式 用循环神经网络(RNN)或长短时记忆网络(LSTM)生成祝福诗词

1、Spring Cloud Hystrix 的背景和意义

在微服务架构中,服务之间的调用关系变得复杂,服务之间的依赖性也更强。当某个服务出现故障时,可能会导致整个系统崩溃。为了解决这个问题,Spring Cloud Hystrix 应运而生。Hystrix 是一个用于实现服务熔断的框架,可以有效地避免服务之间的级联故障,提高系统的可用性和容错能力。

2、Spring Cloud Hystrix 的架构设计

Spring Cloud Hystrix 的整体架构分为三个层次:
客户端:服务调用方,负责发送请求并处理响应。
服务端:被调用的服务,负责处理请求并返回响应。
熔断器:负责监控服务之间的调用情况,并根据设定的规则进行熔断和降级。
Spring Cloud Hystrix 使用了熔断器模式,通过熔断器可以实时监控服务调用情况,当某个服务的调用失败率达到预设阈值时,熔断器会自动切断该服务的调用,防止故障扩散。同时,熔断器还支持降级处理,当服务调用失败时,可以调用降级方法,返回默认值或执行其他备选逻辑,以保证系统的可用性。

3、Spring Cloud Hystrix 的主要组件

Spring Cloud Hystrix 的主要组件包括:
Hystrix 命令:封装服务之间的调用关系,实现熔断和降级。
Hystrix 熔断器:监控服务调用情况,并根据设定的规则进行熔断和降级。
Hystrix 配置:设置熔断器的相关参数,如熔断阈值、熔断时间等。
Hystrix 健康检查:监控命令的运行状态,实时了解系统的运行情况。

4、Spring Cloud Hystrix 熔断器的底层原理和整体架构

Spring Cloud Hystrix 熔断器的底层原理和整体架构如下:

  1. 整体架构:
    Spring Cloud Hystrix 熔断器的整体架构包括以下几个部分:
  • Hystrix 命令:封装服务调用,用于承载服务之间的调用关系。
  • Hystrix 断路器:监控服务调用链路的健康状态,当某个服务的失败次数超过设定的阈值时,断路器会跳闸,从而中断对该服务的调用。
  • Hystrix 配置:包括熔断器开关、熔断时间、故障阈值等参数,用于控制熔断器的运行状态。
  • 降级策略:当调用失败时,Hystrix 支持自定义降级策略,如返回默认值、发送通知等。
  • 监控和告警:Hystrix 提供了丰富的监控指标,可以帮助开发人员实时了解系统的运行状态,及时发现和处理故障。
  1. 底层代码:
  • Hystrix 命令:Hystrix 命令的底层实现主要依赖于 Spring AOP 和 Spring MVC。通过代理目标方法,Hystrix 命令可以在方法执行前后添加额外的逻辑,如熔断判断、降级处理等。
@Component  
public class HystrixCommandAspect implements CommandAspect {  
   @Before("execution(* com.example.service.*.*(..))")  
   public void hystrixBefore(JoinPoint joinPoint) throws Throwable {  
       // 执行前逻辑  
   }
   @AfterThrowing(pointcut = "execution(* com.example.service.*.*(..))", throwing = "error")  
   public void hystrixAfterThrowing(JoinPoint joinPoint, Throwable error) {  
       // 执行后逻辑  
   }  
}
  • Hystrix 断路器:Hystrix 断路器的底层实现主要依赖于 Spring Cloud Circuit Breaker 项目。通过监控调用链路的健康状态,Hystrix 断路器可以实现自动跳闸和重置。
@Configuration  
@EnableCircuitBreaker  
public class CircuitBreakerConfig {  
   @Value("${hystrix.command.default.circuitBreaker.requestVolumeThreshold}")  
   private int requestVolumeThreshold;
   @Bean  
   public CircuitBreaker circuitBreaker(CircuitBreakerConfigProperties config) {  
       // 创建断路器实例  
   }  
}
  • Hystrix 配置:Hystrix 配置的底层实现主要依赖于 Spring Cloud Config 项目。通过集中配置熔断器参数,Hystrix 可以实现动态配置。
@Configuration  
public class HystrixConfig {  
   @Value("${hystrix.command.default.fallback}")  
   private boolean fallback;
   @Bean  
   public CommandConfig commandConfig() {  
       // 创建 CommandConfig 实例  
   }  
}
  • 降级策略:Hystrix 支持自定义降级策略,如返回默认值、发送通知等。降级策略可以通过实现 CommandExecutionFallbackHandler 接口或使用 Hystrix 的 fallback 方法进行实现。
@Component  
public class CommandExecutionFallbackHandler implements CommandExecutionFallbackHandler {  
   @Override  
   public Object fallback(InvocationOnStackTrace invocation) throws Throwable {  
       // 实现降级逻辑  
   }  
}
  • 监控和告警:Hystrix 提供了丰富的监控指标,如当前请求数、失败次数、熔断次数等。这些指标可以通过 Spring Boot Actuator 进行监控和告警。
@Bean  
public Actuator actuator() {  
   // 创建 Actuator 实例  
}

通过以上架构和代码,Spring Cloud Hystrix 熔断器可以实现服务的熔断、降级、监控和告警等功能,有效提高系统的可用性和容错能力。

5、Spring Cloud Hystrix 命令

Spring Cloud Hystrix 命令是一个用于封装服务之间调用的类,它实现了 HystrixCommand 接口。Hystrix 命令的主要目的是在微服务架构中实现熔断和降级功能,提高系统的可用性和容错能力。
要创建一个 Hystrix 命令,需要实现 HystrixCommand 接口,并定义以下几个方法:

  1. execute:这是命令的核心方法,用于执行具体的业务逻辑。当调用此方法时,如果命令配置了熔断器,并且熔断器处于开启状态,那么方法将不会被执行。
  2. getException(): 返回一个 Exception,当调用 execute 方法时,如果发生了异常,那么这个方法将被调用。
  3. getFallback(): 返回一个方法,当调用 execute 方法失败时,这个方法将被调用。通常在这个方法中,可以定义降级处理逻辑,例如返回默认值或执行其他备选逻辑。
    以下是一个简单的 Hystrix 命令示例:
import org.springframework.cloud.netflix.hystrix.HystrixCommand;  
import org.springframework.stereotype.Component;
@Component  
public class CustomCommand extends HystrixCommand<String> {
   private final MyService myService;
   public CustomCommand(MyService myService) {  
       super(myService);  
   }
   @Override  
   protected String execute() {  
       // 业务逻辑  
       return "Hello, world!";  
   }
   @Override  
   protected String getException() {  
       // 返回一个异常  
       return "Exception occurred";  
   }
   @Override  
   protected String getFallback() {  
       // 降级处理  
       return "Default value";  
   }  
}

在上述示例中,CustomCommand 类继承了 HystrixCommand 类,并定义了 execute、getException 和 getFallback 方法。当调用 execute 方法时,如果熔断器处于开启状态,那么将不会执行该方法。如果调用失败,那么将调用 getException 方法返回一个异常,或者调用 getFallback 方法执行降级处理。
要使用 Hystrix 命令,需要在调用服务的地方进行封装。例如,可以使用 Hystrix 命令调用一个远程服务:

@Autowired  
private CustomCommand customCommand;
public String callRemoteService() {  
   return customCommand.execute();  
}

通过这种方式,可以实现服务之间的熔断和降级处理,提高系统的可用性和容错能力。

6、Spring Cloud Hystrix 熔断器

Spring Cloud Hystrix 熔断器是 Spring Cloud Hystrix 组件的核心部分,负责监控和控制服务之间的调用。熔断器的主要作用是在微服务架构中实现服务熔断和降级功能,提高系统的可用性和容错能力。
熔断器的运行原理:

  1. 启动:当一个服务调用另一个服务时,熔断器会检查被调用服务的健康状况。如果被调用服务正常运行,那么熔断器会放行这个调用;否则,熔断器会根据设定的规则进行熔断或降级处理。
  2. 熔断:当被调用服务的失败次数达到预设的阈值时,熔断器会自动切断该服务的调用。这样,即使被调用服务出现故障,也不会影响到其他服务的正常运行。
  3. 降级:当服务调用失败时,熔断器会调用降级方法,执行备选逻辑,例如返回默认值或执行其他备选逻辑。这样,可以保证系统的可用性,避免因为某个服务的故障导致整个系统崩溃。
    要使用 Spring Cloud Hystrix 熔断器,需要进行以下步骤:
  4. 添加依赖:在项目的 pom.xml 文件中添加 Spring Cloud Hystrix 的依赖。
  5. 配置熔断器:在 application.ymlapplication.properties 文件中配置熔断器的参数,如熔断阈值、熔断时间等。
  6. 创建 Hystrix 命令:创建一个类,实现 HystrixCommand 接口,定义命令的执行方法和降级方法。
  7. 使用 Hystrix 命令:在需要调用服务的地方,使用 Hystrix 命令进行封装。
    以下是一个简单的熔断器配置示例:
hystrix:  
 command:  
   my-command:  
     groupKey: my-group  
     serviceId: my-service  
     threadPool:  
       coreSize: 10  
       maxSize: 20  
     fallback:  
       onFallback:  
         command:  
           my-fallback-command  
     metrics:  
       enabled: true  
       resolved:  
         enabled: true  
         key: request  

在这个示例中,配置了一个名为 my-command 的 Hystrix 命令,设置了熔断器组名(groupKey)为 my-group,服务 ID 为 my-service。同时,配置了线程池的核心大小和最大大小,以及降级命令 my-fallback-command。此外,还启用了熔断器的监控和告警功能。
通过使用 Spring Cloud Hystrix 熔断器,可以实时监控服务之间的调用情况,并根据设定的规则进行熔断和降级处理,提高系统的可用性和容错能力。

7、Spring Cloud Hystrix参数说明

Spring Cloud Hystrix 是一个基于 Hystrix 实现的微服务架构中的熔断器组件,它能够对微服务之间的调用进行熔断和降级,从而提高系统的可用性和容错能力。以下是 Spring Cloud Hystrix 配置中的每个参数的解释说明:

  1. command.groupKey:定义熔断器组的唯一标识,用于区分不同的熔断器组。
  2. command.serviceId:定义服务 ID,用于标识哪个服务需要进行熔断。
  3. command.threadPool:配置线程池,包括核心线程数、最大线程数等。
  4. command.fallback:配置降级处理,当调用失败时,返回备选方案。
  5. metrics.enabled:是否启用 Hystrix 指标监控,默认启用。
  6. metrics.resolved.enabled:是否启用 Hystrix 命令的分辨率监控,默认启用。
  7. metrics.resolved.key:定义分辨率监控的键,用于区分不同的分辨率。
  8. dashboard.enabled:是否启用 Hystrix 控制台监控,默认启用。
  9. dashboard.url:定义 Hystrix 控制台的地址。
    以上参数可以根据实际需求进行调整,以满足不同的业务场景。

8、Spring Cloud Hystrix降级策略

Spring Cloud Hystrix 提供了多种降级策略,以应对不同的服务故障场景。以下是一些常见的降级策略:

  1. HystrixCommandsetFallbackMethod:可以为指定的方法配置降级处理,当服务调用失败时,返回备选方案。降级方法需要在同一个类中,并且需要使用 @Async 注解标记为异步方法。
    示例:
@Service  
public class MyService {
   @HystrixCommand(fallbackMethod = "myFallbackMethod")  
   public String myMethod() {  
       // 业务逻辑  
   }
   @Async  
   public String myFallbackMethod(String message) {  
       // 降级处理逻辑  
   }  
}
  1. HystrixCommandsetRequestCache:当服务调用失败时,可以将请求信息存储在缓存中,以便在服务恢复正常后,可以重新使用这些请求。
  2. HystrixCommandsetResponseCache:当服务调用成功时,可以将返回结果存储在缓存中,以便在服务出现故障时,可以返回备选方案。
  3. HystrixCommandsetExceptionHandler:可以为特定的异常类型配置异常处理方法,当服务调用出现异常时,可以直接处理该异常,而不是让调用方处理。
    示例:
@Service  
public class MyService {
   @HystrixCommand(fallbackMethod = "myFallbackMethod", exceptionHandler = "myExceptionHandler")  
   public String myMethod() {  
       // 业务逻辑  
   }
   @Async  
   public String myFallbackMethod(String message) {  
       // 降级处理逻辑  
   }
   @Async  
   public String myExceptionHandler(Throwable exception) {  
       // 异常处理逻辑  
   }  
}
  1. HystrixDashboard:通过 HystrixDashboard 监控降级处理的效果,可以查看熔断器的状态、请求量、故障率等指标。
    总结:Spring Cloud Hystrix 提供了丰富的降级策略,可以根据不同的业务需求进行配置,提高系统的可用性和容错能力。

9、Spring Cloud Hystrix 监控和告警

Spring Cloud Hystrix 提供了监控和告警功能,以帮助您实时了解系统的运行状况,并在发现问题时及时进行处理。以下是 Spring Cloud Hystrix 监控和告警的相关配置和使用方法:

  1. Hystrix 监控指标:Hystrix 提供了丰富的监控指标,包括请求次数、故障次数、熔断次数、降级次数等。您可以通过 HystrixCommandsetMetrics 方法启用或禁用这些指标。
    示例:
@Service  
public class MyService {
   @HystrixCommand(metrics = {  
       @Metrics(name = "requestCount", description = "请求次数"),  
       @Metrics(name = "failureCount", description = "故障次数"),  
       @Metrics(name = "circuitBreakerOpenCount", description = "熔断器打开次数"),  
       @Metrics(name = "circuitBreakerFailedCount", description = "熔断器失败次数")  
   })  
   public String myMethod() {  
       // 业务逻辑  
   }  
}
  1. Hystrix 控制台监控:通过 Hystrix 控制台,您可以实时查看系统的运行状况,包括各个熔断器的状态、请求量、故障率等。您需要在 application.properties 文件中启用 Hystrix 控制台监控,并配置控制台的地址和端口。
    示例:
# application.properties  
spring.cloud.hystrix.dashboard.enabled=true  
spring.cloud.hystrix.dashboard.url=http://localhost:8080  
  1. 告警通知:当系统的运行状况达到预设的阈值时,Hystrix 可以通过邮件、短信等方式向您发送告警通知。您需要在 application.properties 文件中配置告警通知的相关信息。
    示例:
# application.properties  
spring.cloud.hystrix.alert.email.enabled=true  
spring.cloud.hystrix.alert.email.sendername=admin  
spring.cloud.hystrix.alert.email.password=admin123  
spring.cloud.hystrix.alert.email.smtp=smtp.example.com  
spring.cloud.hystrix.alert.email.subject=告警通知  
spring.cloud.hystrix.alert.email.template=告警通知模板  

通过以上配置,您可以实时监控系统的运行状况,并在发现问题时及时进行处理,从而确保系统的稳定运行。

10、Spring Cloud Hystrix具体实践

Spring Cloud Hystrix 是一个基于 Hystrix 实现的微服务架构中的熔断器组件,它能够对微服务之间的调用进行熔断和降级,从而提高系统的可用性和容错能力。以下是 Spring Cloud Hystrix 的详细配置说明:

  1. 添加依赖
    在项目的 pom.xml 文件中添加 Spring Cloud Hystrix 的依赖:
<dependency>  
   <groupId>org.springframework.cloud</groupId>  
   <artifactId>spring-cloud-starter-hystrix</artifactId>  
</dependency>  
  1. 启用 Hystrix
    application.ymlapplication.properties 文件中启用 Hystrix:
spring:  
 cloud:  
   hystrix:  
     command:  
       my-command:  
         groupKey: my-group  
         serviceId: my-service  
         threadPool:  
           coreSize: 10  
           maxSize: 20  
         fallback:  
           onFallback:  
             command:  
               my-fallback-command  
         metrics:  
           enabled: true  
           resolved:  
             enabled: true  
             key: request  
  1. 配置 Hystrix 命令
    创建一个类,实现 org.springframework.cloud.netflix.hystrix.HystrixCommand 接口,定义命令的执行方法和降级方法。
import org.springframework.cloud.netflix.hystrix.HystrixCommand;
public class MyCommand extends HystrixCommand<String> {
   private final MyService myService;
   public MyCommand(MyService myService) {  
       super(myService);  
   }
   @Override  
   protected String execute() {  
       // 业务逻辑  
       return "Hello, world!";  
   }
   @Override  
   protected String getException() {  
       // 返回一个异常  
       return "Exception occurred";  
   }
   @Override  
   protected String getFallback() {  
       // 降级处理  
       return "Default value";  
   }  
}
  1. 使用 Hystrix 命令
    在需要调用服务的地方,使用 Hystrix 命令进行封装:
@Autowired  
private MyCommand myCommand;
public String callRemoteService() {  
   return myCommand.execute();  
}
  1. 配置 Hystrix 端点
    application.ymlapplication.properties 文件中配置 Hystrix 端点,以启用 Hystrix 监控:
spring:  
 cloud:  
   hystrix:  
     dashboard:  
       enabled: true  
       url: http://localhost:8080/hystrix  
  1. 启动 Hystrix 监控
    启动一个基于 Spring Boot 的应用,访问 http://localhost:8080/hystrix,查看 Hystrix 监控页面。
    通过以上配置,可以实现 Spring Cloud Hystrix 的详细配置。根据实际需求,可以调整配置参数,如熔断阈值、熔断时间等,以满足不同的业务场景。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1115997.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

点云平面拟合新国标怎么应对?

文章目录 一、应用背景二、算法原理三、代码实现首先我们看一下平面度的概念: 平面度:测量点集合中,在平面上方且距离基准平面最远的点到平面的距离+在平面下方且距离基准平面最远的点到平面的距离。 一、应用背景 在旧标准中,使用最小二乘法去拟合全部点,以拟合平面作为…

Cesium 实战 - 调整饱和度、对比度等参数,加载渲染美化影像底图

Cesium 实战 - 调整饱和度、对比度等参数&#xff0c;加载渲染美化影像底图 渲染美化影像底图核心代码完整代码&#xff1a;在线示例 本文包括渲染美化影像底图核心代码、完整代码以及在线示例。 渲染美化影像底图核心代码 这里放上核心代码&#xff1a; /*** todo 开启美化底…

阿里云oss丨You have no right to access this object because of bucket acl.

错误&#xff1a;You have no right to access this object because of bucket acl. ​ ​ 今天折腾oss的时候遇到这个问题&#xff0c;我以为是我没加白名单&#xff0c;后来想了下应该是使用阿里云OSS上传文件服务时报的错&#xff0c;新建的子用户AccessKey没有配置相应的管…

2023年最佳项目管理软件排行榜揭晓!

根据网络数据调查结果显示&#xff0c;今年有77%的组织将效率列为优先事项&#xff0c;而82%的领导人确认投资于新的项目管理和工作管理方案以提高效能。然而随着对价值的重新关注&#xff0c;选择适合的工程项目管理软件变得比以往任何时候都更加重要。好消息是通过对39个主要…

拿下域控主机

1.装域控环境 是dns环境 域控dns127.0.0.1 二.搭建 加入域 新建域用户 密码和域内主机一样 添加账户和密码 添加到域管理 这个随便 为了后期实验添加上 添加web和远程桌面 域控 用户添加到域 配置dns 攻击 kali 是公网 配置 木马服务器 哈希值 win10 客…

协同过滤推荐算法UserCF、ItemCF

目录 相似度计算基于用户的协同过滤&#xff08;UserCF&#xff09;算法评估基于物品的协同过滤&#xff08;ItemCF&#xff09;协同过滤算法的权重改进协同过滤算法的问题分析思考学习参考 相似度计算 杰卡德&#xff08;Jaccard&#xff09;相似系数 Jaccard 系数是衡量两个…

AMD推出锐龙Threadripper 7000处理器 96核重回HEDT市场

AMD今天正式推出了锐龙Threadripper 7000系列处理器&#xff0c;而且这次不光只有面向工作站的锐龙Threadripper PRO 7000WX系列&#xff0c;还有面向HEDT平台的锐龙Threadripper 7000X系列。 上一代的锐龙Threadripper PRO 5000是去年年初推出的&#xff0c;相隔已经有一年半…

一次说全COLA应用架构

一&#xff0c;为什么需要好的应用架构 上图比较清晰地说明了好的应用架构的作用——去繁为简&#xff0c;化无序为有序。 二&#xff0c;关于COLA的几种定义 1&#xff0c;原版 GitHub - alibaba/COLA: &#x1f964; COLA: Clean Object-oriented & Layered Architec…

【Linux】文件IO基础知识——上篇,文件描述符是什么??系统缓冲区又是啥??

目录 前文 一&#xff0c; 系统级——文件操作接口 a. open b. close c. write d. read 二&#xff0c;接口理解 那文件描述符——fd是什么呢&#xff1f; 三&#xff0c;文件描述符分配规则 原理 四&#xff0c;重定向——dup2 简易shell——重定向 五&#xff0c…

vue3+ts 使用vue-print-nb 打印功能【完美】

安装 npm i vue3-print-nb -s我的版本 0.1.4 注册 import { createApp } from vue import pinia from ./store import router from ./router import ./assets/css/main.scss import { globalRegister } from /global/register import ant-design-vue/es/message/style/css …

织造业的数字安全守护者:深入了解迅软DSE数据加密

客户简要介绍 某织造企业成立于2004年&#xff0c;工厂位于苏州平望&#xff0c;公司目前拥有先进纺织设备330台套和日本瑞士等前道配套设备&#xff0c;公司占地33亩、具有现代化标准厂房办公楼等3万平米。 某织造企业面料、功能性面料、新材料面料的生产商&#xff0c;公司坚…

UE5 ChaosVehicles载具 实现大漂移 (连载四)

载具设置成前驱模式 前轮摩擦力倍增x5 后轮摩擦力倍增x0.5

Linux 基础操作手记三(内存篇)

Linux 基础操作手记三 释放内存虚拟机彻底无网络测试网速设置虚拟内存交换空间未使用虚拟机设置虚拟内存无法开机问题GParted - 分配内存系统盘扩容自己 释放内存 sync && echo 3 > /proc/sys/vm/drop_caches 虚拟机彻底无网络 还原默认设置&#xff0c;静静的等待…

观测云产品更新 | 优化 SSO 管理、新增监控器类型、优化场景等

本期更新主要分为观测云更新、观测云部署版更新、DataKit 更新、集成更新等内容。详情见官网文档&#xff1a;https://docs.guance.com/release-notes/ 观测云更新 付费计划与账单 计费项【数据转发】统计逻辑变更为 “按照数据转发规则” 统计转发数据量大小。 SSO 管理 …

作为决策者,谁能拒绝这样一张数据可视化报表

数据分析是决策的一大助力&#xff0c;因此作为企业的管理决策者都会希望获得一份直观易懂、支持灵活自助分析的数据可视化报表&#xff0c;比如说由奥威BI数据可视化软件制作的这张BI报表。 名称&#xff1a;零售业数据分析驾驶舱 来源&#xff1a;奥威BI零售数据分析方案 …

网络通信 三要素

网络通信的三要元素 IP地址端口号协议package InetAddressTest;import java.net.InetAddress;public class InetAddress1 {public static void main(String[] args)throws Exception {// InetAddress的使用//1:获取本机IP地址对象InetAddress ip1 InetAddress.getLocalHost()…

智慧公厕:打造未来城市公共设施的智慧选择

随着信息技术的不断发展&#xff0c;城市公共设施需要实现个性化、高效化和智能化&#xff0c;其中包括公共厕所。智慧公厕是一种结合物联网、互联网、人工智能、云计算、大数据和传感感知等技术的新型公厕&#xff0c;旨在提高公共厕所管理效率、跨区域跨系统的联网管理、自动…

2023/10/30-LED灯驱动开发

k1.c #include <linux/init.h> #include <linux/module.h> #include <linux/fs.h> #include <linux/uaccess.h> #include <linux/io.h> #include "head.h" char kbuf[128] {}; unsigned int major; //定义三个指针指向映射后的虚拟内…

基于北方苍鹰优化的BP神经网络(分类应用) - 附代码

基于北方苍鹰优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于北方苍鹰优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.北方苍鹰优化BP神经网络3.1 BP神经网络参数设置3.2 北方苍鹰算法应用 4.测试结果…

【C++ Primer Plus学习记录】使用new创建动态结构

在运行时创建数组优于在编译时创建数组&#xff0c;对于结构&#xff08;同一个结构可以存储多种类型的数据。&#xff09;也是如此。需要在程序运行时为结构分配所需的空间&#xff0c;这也可以使用new运算符来完成。通过使用new&#xff0c;可以创建动态结构。同样&#xff0…