SpringCloud construcción simple
En la arquitectura de microservicios, SpringBoot solo se puede utilizar para el desarrollo de aplicaciones. Si desea implementar una arquitectura completa de microservicios, también necesita implementar funciones como registro y descubrimiento de servicios, puerta de enlace API y equilibrio de carga en la arquitectura. Luego, implemente estas funciones en la arquitectura a través de Spring Cloud.
Antes de crear un proyecto, debe comprender que la diferencia entre los números de versión de SpringCloud y SpringBoot es:
SpringBoot distingue los números de versión por números, y SpringCloud se nombra según el orden de las letras en inglés, utilizando el "nombre de lugar + número de versión" de Londres De Por ejemplo: Angel SR6, Brixton SR7, Camden SR7, Dalston SR3. Entre ellos, Angel, Brixton, Camden, Dalston son nombres de lugares, SR es la preparación de las versiones de servicio. , El número detrás es el número de versión.
Requisitos:
jdk: 1.8
herramientas de desarrollo: IDEA
Nota: es necesario comprender springcloud
Crear un proyecto Maven basado en la web (Spring Cloud)
1. Crear un padre. Cree el proyecto SpringBoot en el proyecto springcloud:
1. Nuevo-> proyecto Seleccione spring initializr
2. Cree su propio nombre de paquete y nombre de clase.
3. Este paso es diferente de crear springboot, el foco está dibujado, preste atención a los dos cuadros rojos a continuación
4. Ingrese el nombre del proyecto, seleccione la ruta de almacenamiento del proyecto
5, importe maven
6, elimine el paquete src
Cuando decidimos actualizar Spring Cloud, ¿cuál fue la primera pregunta a considerar primero?
Naturalmente, no hace falta decir que ese debe ser el problema de la versión principal de Spring Cloud, a qué versión actualizar, versión F o versión G.
Aquí hay algunas sugerencias (experiencia de minería profesional)
Finchley.SR2 (versión estable) para desarrollo empresarial, desarrollo personal a voluntad.
Al actualizar, utilicé la última versión de Greenwish M3 pre (necesito configurar la dirección de Maven para que coincida con la dirección de almacén proporcionada por Spring, y no la envié a otros almacenes por el momento). Se tardó menos de medio día en pasar a la versión estable F.
Descripción de la versión de SpringCloud La
siguiente imagen es una descripción de la versión de SpringCloud en el sitio web oficial (a partir del 12 de diciembre de 2018) Espero poder ayudarlo
- Versión en la nube INSTANTÁNEA: La versión de la instantánea, puede modificarse en cualquier momento;
- M: MileStone; M1 indica la primera versión de hito, generalmente marcada PRE al mismo tiempo, que indica la versión de vista previa;
- SR: Service Release, SR1 representa la primera versión oficial, generalmente marcada al mismo tiempo
- GA: (Generalmente disponible), que indica una versión estable
- Por lo tanto, el desarrollo empresarial puede elegir la versión estable, sin dudarlo (excepto en circunstancias especiales)
7. Modifique el archivo pom.xml
En segundo lugar, crear un centro de registro eureka
1. Cree un nuevo módulo (módulo) en el proyecto principal
2. Seleccione Spring initializr para configurar la versión jdk, haga clic en Siguiente
3. Escriba el nombre de su propio módulo, aquí lo llamaré eureka
4. Seleccione el servicio eureka
5. Cree un submódulo
6, modificar puntos de configuración de los padres del niño a los padres
7, modificar el archivo pom padres, añadir el sub-módulo
8, porque es sólo como un centro de registro puede mantener sólo una parte de un círculo, el resto heredará el público clase padre
a El archivo Application.properties cambió a archivo application.yml.
Escribe el archivo application.yml.
server:
port: 8901 #端口号
spring:
application:
name: discovery-eureka #名称
eureka:
instance:
hostname: localhost #host地址(名称)
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl: #服务路径
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
Agregue @EnableEurekaServer
a la clase de inicio EurekaApplication para visitar http: // localhost: 8901 / para ver
Tercero, crear un submódulo de servicio
Escribir el nombre de la sub-módulo de
seleccionar el tipo de web
creada
Modifique la configuración padre del niño para que apunte al padre.
Borre todas las referencias. En la etapa inicial, herede el público padre. Qué referencia y uso posterior
cambiará el archivo application.properties al archivo application.yml y creará la configuración yml de configuración local, de prueba y de producción correspondiente. Archivo (puede crearse según sus necesidades)
escriba el archivo application.yml
#引用注册中心
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8901/eureka/
#服务端口号
server:
port: 8902
spring:
#升级 boot 2.0 后返回日期类型指定为时间戳,实体中jsonFormat自由设置格式
jackson:
serialization:
write-dates-as-timestamps: true
profiles:
active: local #启动默认local的yml配置
application:
name: application-provider #该模块的名字
#文件上传设置大小限制
servlet:
multipart:
enabled: true
max-file-size: 10MB
max-request-size: 10MB
Agregar clase de inicio de prueba al paquete de prueba bajo la aplicación
package com.example.application;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class) //添加测试启动类
@SpringBootTest
class ApplicationTests {
@Test
void contextLoads() {
}
}
Construido completado