1-Eureka服务注册与发现以及Eureka集群搭建(实操型)

news2024/11/16 1:53:48

1-Eureka服务注册与发现以及Eureka集群搭建(实操型)

  • 1. 简单搭建微服务框架
    • 1.1 idea创建maven多模块项目
    • 1.2 项目结构
    • 1.3 项目依赖与配置
      • 1.3.1 父工程:dog-cloud-parent
      • 1.3.2 管理实体项目:dog-po
      • 1.3.3 服务提供者:dog-provider-8001
        • 1.3.3.1 简单项目结构
        • 1.3.3.2 pom文件
        • 1.3.3.3 yml文件
      • 1.3.4 服务消费者:dog-consumer-80
        • 1.3.4.1 项目目录结构
        • 1.3.4.2 pom文件
        • 1.3.4.3 yml文件
        • 1.3.4.4 配置类
    • 1.4 访问
      • 1.4.1 直接访问服务提供者
        • 1.4.2 访问服务消费者
  • 2. 建立EurekaServer服务注册中心(本地)
    • 2.1 创建子模块—EurekaServer服务注册中心
    • 2.2 pom文件
    • 2.3 yml文件
    • 2.4 启动类
  • 3. 将微服务注册进EurekaServer服务注册中心(本地)
    • 3.1 将服务提供者注册到EurekaServer服务注册中心
      • 3.1.1 修改pom文件
      • 3.1.2 修改yml文件
      • 3.1.3 启动类加注解
      • 3.1.4 测试
      • 3.1.5 控制访问路径显示IP地址
      • 3.1.6 完善微服务info内容
        • 3.1.6.1 修改pom文件
          • 3.1.6.1.1 微服务的pom文件
          • 3.1.6.1.2 父工程的pom文件
        • 3.1.6.2 修改yml文件
        • 3.1.6.3 观看效果
  • 4. Eureka服务发现(本地)
    • 4.1 提供发现服务的接口
      • 4.1.1 服务提供者
      • 4.1.2 服务消费者
    • 4.2 查看效果
  • 5. Eureka集群
    • 5.1 Eureka单机(远程服务器)
      • 5.1.1 创建Eureka Server项目
      • 5.1.2 项目简单配置
        • 5.1.2.1 pom文件
        • 5.1.2.2 yml文件
        • 5.1.2.3 启动类
      • 5.1.3 服务提供者yml配置
      • 5.1.4 启动看效果
    • 5.2 Eureka集群(远程服务器)
      • 5.2.1 EurekaServer准备yml配置文件
      • 5.2.2 微服务修改yml文件
      • 5.2.3 启动Eureka集群 和 微服务
  • 6. 附项目

1. 简单搭建微服务框架

1.1 idea创建maven多模块项目

  • 直接看下面的文章
    idea创建maven多模块项目.

1.2 项目结构

  • 简单介绍一下:
    • 父工程:dog-cloud-parent
    • 管理实体项目:dog-po
    • 微服务-服务提供者:dog-provider-8001
    • 微服务-服务消费者:dog-consumer-80
  • 如下:
    在这里插入图片描述

1.3 项目依赖与配置

