Notas de estudio de SpringCloudAlibaba: cliente OpenFeign

I. Introducción

OpenFeign es una herramienta de llamada de cliente HTTP declarativa web que proporciona interfaces y anotaciones para la llamada.
La primera generación de SpringCloud adopta fingir y la segunda generación adopta openfeign.Función de
cliente de Openfeign: Es una herramienta de llamada remota de cliente Http declarativa web, y la capa inferior es encapsular la tecnología HttpClient.
Openfeign es desarrollado por SPringleCloud, mientras que fingir es un código de netflix escrito casi sin cambios.
Preste atención a la llamada falsa del cliente: si el parámetro de solicitud no está anotado, la solicitud de publicación se envía de forma predeterminada.
Openfeign admite el equilibrio de carga y la cinta de forma predeterminada.

Dos, ejemplo

1. Cliente

(1) dependencia de .maven

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

(2) .servicio

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

@FeignClient(name = "alibaba-provider")
public interface FeignDemoService {

    //provider配置了路径server.servlet.context-path=/provider,所以要添加 provider
    @RequestMapping("/provider/demo")
    public String test();
    
}

(3) .controlador

import com.asyf.demo.feignservice.FeignDemoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping(value = "/")
public class DemoController {

    @Autowired
    private FeignDemoService feignDemoService;

    @RequestMapping(value = "/demo")
    public String test() {
        return "consumer:" + feignDemoService.test();
    }

}

2. Servidor

El servidor proporciona una interfaz e inicia dos servicios para registrarse en el registro de nacos

(1) .controlador

@Value("${server.port}")
private Integer port;
    
@RequestMapping(value = "/demo", method = RequestMethod.GET)
public String test() {
    System.out.println(test.length());
    return "abc" + " - port:" + port;
}

3. Inicie el servidor y el cliente.

4. Prueba

访问http: // localhost: 8090 / consumer / demo

Nota:

(1) Si la interfaz está conectada

(2) ¿El equilibrio de carga es fácil de usar?

Supongo que te gusta

Origin blog.csdn.net/cs373616511/article/details/112438897
Recomendado
Clasificación