Nacos系列——Java SDK(2.x版本)2-1

news2024/11/24 12:33:48

Nacos系列——Java SDK(2.x版本)2-1

  • 资源地址
  • README
    • 概述(intro)
      • Nacos Java SDK 官方文档(official doc address)
    • 工程说明(project intro )
      • 工程目录(project dir)
      • pom依赖(pom dependencies)
      • yaml
      • NacosBasedProperties.java
    • Nacos Java SDK 2.x版本更新(update change)
      • 服务、集群、实例关系(the relationship among service ,cluster and instance)
  • API请求说明(api request intro)
  • Nacos-easy
    • DELETE deleteListenerToConfig 删除Nacos配置上的监听
      • 请求参数
      • 返回结果
      • 返回数据结构
    • PUT signListenerToConfig 对Nacos配置设置监听
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getHealthyInstanceInfoList 获取Nacos健康实例(服务下)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getNacosConfig 获取Nacos配置信息
      • 请求参数
      • 返回结果
      • 返回数据结构
    • PUT getNacosConfigAndSignListener 获取Nacos配置信息并对该配置设置监听
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getHealthyInstanceInfoList 获取Nacos健康实例(服务的集群下)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • POST publishConfig 发布Nacos配置
      • 请求参数
      • 返回结果
      • 返回数据结构
    • POST signListenerToService 监听Nacos服务下的某个集群(订阅)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • DELETE deleteListenerToService 删除Nacos服务监听(消除订阅) Copy
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getUnhealthyInstanceInfoList 获取Nacos上的某个服务的某个集群下全部实例 Copy
      • 请求参数
      • 返回结果
      • 返回数据结构
    • POST signListenerToService 监听Nacos服务(订阅)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • DELETE deleteListenerToService 删除Nacos服务监听(消除订阅)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • POST registerInstance Nacos注册实例
      • 请求参数
      • 返回结果
      • 返回数据结构
    • DELETE deleteInstance Nacos删除实例
      • 请求参数
      • 返回结果
      • 返回数据结构
    • DELETE deleteConfig 删除Nacos配置
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getUnhealthyInstanceInfoList 获取Nacos非健康实例(服务下)
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET getInstanceInfoList 获取Nacos上的某个服务下全部实例
      • 请求参数
      • 返回结果
      • 返回数据结构
    • GET testRegisterInstanceNacos 注册实例示例代码(学习前请查看)
      • 返回结果
      • 返回数据结构
    • GET getInstanceInfoList 获取Nacos上的某个服务的某个集群下全部实例
      • 请求参数
      • 返回结果
      • 返回数据结构

资源地址

https://gitee.com/giteeforsyf/spring-cloud-formatter.git
在这里插入图片描述

README

  • maker:syf20020816
  • docName:Nacos-easy
  • createDate:20221218
  • updateDate:20221219
  • version:1.0.1
  • email:syf20020816@outlook.com

概述(intro)

本工程是Nacos的Java SDK 2.x版本的实现,并非官方文档而是本人经过学习后自己构建的工程,官方文档目前还未更新,仅供学习交流,请勿进行任何商业用途

This project is the implementation of the 2. x version of the Java SDK of Nacos. It is not an official document, but a project built by myself after learning. The official document has not been updated yet, and it is only for learning and communication. Please do not use it for any commercial purpose

Nacos Java SDK 官方文档(official doc address)

https://nacos.io/zh-cn/docs/sdk.html

工程说明(project intro )

工程目录(project dir)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-47Fz0OvJ-1671435417989)(.\README\imgs\image-20221219134226511.png)]

pom依赖(pom dependencies)

我们需要引入以下两个依赖

we need to use the following two dependencies

        <!--        引入依赖-->
        <dependency>
            <groupId>com.alibaba.nacos</groupId>
            <artifactId>nacos-client</artifactId>
            <version>2.1.0</version>
        </dependency>
        <!--       注册Nacos服务 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

yaml

这里有一个自定义的nacos配置参数nacos.conf该配置可以任意进行修改,对应的是NacosBasedProperties.java