1.3.1 父工程:dog-cloud-parent

  • pom如下:

    <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.liu.susu</groupId>
      <artifactId>dog-cloud-parent</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>pom</packaging>
    
      <name>dog-cloud-parent</name>
      <url>http://maven.apache.org</url>
      <modules>
        <module>dog-po</module>
        <module>dog-provider-8001</module>
        <module>dog-consumer-80</module>
      </modules>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    
        <spring-boot.version>1.5.9.RELEASE</spring-boot.version>
    
        <junit.version>3.8.1</junit.version>
        <log4j.version>1.2.17</log4j.version>
        <lombok.version>1.16.8</lombok.version>
        <java.version>1.8</java.version>
    
        <mysql-connector.version>8.0.15</mysql-connector.version>
      </properties>
    
    
        <dependencyManagement>
          <dependencies>
    
            <dependency>
              <groupId>org.springframework.cloud</groupId>
              <artifactId>spring-cloud-dependencies</artifactId>
              <version>Dalston.SR1</version>
              <type>pom</type>
              <scope>import</scope>
            </dependency>
            <dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-dependencies</artifactId>
              <version>${spring-boot.version}</version>
              <type>pom</type>
              <scope>import</scope>
            </dependency>
    
    
            <!--注意驱动选择,如果mysql安装的是5.7的,可以用5.0.4,如果安装的是8.x的,要用8.0.15-->
            <dependency>
              <groupId>mysql</groupId>
              <artifactId>mysql-connector-java</artifactId>
    <!--          <version>5.0.4</version>-->
              <version>${mysql-connector.version}</version>
            </dependency>
    
            <dependency>
              <groupId>com.alibaba</groupId>
              <artifactId>druid</artifactId>
              <version>1.0.31</version>
            </dependency>
    
            <dependency>
              <groupId>org.mybatis.spring.boot</groupId>
              <artifactId>mybatis-spring-boot-starter</artifactId>
              <version>1.3.0</version>
            </dependency>
    
            <dependency>
              <groupId>ch.qos.logback</groupId>
              <artifactId>logback-core</artifactId>
              <version>1.2.3</version>
            </dependency>
    
            <dependency>
              <groupId>junit</groupId>
              <artifactId>junit</artifactId>
              <version>${junit.version}</version>
              <scope>test</scope>
            </dependency>
    
            <dependency>
              <groupId>log4j</groupId>
              <artifactId>log4j</artifactId>
              <version>${log4j.version}</version>
            </dependency>
    
          </dependencies>
       </dependencyManagement>
    
    </project>
    

1.3.2 管理实体项目:dog-po

  • 如下:
    在这里插入图片描述
    <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>
        <parent>
            <groupId>com.liu.susu</groupId>
            <artifactId>dog-cloud-parent</artifactId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
        <artifactId>dog-po</artifactId>
        <packaging>jar</packaging>
    
        <name>dog-po</name>
        <url>http://maven.apache.org</url>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.26</version>
            </dependency>
    
        </dependencies>
    
    </project>
    

1.3.3 服务提供者:dog-provider-8001

1.3.3.1 简单项目结构

  • 如下:
    在这里插入图片描述

1.3.3.2 pom文件

  • 如下:
    <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>
        <parent>
            <groupId>com.liu.susu</groupId>
            <artifactId>dog-cloud-parent</artifactId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
        <artifactId>dog-provider-8001</artifactId>
        <packaging>jar</packaging>
    
        <name>dog-provider-8001</name>
        <url>http://maven.apache.org</url>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <dependencies>
    
            <dependency>
                <groupId>com.liu.susu</groupId>
                <artifactId>dog-po</artifactId>
                <version>${project.version}</version>
            </dependency>
    
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <scope>test</scope>
            </dependency>
    
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
            </dependency>
    
            <!--下面这几个,版本同${spring-boot.version}-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jetty</artifactId>
            </dependency>
    
            <!--热部署  版本同${spring-boot.version}-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>springloaded</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
            </dependency>
    
        </dependencies>
    </project>
    

1.3.3.3 yml文件

  • 如下:
    server:
      port: 8001
    
    spring:
      application:
        name: dog-provider
      datasource:
        type: com.alibaba.druid.pool.DruidDataSource
    #    driver-class-name: org.gjt.mm.mysql.Driver    # mysql5.7的
        driver-class-name: com.mysql.cj.jdbc.Driver    # mysql8.x版本的
        #    url: jdbc:mysql://localhost:3306/dogCloud
        url: jdbc:mysql://localhost:3306/dogCloud?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false
        username: root
        password: susu@123
        dbcp2:
          min-idle: 5        # 数据库连接池的最小维持连接数
          initial-size: 5    # 初始化连接数
          max-total: 5       # 最大连接数
          max-wait-millis: 200    # 等待连接获取的最大超时时间
    
    mybatis:
      config-location: classpath:mybatis/mybatis-config.xml
      type-aliases-package: com.liu.susu.pojo     # 所有entity实体别名类实体所在包
      mapper-locations:
        - classpath:mybatis/mapper/**/*.xml
    

1.3.4 服务消费者:dog-consumer-80

1.3.4.1 项目目录结构

  • 如下:
    在这里插入图片描述

