Red de conocimiento de abogados - Derecho de sociedades - Arquitectura de microservicios ~ cómo evolucionaron BFF y gateway

Arquitectura de microservicios ~ cómo evolucionaron BFF y gateway

BFF (Backend para Frontend) y Gateway son dos conceptos importantes en la arquitectura de microservicios. Estos dos conceptos son relativamente nuevos y algunos desarrolladores e incluso arquitectos no los entienden bien. (Viagra siempre ha sido una persona de front-end. Cuando escuché al Maestro hablar de BFF por primera vez, pensé que estaba equivocado. No hay un BFF en el front-end, pero ¿hay uno en BFC?♂?)

Este artículo utiliza un caso de empresa imaginario. En forma de diagramas, explique qué son BFF y gateway y cómo evolucionaron. Espero que inspire a los arquitectos a diseñar e implementar arquitectura de microservicios.

Primero retrocedamos el tiempo hasta aproximadamente 2011. Supongamos que existe CoolShop, una empresa de comercio electrónico con un cierto volumen de negocios. En este momento, ha completado la deconstrucción y división de aplicaciones individuales y el servicio SOA interno se ha completado inicialmente. En este momento, sus aplicaciones inalámbricas aún no se han iniciado. La capa de experiencia del usuario front-end son principalmente aplicaciones web tradicionales del lado del servidor. La arquitectura general orientada a servicios V1 se muestra en la siguiente figura.

El tiempo vuela hasta principios de 2012 y las aplicaciones inalámbricas domésticas han comenzado a despegar. CoolShop también está siguiendo la tendencia del mercado y desarrollando su propia aplicación inalámbrica nativa. Para conectarse lo antes posible, el arquitecto de la empresa propuso la siguiente arquitectura V2, que permite a la aplicación llamar directamente a servicios internos:

Esta arquitectura tiene los siguientes problemas:

El La arquitectura V2 tiene demasiados problemas y no se ha desarrollado. Para resolver los problemas anteriores, el arquitecto decidió introducir una nueva función: Mobile BFF entre dispositivos externos y microservicios internos.

El llamado BFF es en realidad la abreviatura de Backend para Frontend. La traducción al chino es el backend desarrollado para el frontend. Lo desarrolla principalmente el equipo de frontend (los microservicios de backend generalmente son desarrollados por el). equipo de back-end). BFF puede considerarse como un servicio de adaptación, que adapta microservicios de back-end (incluida principalmente lógica como la adaptación de agregación y adaptación de formato), expone API amigables y unificadas para dispositivos inalámbricos y facilita el acceso de dispositivos inalámbricos al back-end.

La nueva arquitectura V2.1 se muestra a continuación:

Las ventajas de esta arquitectura son:

La arquitectura V2.1 es relativamente exitosa y es compatible con CoolShop. después de la implementación. El crecimiento del negocio inalámbrico inicial de la empresa. Con el mayor crecimiento del volumen de negocios, la cantidad de equipos invertidos en I + D inalámbrico también ha seguido aumentando, y la arquitectura V2.1 ha expuesto gradualmente los siguientes problemas:

Para resolver los problemas anteriores, el arquitecto decidió utilizar equipo externo y BFF interno después de una cuidadosa consideración. Se introduce una nueva función ~API Gateway, y la nueva arquitectura V3 se muestra en la siguiente figura:

La nueva arquitectura V3 tiene los siguientes ajustes. :

En la nueva arquitectura V3, la puerta de enlace juega un papel importante. Es una herramienta poderosa para desacoplar, dividir y realizar actualizaciones y migraciones posteriores. Con la cooperación de la puerta de enlace, un único BFF logra el desacoplamiento y la división. Cada equipo de línea de negocio puede desarrollar y entregar de forma independiente sus propios microservicios, lo que mejora en gran medida la eficiencia de la I+D. Además, una vez que la lógica transversal se elimina de BFF a la puerta de enlace, los desarrolladores de BFF pueden centrarse más en la entrega de la lógica empresarial y lograr la separación arquitectónica de preocupaciones (Separación de preocupaciones).

A medida que el negocio continúa desarrollándose, la arquitectura técnica también debe ajustarse constantemente para hacer frente a los cambios en la demanda.

En los últimos años, el equipo técnico de CoolShop ha marcado el comienzo de nuevas necesidades técnicas y comerciales, principalmente:

Para satisfacer las necesidades comerciales, el arquitecto ha ampliado y actualizado la arquitectura orientada a servicios La nueva arquitectura V4 es. de la siguiente manera Como se muestra en la figura:

La idea general de V4 es similar a la de V3, excepto que expande nuevos canales de acceso:

V4 es una arquitectura de microservicio moderna relativamente completa , desde el exterior hacia el interior, se divide en: capa de experiencia del usuario final-gt; capa de puerta de enlace-gt; Toda la arquitectura tiene niveles claros y responsabilidades claras. Es una arquitectura flexible y evolutiva que puede soportar la innovación empresarial continua.

Dirección original: blogs.com/dadadechengzi/p/9373069.html