Here is a user-defined nacos configuration parameter nacos. conf. The configuration can be modified at will, corresponding to NacosBasedProperties. java

server:
  port: 8889

nacos:
  conf:
    # 配置Nacos的地址
    serverAddr: 192.168.31.149:8848
    # 配置 ID,采用类似 package.class(如com.taobao.tc.refund.log.level)的命名规则保证全局唯一性,
    # class 部分建议是配置的业务含义。全部字符小写。只允许英文字符和 4 种特殊字符("."、":"、"-"、"_"),不超过 256 字节
    dataId: test02
    # 配置分组,建议填写产品名:模块名(Nacos:Test)保证唯一性,默认:DEFAULT_GROUP
    # 只允许英文字符和4种特殊字符("."、":"、"-"、"_"),不超过128字节。
    group: DEFAULT_GROUP
    # 读取配置超时时间,单位 ms,推荐值 3000。
    timeout: 3000

# 使用Nacos作为服务的注册与发现中心
spring:
  application:
    name: Fly-nacos-easy
  cloud:
    nacos:
      server-addr: 192.168.31.149:8848

NacosBasedProperties.java

@ConfigurationProperties("nacos.conf")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class NacosBasedProperties {

    private String serverAddr;
    private String dataId;
    private String group;
    private Long timeout;
}

Nacos Java SDK 2.x版本更新(update change)

最直观的应该是再注册实例的时候使用类

The most intuitive is to use classes when re registering instances

  • com.alibaba.nacos.api.naming.pojo.Instance Nacos实例类
  • com.alibaba.nacos.api.naming.pojo.Service Nacos服务类
  • com.alibaba.nacos.api.naming.pojo.ClusterNacos集群类
  • com.alibaba.nacos.api.naming.pojo.healthcheck.impl.HttpNacos健康监测类

具体的代码请关注NacosAPIServiceImpl.testRegisterInstance()中的注解,以下是代码详情:

Please pay attention to the comments inNacosAPIServiceImpl. testRegisterInstance() for specific codes. The following are code details:

    @Override
    public ResultJSONData testRegisterInstance() throws NacosException {
        //构建命名空间
        final NamingService namingService = NamingFactory.createNamingService(properties.getServerAddr());
        //构建实例
        final Instance instance = new Instance();
        instance.setIp("192.168.31.149");
        instance.setPort(8979);
        //设置实例的健康状态,健康:true,非健康:false,未运行就是非健康
        instance.setHealthy(false);
        //设置实例的权重
        instance.setWeight(2.0);
        final HashMap<String, String> instanceMeta = new HashMap<>();
        instanceMeta.put("site","et2");
        //设置实例元数据,例如SpringCloud:preserved.register.source=SPRING_CLOUD
        instance.setMetadata(instanceMeta);

        //创建服务,并设置服务名
        final com.alibaba.nacos.api.naming.pojo.Service service = new com.alibaba.nacos.api.naming.pojo.Service();
        service.setName("nacos.test.4");
        //设置服务的应用程序名称,文档中写的是setApp但是现在已经改成AppName了
        service.setAppName("nacos-naming");
        service.setGroupName("CNCF");
        service.setProtectThreshold(0.8F);
        Map<String, String> serviceMeta = new HashMap<>();
        serviceMeta.put("symmetricCall", "true");
        //设置服务元数据
        service.setMetadata(serviceMeta);
        instance.setServiceName(service.getName());

        //创建集群
        final Cluster cluster = new Cluster();
        //设置集群名称,集群名称默认是DEFAULT
        cluster.setName("TEST5");
        //package com.alibaba.nacos.api.naming.pojo.healthcheck.impl;
        //HTTP健康检查程序的实现
        final Http healthChecker = new Http();
        //设置预期响应的状态码
        healthChecker.setExpectedResponseCode(400);
        //设置监测路径
        healthChecker.setPath("/**.html");
        healthChecker.setHeaders("User-Agent|Nacos");
        //设置健康监测方式
        cluster.setHealthChecker(healthChecker);
        final HashMap<String, String> clusterMeta = new HashMap<>();
        clusterMeta.put("cluster","test");
        cluster.setMetadata(clusterMeta);
        //实例挂载集群
        instance.setClusterName(cluster.getName());
        //服务注册实例
        namingService.registerInstance("nacos.test.4",instance);
        return ResultJSONData.success("测试实例注册成功(test instance register success)",true);
    }