1.3.4.2 pom文件

  • 如下:
    <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>
        <parent>
            <groupId>com.liu.susu</groupId>
            <artifactId>dog-cloud-parent</artifactId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
        <artifactId>dog-consumer-80</artifactId>
        <description>微服务消费者-狗狗</description>
        <packaging>jar</packaging>
    
        <name>dog-consumer-80</name>
        <url>http://maven.apache.org</url>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>com.liu.susu</groupId>
                <artifactId>dog-po</artifactId>
                <version>${project.version}</version>
            </dependency>
    
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <scope>test</scope>
            </dependency>
    
            <!--下面这几个,版本同${spring-boot.version}-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!--热部署  版本同${spring-boot.version}-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>springloaded</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
            </dependency>
    
        </dependencies>
    </project>
    

1.3.4.3 yml文件

  • 如下:
    在这里插入图片描述

1.3.4.4 配置类

  • 如下:
    package com.liu.susu.config;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.client.RestTemplate;
    
    /**
     * @Description
     * @Author susu
     */
    
    @Configuration  
    public class ConfigBean {
    
        @Bean
        public RestTemplate getRestTemplate(){
            return new RestTemplate();
        }
    
    }
    

1.4 访问

1.4.1 直接访问服务提供者

  • 如下:
    在这里插入图片描述

1.4.2 访问服务消费者

  • 如下:
    在这里插入图片描述

2. 建立EurekaServer服务注册中心(本地)

2.1 创建子模块—EurekaServer服务注册中心

  • 在上面基础上再创建一个子模块,如下:
    在这里插入图片描述

2.2 pom文件

  • 如下:
    在这里插入图片描述

    <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>
        <parent>
            <groupId>com.liu.susu</groupId>
            <artifactId>dog-cloud-parent</artifactId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
        <artifactId>dog-eureka-7001</artifactId>
        <packaging>jar</packaging>
    
        <name>dog-eureka-7001</name>
        <url>http://maven.apache.org</url>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <dependencies>
    
            <!-- eureka-server 服务端
                 版本号继承父工程  -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-eureka-server</artifactId>
            </dependency>
    
        </dependencies>
    
    </project>
    

2.3 yml文件

  • 如下:
    在这里插入图片描述

    server:
      port: 7001
    
    eureka:
      instance:
        hostname: localhost    # eureka服务端的实例名
      client:
        register-with-eureka: false  # false表示不向注册中心注册自己
        fetch-registry: false    # false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
        service-url:   # 设置与eureka server交互的地址查询服务和注册服务都需要依赖这个地址
          defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
    

2.4 启动类

  • 注意加注解 @EnableEurekaServer ,如下:
    在这里插入图片描述

3. 将微服务注册进EurekaServer服务注册中心(本地)

3.1 将服务提供者注册到EurekaServer服务注册中心

3.1.1 修改pom文件

  • 如下:
    在这里插入图片描述
      <!--引入eureka-client(eureka客户端),将微服务provider注册进eureka-->
      <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-starter-eureka</artifactId>
      </dependency>
      <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-starter-config</artifactId>
      </dependency>
    

3.1.2 修改yml文件

  • 如下:
    在这里插入图片描述
    eureka:
      client: # 客户端注册进eureka服务列表内
        service-url:
          defaultZone: http://localhost:7001/eureka
    

3.1.3 启动类加注解

  • 如下:
    @EnableEurekaClient 
    
    在这里插入图片描述

3.1.4 测试

  • 启动EurekaServer 和 服务提供者,查看注册情况,如下:
    在这里插入图片描述

3.1.5 控制访问路径显示IP地址

  • 如下
    在这里插入图片描述

3.1.6 完善微服务info内容

  • 完善前的如下:
    在这里插入图片描述
    要想完善,如下:

3.1.6.1 修改pom文件

3.1.6.1.1 微服务的pom文件
  • 如下:

    <!--完善微服务的info (actuator监控信息完善),版本同${spring-boot.version}-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    
3.1.6.1.2 父工程的pom文件
  • 添加build构建信息,如下:
    在这里插入图片描述
      <build>
        <finalName>dog-cloud-parent</finalName>
        <resources>
          <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering> <!--过滤开启-->
          </resource>
        </resources>
        <plugins>
          <plugin> <!--插件负责解析和解读-->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
          </plugin>
        </plugins>
      </build>
    
  • 另外,关于maven的其他配置可以看下面的文章,如下
    Maven中的小学问(版本问题、打包问题等).

3.1.6.2 修改yml文件

  • 添加下面内容,如下:
    在这里插入图片描述
    info:
      app.name: demo-dog-cloud-parent
      company.name: com.liu.susu
      build.artifactId: ${project.artifactId}
      build.version: ${project.version}
    

