Springcloud-Alibaba similitudes y diferencias〗 〖artículos de seis Consul Registro Eureka, Zookeeper, Cónsul de

A. Cónsul de instalación (versión Windos)

web oficial de descarga demasiado lento, he subido a la nube Baidu

Baidu nube enlace
código de extracción: fs72

1.1 Descargar y descomprimir en una carpeta

Aquí Insertar imagen Descripción

1.2 de entrada cmd en la línea de comandos en el camino

Aquí Insertar imagen Descripción

1.3 En el cónsul de entrada de línea de comandos, un montón de cosas si ocurre lo siguiente, la instalación es correcta

Aquí Insertar imagen Descripción

agente cónsul 1.4 de entrada -Dev empezar Cónsul

Aquí Insertar imagen Descripción
En nuestro puerto local 8500 pueden verse Cónsul propia interfaz de la interfaz de usuario
Aquí Insertar imagen Descripción

II. Nuevo módulo de servicio de pago en la nube-providerconsul-payment8006

8006 2.1 Estructura del módulo

Aquí Insertar imagen Descripción

2.2 cambio pom

<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>cloud2020</artifactId>
        <groupId>com.aiguigu.springcloud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloud-providerconsul-payment8006</artifactId>

    <dependencies>
        <!--springcloud consul-server-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--日常通用jar包-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

perfil application.yml 2.3 build

server:
  port: 8006

spring:
  application:
    name: consul-provider-payment
  ###consul注册中心地址
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        #hostname: 127.0.0.1
        service-name: ${spring.application.name}

2.4 Iniciar la clase

package com.atguigu.springcloud;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@EnableDiscoveryClient
public class PaymentMain8006 {
    public static void main(String[] args) {
        SpringApplication.run(PaymentMain8006.class,args);
    }
}

2.5 clase de tráfico capa Controller

package com.atguigu.springcloud.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.UUID;

@RestController
@Slf4j
public class PaymentConsulController {

    @Value("${server.port}")
    private String serverPort;

    @GetMapping(value = "/payment/consul")
    public String paymentConsul(){
        return "Spring cloud with consul port: "+serverPort+"\t  "+ UUID.randomUUID().toString();
    }
}

2.6 Prueba

cónsul interfaz de la interfaz de usuario abierta puede ver nuestras micro-servicios ya registrados para venir
Aquí Insertar imagen Descripción
ver algunos de los demás datos en el interior conusl
Aquí Insertar imagen Descripción

Pruebas de negocios

Aquí Insertar imagen Descripción

III. Nueva Modul-nube-consumerconsul order80

3.1 Estructura de directorios

Aquí Insertar imagen Descripción

3.2 cambio pom

<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>cloud2020</artifactId>
        <groupId>com.aiguigu.springcloud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloud-consumerconsul-order80</artifactId>


    <dependencies>
        <!--springcloud consul-server-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-discovery</artifactId>
        </dependency>
        <!--springboot整合web组件-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--日常通用jar包配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
    </dependencies>
</project>

perfil application.yml 3.2 build

### consul服务端口号
server:
  port: 80

spring:
  application:
    name: cloud-consumer-order
  ###consul服务注册中心
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        #hostname: 127.0.0.1
        service-name: ${spring.application.name}

maestro de arranque Clase 3.3

package com.atguigu.springcloud;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

import javax.swing.*;

@SpringBootApplication
@EnableDiscoveryClient
public class OrderConsulMain80 {
    public static void main(String[] args) {
        SpringApplication.run(OrderConsulMain80.class,args);
    }
}

capa 3.4 Controlador de la clase de negocios

package com.atguigu.springcloud.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

import javax.annotation.Resource;

@RestController
@Slf4j
public class OrderConsulController {
    public static final String INVOKE_URL ="http://consul-provider-payment";

    @Resource
    private RestTemplate restTemplate;

    @GetMapping(value = "/consumer/payment/consul")
    public String getPaymentInfo(){
        return restTemplate.getForObject(INVOKE_URL+"/payment/consul",String.class);
    }
}

3.5 Configuración de la plantilla de la haba RestTemplate

package com.atguigu.springcloud.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration
public class ApplicationContextConfig {

    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }
}

3.6 Prueba de inicio

Aquí Insertar imagen Descripción
prueba de la clase de negocios
Aquí Insertar imagen Descripción

IV. Registro Centro de Eureka, Zookeeper, Cónsul de las similitudes y diferencias

Nombre del componente idioma GORRA Servicio de Monitorización de la inspección Extranjera exponen interfaces la integración Springcloud
Eureka Java de Puede ser equipado con soporte HTTP integrado
Cónsul Vamos CP apoyo HTTP / DNS integrado
Zookeeper Java CP apoyo cliente integrado

Aquí Insertar imagen Descripción
Hasta cumplir dos

  • C: La consistencia (fuerte consistencia)
  • R: Disponible (disponibilidad)
  • P: tolerancia de reparto (culpa partición tolerancia)

Consul artículos acabados, el siguiente capítulo es el punto de atención Zanga cinta y OpenFeign ~, no se pierdan ~

Publicado 83 artículos originales · ganado elogios 72 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/kingtok/article/details/105036373
Recomendado
Clasificación