服务、集群、实例关系(the relationship among service ,cluster and instance)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y2ViONFf-1671435417990)(.\README\imgs\image-20221219141010222.png)]

API请求说明(api request intro)

v1.0.1

Nacos-easy

DELETE deleteListenerToConfig 删除Nacos配置上的监听

DELETE /:8889/nacos/config/listener/{group}/{dataId}

请求参数

名称位置类型必选说明
grouppathstringnone
dataIdpathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "删除Nacos配置监听成功(delete listener to nacos configuration success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

PUT signListenerToConfig 对Nacos配置设置监听

PUT /:8889/nacos/config/listener/{group}/{dataId}

请求参数

名称位置类型必选说明
grouppathstringnone
dataIdpathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "设置Nacos配置监听成功(sign listener to nacos configuration success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getHealthyInstanceInfoList 获取Nacos健康实例(服务下)

GET /:8889/nacos/instance/healthy/info/list/{serviceName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务的集群下的所有实例成功(get all instance from cluster under nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "ipDeleteTimeout": 30000,
      "instanceHeartBeatTimeOut": 15000,
      "instanceHeartBeatInterval": 5000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getNacosConfig 获取Nacos配置信息

GET /:8889/nacos/config/info/{group}/{dataId}

请求参数

名称位置类型必选说明
grouppathstringnone
dataIdpathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos配置信息成功(get configuration info from nacos success)",
  "data": "server:\r\n  port: 8889\r\n\r\nnacos:\r\n  conf:\r\n    # 配置Nacos的地址\r\n    serverAddr: 192.168.31.149:8848\r\n    # 配置 ID,采用类似 package.class(如com.taobao.tc.refund.log.level)的命名规则保证全局唯一性,\r\n    # class 部分建议是配置的业务含义。全部字符小写。只允许英文字符和 4 种特殊字符(\".\"、\":\"、\"-\"、\"_\"),不超过 256 字节\r\n    dataId: test01\r\n    # 配置分组,建议填写产品名:模块名(Nacos:Test)保证唯一性,默认:DEFAULT_GROUP\r\n    # 只允许英文字符和4种特殊字符(\".\"、\":\"、\"-\"、\"_\"),不超过128字节。\r\n    group: DEFAULT_GROUP\r\n    # 读取配置超时时间,单位 ms,推荐值 3000。\r\n    timeout: 3000\r\n\r\n"
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

PUT getNacosConfigAndSignListener 获取Nacos配置信息并对该配置设置监听

PUT /:8889/nacos/config/info/{group}/{dataId}

请求参数

名称位置类型必选说明
grouppathstringnone
dataIdpathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos配置信息并设定监听成功(get configuration info from nacos and sign listener success)",
  "data": "spring:\r\n port: 9898\r\n "
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getHealthyInstanceInfoList 获取Nacos健康实例(服务的集群下)

GET /:8889/nacos/instance/healthy/info/list/{serviceName}/{clusterName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone
clusterNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务的集群下的所有实例成功(get all instance from cluster under nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "ipDeleteTimeout": 30000,
      "instanceHeartBeatTimeOut": 15000,
      "instanceHeartBeatInterval": 5000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

POST publishConfig 发布Nacos配置

POST /:8889/nacos/config

Body 请求参数

{
  "group": "DEFAULT_GROUP",
  "dataId": "test01",
  "type": "yaml",
  "content": "server:\n\tport: 9898"
}

请求参数

名称位置类型必选说明
bodybodyobjectnone

返回示例

成功

{
  "code": 200,
  "msg": "Nacos配置发布成功(publish nacos configuration success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

POST signListenerToService 监听Nacos服务下的某个集群(订阅)

POST /:8889/nacos/service/listener/{serviceName}/{clusterName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone
clusterNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "监听Nacos服务成功(sign listener to naocs service success)",
  "data": null
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

DELETE deleteListenerToService 删除Nacos服务监听(消除订阅) Copy

DELETE /:8889/nacos/service/listener/{serviceName}/{clusterName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone
clusterNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "删除Nacos服务监听成功(delete listener from nacos service success)",
  "data": null
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getUnhealthyInstanceInfoList 获取Nacos上的某个服务的某个集群下全部实例 Copy

GET /:8889/nacos/instance/unhealthy/info/list/{serviceName}/{clusterName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone
clusterNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务的集群下的所有实例成功(get all instance from cluster under nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "ipDeleteTimeout": 30000,
      "instanceHeartBeatTimeOut": 15000,
      "instanceHeartBeatInterval": 5000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

POST signListenerToService 监听Nacos服务(订阅)

POST /:8889/nacos/service/listener/{serviceName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "监听Nacos服务成功(sign listener to naocs service success)",
  "data": null
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

DELETE deleteListenerToService 删除Nacos服务监听(消除订阅)

DELETE /:8889/nacos/service/listener/{serviceName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "删除Nacos服务监听成功(delete listener from nacos service success)",
  "data": null
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

POST registerInstance Nacos注册实例

POST /:8889/nacos/instance

Body 请求参数

{
  "serviceName": "testService",
  "ip": "192.168.31.149",
  "port": 8889,
  "clusterName": "DEFAULT"
}

请求参数

名称位置类型必选说明
bodybodyobjectnone

返回示例

成功

{
  "code": 200,
  "msg": "Nacos注册实例成功(Nacos register instance success)",
  "data": null
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

DELETE deleteInstance Nacos删除实例

DELETE /:8889/nacos/instance

Body 请求参数

{
  "serviceName": "testService",
  "ip": "192.168.31.149",
  "port": 8889,
  "clusterName": "DEFAULT"
}

请求参数

名称位置类型必选说明
bodybodyobjectnone

返回示例

成功

{
  "code": 200,
  "msg": "Nacos删除实例成功(deregister nacos instance success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

DELETE deleteConfig 删除Nacos配置

DELETE /:8889/nacos/config/{group}/{dataId}

请求参数

名称位置类型必选说明
grouppathstringnone
dataIdpathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "Nacos配置删除成功(delete nacos configuration success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getUnhealthyInstanceInfoList 获取Nacos非健康实例(服务下)

GET /:8889/nacos/instance/unhealthy/info/list/{serviceName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务的集群下的所有实例成功(get all instance from cluster under nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "ipDeleteTimeout": 30000,
      "instanceHeartBeatTimeOut": 15000,
      "instanceHeartBeatInterval": 5000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getInstanceInfoList 获取Nacos上的某个服务下全部实例

GET /:8889/nacos/instance/info/list/{serviceName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务下的所有实例成功(get all instance from nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "instanceHeartBeatInterval": 5000,
      "instanceHeartBeatTimeOut": 15000,
      "ipDeleteTimeout": 30000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET testRegisterInstanceNacos 注册实例示例代码(学习前请查看)

GET /:8889/nacos/instance/test

返回示例

成功

{
  "code": 200,
  "msg": "测试实例注册成功(test instance register success)",
  "data": true
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

GET getInstanceInfoList 获取Nacos上的某个服务的某个集群下全部实例

GET /:8889/nacos/instance/info/list/{serviceName}/{clusterName}

请求参数

名称位置类型必选说明
serviceNamepathstringnone
clusterNamepathstringnone

返回示例

成功

{
  "code": 200,
  "msg": "获取Nacos服务的集群下的所有实例成功(get all instance from cluster under nacos service success)",
  "data": [
    {
      "ip": "192.168.31.149",
      "port": 8889,
      "weight": 1,
      "healthy": true,
      "enabled": true,
      "ephemeral": true,
      "clusterName": "DEFAULT",
      "serviceName": "DEFAULT_GROUP@@Fly-nacos-easy",
      "metadata": {
        "preserved.register.source": "SPRING_CLOUD"
      },
      "ipDeleteTimeout": 30000,
      "instanceHeartBeatTimeOut": 15000,
      "instanceHeartBeatInterval": 5000
    }
  ]
}

返回结果

状态码状态码含义说明数据模型
200OK成功Inline

返回数据结构

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

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

相关文章

面向切面编程

Spring AOP简介 AOP把业务功能分为核心、非核心两部分。 核心业务功能&#xff1a;用户登录、增加数据、删除数据。非核心业务功能&#xff1a;性能统计、日志、事务管理。 在Spring的面向切面编程&#xff08;AOP&#xff09;思想里&#xff0c;非核心业务功能被定义为切面。…

Springboot+echarts:ajax前后端分离交互

文章目录一、样例说明二、后端代码实现2.1 依赖2.2 applicaiton.properties配置2.3 TotalCountData类实现2.4 totalCountDataMapper接口2.5 totalCountDataMapper.xml实现2.6 Controller层代码三、前端代码一、样例说明 通过mysql存储数据&#xff0c;springboot整合mybatis框…

从云到「链」,京东云成为中国第四朵云背后

在产业加速到数实融合加速的今年&#xff0c;云计算不再是云厂商的唯一考校指标。 作者|叶子 出品|产业家 京东云再次破圈。 信号来自接连发布的几份报告。在国际权威研究机构Forrester发布的名为《The Forrester Wave&#xff1a;Public Cloud Development And Infrast…

[HCTF 2018]WarmUp

目录 考点 writeup 考点 文件上传漏洞&#xff0c;代码审计 writeup 先进入页面先查看源码 发现source.php,打开该php文件&#xff0c;进行审计代码后发现是文件包含类题目 <?phphighlight_file(__FILE__);class emmm{public static function checkFile(&$page){$…

JaveWeb框架(三):实战项目Servlet 实现管理系统登录注册功能

MVC实战项目 仓储管理系统需求&#xff1a;实现基本的登录和注册功能MVC实战项目&#xff1a;登录和注册登录功能实现注册功能实现总结Redis章节复习已经过去&#xff0c;新的章节JavaWeb开始了&#xff0c;这个章节中将会回顾JavaWeb实战项目 仓储管理 代码会同步在我的gitee中…

Linux内核调试技术之kdump配置与使用

概述 kdump是Linux内核发生崩溃时转储内存的一种机制&#xff0c;当内核发生错误时&#xff0c;kdump会将当前内核使用的内存导出为镜像文件&#xff08;通常为vmcore&#xff09;保存到硬盘上&#xff0c;之后可以使用crash等工具对内核错误原因进行分析。 kdump基本原理 k…

R语言中回归和分类模型选择的性能指标

有多种性能指标来描述机器学习模型的质量。但是&#xff0c;问题是&#xff0c;对于问题正确的方法是什么&#xff1f;在这里&#xff0c;我讨论了选择回归模型和分类模型时最重要的性能指标。请注意&#xff0c;此处介绍的性能指标不应用于特征选择&#xff0c;因为它们没有考…

如何保证分布式事务?

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【一心同学】&#xff0c;一位上进心十足的【Java领域博主】&#xff01;&#x1f61c;&#x1f61c;&#x1f61c; ✨【一心同学】的写作风格&#x…

Docker: 容器与镜像

文章目录1、docker 环境搭建1.1、docker 安装1.1.1、centos 安装1.1.2、ubuntu 安装1.2、添加到 docker 组1.3、docker 镜像源2、docker 概念2.1、docker 背景2.2、docker 架构2.3、docker 与 vm3、docker 容器隔离4、docker 命令4.1、环境信息4.2、日志信息4.3、容器命令4.4、…

Mac最先进的API工具-RapidAPI for Mac

一、前言 当使用 Mac 进行接口测试的时候&#xff0c;一般都会想到接口测试工具 Postman、Jmeter。 Postman 以其页面友好&#xff0c;功能简单&#xff0c;可以快速上手进行接口测试。而 Jmeter 除了测接口外&#xff0c;还可以进行接口自动化测试、性能测试等。 本篇将介绍…

完整企业官网源码,前端基于Vue+ElementUI,后台基于基于core3 webapi,含数据库文件,含详情安装部署文档

完整企业官网源码&#xff0c;前端基于VueElementUI&#xff0c;后台基于基于core3 webapi&#xff0c;含数据库文件&#xff0c;含详情安装部署文档 完整代码下载地址&#xff1a;完整企业官网源码 某工程管理有限公司企业官网 前端 新版本改进 整体重构&#xff0c;结构…

利用 Flow Simulation 快速和经济高效地解决传热难题

探寻传热问题的有效解决方案已成为新产品研发过程中一个愈来愈重要的部分。几乎一切事物都会经历某种程度的发热或冷却&#xff0c;而且对于许多产品来说&#xff0c;如现代电子设备、医疗设备和空气调节 (HVAC) 系统&#xff0c;热管理已成为避免过度发热和实现功能正常运行的…

Redis实战——附近商家(GEO的使用)

1. 什么是Geo&#xff1f; GEO就是Geolocation的简写形式&#xff0c;代表地理坐标。Redis在3.2版本中加入了对GEO的支持&#xff0c;允许存储地理坐标信息&#xff0c;帮助我们根据经纬度来检索数据。常见的命令有&#xff1a; GEOADD&#xff1a;添加一个地理空间信息&#…

基于WEB多媒体电子贺卡平台

开发工具(eclipse/idea/vscode等)&#xff1a; 数据库(sqlite/mysql/sqlserver等)&#xff1a; 功能模块(请用文字描述&#xff0c;至少200字)&#xff1a; 网站前台&#xff1a;关于我们、联系我们、资讯信息、贺卡类型、贺卡信息、贺卡评论 管理员&#xff1a; 1、管理关于我…

[附源码]Python计算机毕业设计Django校园服装租赁系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;我…

毕业设计 单片机墨水屏阅读器(单词卡) - 物联网 嵌入式

文章目录0 前言1 简介2 主要器件3 实现效果4 设计原理部分核心代码5 最后0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉学长自…

列表类型(sort,reverse,list(),append(),切片)、求中位数,平均数,标准差练习

映射类型和操作 映射类型是“键-值”数据项的组合&#xff0c;每个元素是一个键 值对&#xff0c;即元素是(key, value)&#xff0c;元素之间是无序的。键值对 (key, value)是一种二元关系。在Python中&#xff0c;映射类型主要以字典&#xff08;dict&#xff09;体现。 列表类…

模拟大规模电动车充电行为(Matlab实现)

目录 1 模拟大规模充电汽车充电行为 2 Matlab部分代码实现 3 Matlab代码实现 1 模拟大规模充电汽车充电行为 电动汽车EV(Electric Vehicle)具有清洁环保、高效节能的优点,不仅能缓解化石能源危机,而且能够有效地减少温室气体的排放。2015年10月&#xff0c;国务院发布加快E…

设计模式之策略模式

Strategy design pattern 策略模式的概念、策略模式的结构、策略模式的优缺点、策略模式的使用场景、策略模式的实现示例、策略模式的源码分析 1、策略模式的概念 策略模式&#xff0c;即定义一系列算法&#xff0c;并将每个算法封装起来&#xff0c;使它们可以相互替换&#…

Android平台GB28181接入模块技术接入说明

技术背景 今天&#xff0c;我们主要讲讲Android平台GB28181接入模块的技术对接&#xff0c;Android平台GB28181接入模块设计的目的&#xff0c;可实现不具备国标音视频能力的 Android终端&#xff0c;通过平台注册接入到现有的GB/T28181—2016服务&#xff0c;可用于如智能监控…