3.1.6.3 观看效果

  • 如下:
    在这里插入图片描述

4. Eureka服务发现(本地)

4.1 提供发现服务的接口

4.1.1 服务提供者

  • 如下:
    在这里插入图片描述
    package com.liu.susu.controller;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.cloud.client.ServiceInstance;
    import org.springframework.cloud.client.discovery.DiscoveryClient;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    /**
     * @Description
     * @Author susu
     */
    
    @RestController
    public class EurekaController {
    
        @Autowired
        private DiscoveryClient discoveryClient;
    
        @RequestMapping("/services/discoveryServices")
        public Object discoveryServices(){
            List<String> serviceList = discoveryClient.getServices();
            System.out.println(serviceList);
    
            Map<String, List<ServiceInstance>> serviceMap = new HashMap<>();
    
            for (String clientStr : serviceList) {
                List<ServiceInstance> instances = discoveryClient.getInstances(clientStr.toUpperCase());
                serviceMap.put(clientStr,instances);
            }
            return serviceMap;
        }
    
    }
    

4.1.2 服务消费者

  • 如下:
    在这里插入图片描述

    package com.liu.susu.controller;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.client.RestTemplate;
    
    /**
     * @Description
     * @Author susu
     */
    
    @RestController
    public class EurekaConsumerController {
    
        private static final String REST_URL_PREFIX = "http://localhost:8001";//服务提供者的端口8001
    
        @Autowired
        private RestTemplate restTemplate;
    
        @RequestMapping("/consumer/services/discoveryServices")
        public Object discoveryServices(){
            String url = REST_URL_PREFIX + "/services/discoveryServices";
            return restTemplate.getForObject(url, Object.class);
        }
    
    }
    

4.2 查看效果

  • 服务提供者,如下:
    在这里插入图片描述
  • 服务消费者,如下:
    在这里插入图片描述

5. Eureka集群

5.1 Eureka单机(远程服务器)

5.1.1 创建Eureka Server项目

  • 为了整个微服务项目看着简洁,就把Eureka Server项目单独拿出来了,重新创建如下
    在这里插入图片描述

5.1.2 项目简单配置

5.1.2.1 pom文件

  • 如下:
    <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.liu.susu</groupId>
      <artifactId>cloud-eureka</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>jar</packaging>
    
      <name>cloud-eureka</name>
      <url>http://maven.apache.org</url>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-starter-eureka-server</artifactId>
          <version>1.3.1.RELEASE</version>
        </dependency>
    
      </dependencies>
    
    
      <build>
        <resources>
          <resource>
            <directory>src/main/java</directory>
            <includes>
              <include>**/*.*</include>
            </includes>
          </resource>
          <resource>
            <directory>src/main/resources</directory>
            <includes>
              <include>**/*.*</include>
            </includes>
          </resource>
        </resources>
        <plugins>
          <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>1.5.9.RELEASE</version>
                <configuration>
                  <mainClass>com.liu.susu.App</mainClass>
                </configuration>
                <executions>
                  <execution>
                    <id>repackage</id>
                    <goals>
                      <goal>repackage</goal>
                    </goals>
                  </execution>
                </executions>
          </plugin>
        </plugins>
        <finalName>${project.name}</finalName>
      </build>
    
    </project>
    

5.1.2.2 yml文件

  • 如下:
    server:
      port: 2886
    
    eureka:
      instance:
        hostname: eureka-142    # eureka服务端的实例名
      client:
        register-with-eureka: false  # false表示不向注册中心注册自己
        fetch-registry: false    # false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    

5.1.2.3 启动类

  • 如下:
    在这里插入图片描述

5.1.3 服务提供者yml配置

  • 地址换成启动服务的IP地址,如下:
    在这里插入图片描述

5.1.4 启动看效果

  • 如下:
    在这里插入图片描述

5.2 Eureka集群(远程服务器)

5.2.1 EurekaServer准备yml配置文件

  • 我这里直接准备了3个,当然一个也行,如果你部署的时候不嫌麻烦,可以修改一个,我这里为了部署方便,直接3套备好,如下:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 每次只需要修改环境即可:
    在这里插入图片描述
  • 配置IP时,逗号后面不能有空格(注意!注意!注意!),通用配置如下:
    # 1. 集群配置---175机器上
    server:
      port: 2886
    
    eureka:
      instance:
        hostname: eureka-142    # eureka服务端的实例名
      client:
        register-with-eureka: false  # false表示不向注册中心注册自己
        fetch-registry: false    # false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
        service-url:   # 配置其他两台机器的IP
          defaultZone: http://IP2:2886/eureka/,http://IP3:2886/eureka/  # 注意:逗号后面不能有空格!!!!
    

5.2.2 微服务修改yml文件

  • 这里的微服务还是上面的服务提供者,如下:
    在这里插入图片描述

5.2.3 启动Eureka集群 和 微服务

  • 这里的微服务就是上面的服务提供者,效果如下:
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

6. 附项目

  • 如下:
    1-Eureka服务注册与发现以及Eureka集群搭建(实操型).

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

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

相关文章

HBase(9):过滤器

1 简介 在HBase中,如果要对海量的数据来进行查询,此时基本的操作是比较无力的。此时,需要借助HBase中的高级语法——Filter来进行查询。Filter可以根据列簇、列、版本等条件来对数据进行过滤查询。因为在HBase中,主键、列、版本都是有序存储的,所以借助Filter,可以高效地…

主流开源深度学习框架简介

主流开源深度学习框架简介 本文目录&#xff1a; 一、TensorFlow深度学习框架 二、PyTorch深度学习框架 三、Keras深度学习框架 四、Caffe深度学习框架 五、中国深度学习开源框架状况 六、几种框架的对比 七、其他统计数据 当下&#xff0c;有许多主流的开源深度学习框架…

mysql 模糊查询的字段 支持不区分大小写功能

1. 直接修改字段对应的校对规则即可 ​​​​​​ 2. 校对规则说明 ​ utf8_bin 将字符串中的每一个字符用二进制数据存储&#xff0c;区分大小写。 utf8_genera_ci 不区分大小写&#xff0c;ci为case insensitive的缩写&#xff0c;即大小写不敏感。utf8_general_cs 区分…

香蕉派BPI-R4 Wifi7路由器采用联发科MT7988A (Filogic 880)设计

香蕉派BPI-R4路由器板采用联发科MT7988A (Filogic 880)四核ARM Corex-A73方案设计&#xff0c;板载4GB DDR4内存,8GB eMMC存储,128MB SPI-NAND闪存&#xff0c;还具有2个10Gbe SFP光电口, 4x Gbe千兆网口&#xff0c;带USB3.2端口&#xff0c;M.2接口支持4G/5G/NVME SSD.2x min…

海外版“咸鱼”Carousell是什么?

做跨境的都知道&#xff0c;一定不能只在一颗树上吊死&#xff0c;潮流总是把你推着向前的&#xff0c;现在跨境电商平台一样层出不穷。今天就来跟大家分享最近发现比价好做的外贸电商平台APP——Carousell。号称海外版“咸鱼”&#xff0c;它的功能也与咸鱼是差不多的&#xf…

群晖ssh登录并开启root用户登录功能

说明 群辉默认不允许SSH使用ROOT远程登陆&#xff0c;只能用手动创建的账户登陆&#xff0c;需要拷贝破解文件的时候会提示权限不足&#xff0c;这个时候肯定需要通过root用户去登录靠北 启动ssh登录功能 双击控制面板 点击终端和SNMP 启用ssh和telnet 点击应用 finalshel…

SpringBoot入门:使用IDEA构建第一个SpringBoot项目

SpringBoot框架介绍 Spring Boot是一个简化Spring开发的框架&#xff0c;用来监护spring应用开发&#xff0c;约定大于配置&#xff0c;去繁就简&#xff0c;just run 就能创建一个独立的&#xff0c;产品级的应用。我们在使用Spring Boot时只需要配置相应的Spring Boot就可以…

编译原理三:词法分析

概念 在编译器工作流程中&#xff0c;词法分析是将源代码分解为一系列词法单元的过程。 词法单元包括标识符、关键字、运算符等。词法分析器会读取源代码的每一个字符&#xff0c;根据预定义的规则将它们组成一系列词法单元。 词法分析器通常使用有限状态机来实现。有限状态机…

如何解决在vue3+vite项目中加载不了.tga文件的问题

因项目需求所以需要加载 .tga 类型的文件 import backgroundImage from "/assets/combined_image.tga" import { TGALoader } from "three/addons/loaders/TGALoader.js";const loader new TGALoader(); const texture1 loader.load(backgroundImage);但…

操作系统5:线程的概念和线程实现

目录 1、线程的概念 &#xff08;1&#xff09;进程和进程并发是所需要付出的时空开销 &#xff08;2&#xff09;线程和进程的比较 &#xff08;3&#xff09;线程的状态和线程的控制块 2、线程的实现 &#xff08;1&#xff09;线程的实现方式 &#xff08;2&#xff…

2.编程语言的代码规则和规范

**格式和规范**只需要记住最原始的c和c的语言规则就可以了不要把所有的方法都掌握了 比如孔乙己 每个语法之间要有空格或分隔符 2。“”英文双引号里面是不需要的&#xff0c;这个双引号里面输入什么都可以 3.预处理的命令 必须一条占一行

传统美业如何拓客引流?如何借力小程序实现低成本引流与锁客

​传统门店的经营方式主要靠广告投入和口碑传播&#xff0c;然而&#xff0c;门店客流寥寥无几&#xff0c;如今&#xff0c;移动互联网时代&#xff0c;新零售的盛行&#xff0c;传统实体门店急需转型&#xff0c;接轨新的商业营销模式来为门店引流。 处在小程序爆发的风口&a…

《PyTorch深度学习实践》第四讲 反向传播

b站刘二大人《PyTorch深度学习实践》课程第四讲反向传播笔记与代码&#xff1a;https://www.bilibili.com/video/BV1Y7411d7Ys?p4&vd_sourceb17f113d28933824d753a0915d5e3a90 对于上述简单的模型可以用解析式来做&#xff0c;但是对于复杂模型而言&#xff0c;如下图每个…

详解线程池的作用和实际应用以及拒绝策略

目录 线程池的作用&#xff1f; 线程池的意义&#xff1a; 线程池的参数 ​编辑 线程池任务执行的顺序 线程池拒绝策略 四种策略 应用场景分析 AbortPolicy DiscardPolicy DiscardOldestPolicy CallerRunsPolicy 线程池的作用&#xff1f; 优化系统架构通常包括在时间…

亚马逊平台买家注册流程

在亚马逊平台注册买家号是比较简单的。以下是亚马逊买家注册流程&#xff1a; 1、打开亚马逊网站&#xff1a;访问亚马逊的官方网站&#xff0c;如果要注册美国买家号&#xff0c;那么网址就是www.amazon.com。 2、点击"注册"&#xff1a;在亚马逊首页的右上角&…

LLM - 搭建 ProteinGPT 结合蛋白质结构 PDB 知识的行业 ChatGPT 系统

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://blog.csdn.net/caroline_wendy/article/details/131403263 论文&#xff1a;ProteinChat: Towards Enabling ChatGPT-Like Capabilities on Protein 3D Structures 工程&#xff1a;ht…

C语言学习(二十九)---内存操作函数

在上一节内容中&#xff0c;我们学习了有关字符串操作的函数&#xff0c;其中分为了限制长度和不限制长度两种方式&#xff0c;虽然上节内容已经在很大程度上有助于程序的实现&#xff0c;但是其有一个致命的缺陷&#xff0c;聪明的你一定已经猜到了吧&#xff0c;对的&#xf…

Linux 网络通信C/S、TCP/IP、Socket 最全详解( 9 ) -【Linux通信架构系列 】

系列文章目录 C技能系列 Linux通信架构系列 C高性能优化编程系列 深入理解软件架构设计系列 高级C并发线程编程 期待你的关注哦&#xff01;&#xff01;&#xff01; 现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everything is for the…

【算法题】动态规划中级阶段之不同的二叉搜索树、交错字符串

动态规划中级阶段 前言一、不同的二叉搜索树1.1、思路1.2、代码实现 二、不同的二叉搜索树 II2.1、思路2.2、代码实现 三、交错字符串3.1、思路3.2、代码实现 总结 前言 动态规划&#xff08;Dynamic Programming&#xff0c;简称 DP&#xff09;是一种解决多阶段决策过程最优…

Pycharm中成功配置PyQt5(External Tools),设计好界面直接生成python代码

1、安装PyQt5和PyQt5-tools 在Pycharm中设置好Python环境&#xff0c;点击File-Settings-Project-Python Interpreter 设置好后退出&#xff0c;点击窗口下的Terminal&#xff0c;输入 # 直接安装输入pip install pyqt5&#xff0c;如果太慢可以用国内镜像源&#xff0c;若出…