WordPress es un potente sistema de gestión de contenidos (CMS) que sienta las bases para distintos tipos de sitios web y aplicaciones. Utiliza una típica "arquitectura monolítica", pero a medida que un sitio web crece, esta puede no ser la arquitectura más adecuada. Aquí es donde entra en juego la "arquitectura de microservicios".
![Imagen [1] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050806263395.jpg)
Qué son los microservicios
En una arquitectura monolítica, todos los componentes de una aplicación están estrechamente acoplados entre sí. Esencialmente se ejecuta como un único servicio. Esta es una forma sencilla de desarrollar una aplicación, pero a medida que aumenta la complejidad, el mantenimiento y la escalabilidad pueden convertirse en un reto.
En cambio, los microservicios pueden ayudar a descomponer una aplicación en una serie de servicios más pequeños. Cada servicio es independiente de los demás en términos de desarrollo, despliegue y ampliación. Cada servicio gestiona tareas específicas y se comunica con otros servicios a través de interfaces de programación de aplicaciones (API). Por ejemplo, un sitio típico de comercio electrónico tiene un carrito de la compra, una caja, procesamiento de pedidos, páginas de productos, etc.
![Imagen [2] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050802475089.png)
Qué distingue a los microservicios de la arquitectura general
El "lanzamiento de ascensor" avanzado de los microservicios es cómo combinar diferentes tecnologías y herramientas para crear un todo. Hay otras características más profundas que merece la pena destacar:
- desacopladoCada servicio es independiente. Esto significa que puedes utilizar la mejor tecnología para cada trabajo, en lugar de lidiar con marcos inadecuados.
- autogobierno: Al escalarse, los servicios integrados no necesitan depender unos de otros para lograr un funcionamiento de alto rendimiento.
- profesionalización: Por supuesto, cada servicio se centra en su propio trabajo, lo que a su vez afecta al rendimiento.
- resilienciaEl alto rendimiento es una ventaja inherente al hecho de que el fallo de un solo servicio no provoca la caída de todo el sitio.
Más allá de estos aspectos, hay más ventajas en el uso de microservicios:
- escalabilidad: Los servicios personales pueden ampliarse para adaptarse a las necesidades individuales sin que ello afecte al resto de la aplicación.
- destrezaEl objetivo de este artículo es explicar brevemente cómo los servicios utilizan la mejor tecnología para realizar su trabajo. Esto se extiende incluso a los lenguajes de programación utilizados para crearlos.
- Desarrollo más rápidoLos servicios pequeños y centralizados pueden desarrollarse más rápidamente, su funcionalidad puede comprenderse mejor y el sistema puede mantenerse más fácilmente.
- Mejor aislamiento de fallosEl ajuste "modularidad" permite aislar un servicio en caso de fallo sin afectar a otros servicios.
Por otro lado, los microservicios pueden introducir complejidad en la comunicación, la coherencia de los datos y la gestión de sistemas distribuidos. Por lo tanto, hay que sopesar cuidadosamente los requisitos de la aplicación.
![Imagen [3] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050806275022.jpg)
Componentes de la arquitectura de microservicios
Una arquitectura de microservicios puede constar de múltiples componentes. Son como "engranajes" que trabajan juntos a lo largo de la "rueda" para proporcionar aplicaciones escalables y mantenibles.
Por lo tanto, hay una serie de componentes que son fundamentales para una aplicación sin problemas:
- Pasarela API:Es el punto de entrada de las solicitudes de los clientes. Transfiere estas peticiones al microservicio apropiado. También se encarga de tareas como la limitación de velocidad y la autenticación.
- Descubrimiento de servicios:Se necesita una forma dinámica de que los microservicios descubran y se comuniquen entre sí. herramientas como Consul o Eureka pueden ayudar en este sentido.
- Containerización: uso deDockerEs habitual que herramientas como estas empaqueten microservicios y los desplieguen como contenedores. Esta es una forma de proporcionar aislamiento a cada servicio.
- Orquestación:Al añadir microservicios a una aplicación, su gestión se vuelve más compleja.KubernetesEste tipo de herramientas pueden ayudar a automatizar la gestión de los servicios.
- Caché:Rediso mecanismos de almacenamiento en caché como Memcached suelen mejorar el rendimiento. Esto es fundamental dada la mayor carga que soportan los servicios de back-end y las bases de datos.
- Mensajería:Y, por supuesto, los servicios tienen que comunicarse entre sí. Esto esRabbitMQtal vezApache KafkaEstos "intermediarios de mensajes" permiten un acoplamiento flexible entre microservicios. Estos "intermediarios de mensajes" permiten un acoplamiento flexible entre microservicios.
Sin embargo, las herramientas son sólo un aspecto de la configuración. Hay otras consideraciones, como la forma de diseñar cada microservicio en la arquitectura completa.
![Imagen [4] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050806290213.jpg)
Patrones de diseño para microservicios
Patrones de diseño para microserviciosAquí conFlujo de trabajo de desarrolloes tan importante como cualquier otra parte de la aplicación. Dada la complejidad potencial de la aplicación, es importante considerar qué patrones tendrán el mayor impacto. Hay tres principales:
- por base de datos de servicios:Cada microservicio utiliza su propia base de datos dedicada, lo que contribuye al aislamiento y la autonomía de los datos.
- Combinaciones API:Los microservicios pueden combinarse para crear servicios o API de nivel superior. Esta flexibilidad y reutilización son las mayores ventajas.
- Arquitectura basada en eventos:Aquí, los servicios se comunicarán a través de eventos. Esto facilita un acoplamiento más flexible y el procesamiento asíncrono.
Microservicios y la API REST de WordPress
La API REST de WordPress desempeña un papel crucial a la hora de permitir la integración entre sitios y microservicios. Espunto de partida o de llegada (en historias, etc.)Le permite recuperar y manipular entradas, páginas y usuarios de WordPress utilizando la salida JSON,clasificaciónetc.
[
{
"id": 1
"date": "2020-04-01T10:30:00",
"date_gmt": "2020-04-01T14:30:00",
"guid": {
"rendered": "https://example.com/?p=1"
},
"modified": "2020-04-01T10:30:00", "modified_gmt": "2020-04-01T10:30:00",
"modified_gmt": "2020-04-01T14:30:00", "modified_gmt": "2020-04-01T14:30:00",
"title": {
"rendered": "Hola Mundo"
}, ...
...
Como tal, la API REST es el centro de todos los demás servicios de la arquitectura. Esto significa que hay que elegir qué servicios web actuales extraer como microservicios. Hablaremos de esto con más detalle en un post posterior.
La clave está en identificar las diferentes funciones y responsabilidades dentro de una aplicación web. A partir de ahí, pueden dividirse en microservicios independientes, centralizados y desplegables.
Creación de aplicaciones web con Create Block Themes y microservicios
Aprende sobre el proceso de construcción de una aplicación web utilizando microservicios y el plugin Create Block Theme. El primer paso es configurar el entorno de desarrollo.
1.Construir el entorno de desarrollo
Toda aplicación comienza con un espacio utilizado para crearla. Por lo tanto, se necesita un entorno de desarrollo. El espacio de desarrollo tiene dos ubicaciones: el ordenador local y el servidor. Configurar eldel entorno de desarrollo localHay muchas formas de hacerlo.
2. Instalación del plugin de creación de bloques temáticos
Una vez configurado el entorno de desarrollo, puede empezar a utilizar el complemento Create Block Theme para crear temas personalizados basados en bloques. También se requiere lo siguiente:
- Un sitio web WordPress en funcionamiento.
- Editor de codificación.
- Crear plugin de tema de bloque.
El plugin puede instalarse de la forma típica de WordPress. A partir de ahí, dirígete a la página de WordPress"Apariencia" > "Crear tema en bloque"Enlace:
![Imagen [5] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050803140145.png)
comprobar"Apariencia".encontrará la pestaña"Gestión de fuentes temáticas"opción. La creación de un tema de bloque también le da acceso a esta opción, que es elBiblioteca de fuentes de WordPress 6.5Función.
![Imagen [6] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050803161510.png)
Estos serán los campos de identificación del asunto en su documentostyle.css. También son muy sencillas e incluyen una disposición paraCatálogo de temas de WordPressSelecciona un nombre, una captura de pantalla, una URL y algunas etiquetas.
Pulse Confirmar y vaya de nuevo a"Apariencia" > "Tema"puedes ver que tu nuevo tema está listo para funcionar:
![Imagen [7] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050803180454.png)
Consejos para crear temas en bloque
Como esto va más allá del alcance de este post, no personalizaremos demasiado el nuevo tema de bloques. No obstante, aquí tienes algunos consejos para utilizar el tema Crear bloque:
- Los cambios pueden realizarse en dos lugares. Puede utilizar la opción "Estilos globales" en el "Editor de todo el sitio", o puede personalizar la opcióntema.jsonDocumentación.
- La creación de un tema en bloque permite generar un tema secundario basado en el tema activo actual.
3. Extracción de los microservicios seleccionados
Una vez que el tema de los bloques está listo, es hora de examinar los microservicios más de cerca. Una decisión clave que hay que tomar es qué servicios se convertirán en "microservicios".
Decida en función de sus necesidades. Sin embargo, hay algunos factores que debes tener en cuenta:
- Características del sitio web:Fíjese en las funciones exclusivas que ofrece el sitio y considere la posibilidad de dividirlas en microservicios independientes, como las funciones de pago.
- Escalabilidad independiente:Los servicios existentes que dependen de un escalado independiente serían buenos candidatos para los microservicios. El almacenamiento en caché es un ejemplo.
- Diversidad tecnológica:Este es otro candidato para microservicios si uno necesita alejarse de la arquitectura PHP de WordPress. Es más o menos el caso de plataformas específicas de comercio electrónico o componentes de backend.
- Segregación de datos:Los servicios con requisitos de almacenamiento de datos personalizados pueden ser microservicios. Este también es el caso si estos servicios no necesitan compartir datos con otros servicios.
![Imagen [8] - Cómo crear aplicaciones web WordPress utilizando arquitectura de microservicios - Photonflux.com | Servicio profesional de reparación de WordPress, alcance global, respuesta rápida](https://www.361sale.com/wp-content/uploads/2024/05/2024050806402842.png)
Desarrollo y despliegue de microservicios
Para manejar y eventualmente desplegar microservicios, es necesario apoyarse en otras herramientas. Estas son algunas de las consideraciones clave y las herramientas que se pueden utilizar:
- Docker suele ser la forma de contenerizar microservicios. Agrupa los microservicios y sus dependencias, lo que facilita su despliegue y ampliación.
- Cada microservicio requiere también un Dockerfile. En él se deben especificar las dependencias, configuraciones y entornos de ejecución necesarios.
- Orquestación y gestión de contenedores mediante Kubernetes.
- Las canalizaciones de integración y despliegue continuos (CI/CD) pueden ser una forma de automatizar las compilaciones, las pruebas y los despliegues. herramientas como GitLab y Travis CI pueden ayudar a agilizar el proceso CI/CD.
- Las funciones sin servidor no requieren servidores completos, por lo que son ideales para microservicios, y plataformas como AWS Lambda, Google Cloud Functions o Azure Functions no requieren servidores locales o gestionados para ejecutar código.
- La pasarela API proporciona un único punto de entrada para los microservicios.Kongtal vezPuerta de enlace API de AmazonAdemás, pueden encargarse de tareas como la autenticación, la limitación de velocidad y el enrutamiento de peticiones.
En este punto, tener un sitio web de WordPress y microservicio que están separados el uno del otro. El último paso es integrarlos.
4. Integración de microservicios con WordPress
Una vez desarrollados y desplegados los microservicios, es necesario integrarlos con WordPress. Para ello, es necesario realizar llamadas a la API desde los puntos finales que WordPress expone a los microservicios. Se requiere un conocimiento profundo de la API REST.
EnMétodos habitualesestoy usandowp_remote_get()tal vezwp_remote_post()Esto le permite enviar peticiones HTTP y procesar respuestas. Esto le permite enviar peticiones HTTP y procesar respuestas. Aquí hay un ejemplo de código que muestra cómo encajan:
// URL del punto final de la API
$api_url = 'https://api.example.com/endpoint';
// Parámetros de solicitud de la API
$params = array(
);
// Realiza la petición a la API utilizando wp_remote_get
$response = wp_remote_get(add_query_arg($params, $api_url));
// Comprueba si la petición se ha realizado correctamente
if (is_wp_error($response)) {
// Manejar el error
$error_message = $response->get_error_message();
// Registrar o mostrar el mensaje de error
} else {
// Procesar la respuesta de la API
$response_body = wp_remote_retrieve_body($response); } else { // Procesar la respuesta de la API.
$data = json_decode($response_body, true);
// Utilizar los datos recuperados según sea necesario
// ...
}
Los microservicios a menudo se benefician de la obtención asíncrona de datos para evitar el bloqueo del hilo principal. WordPress puede combinar dos elementos para hacer esto. Puede utilizar la funciónPaquete API FetchasyncdemasiadoaplazarIntroducido en WordPress 6.3Apoyo.
import apiFetch from '@wordpress/api-fetch';
// URL del punto final de la API de microservicios
const microserviceUrl = 'https://api.example.com/microservice';
...
// Realizar la solicitud de API al microservicio
apiFetch({
ruta: microserviceUrl, método: 'GET', {
method: 'GET', data: params, {
datos: params, })
})
.then((respuesta) => {
// Procesa la respuesta
console.log(respuesta);
// Utilizar los datos recuperados del microservicio
// ...
})
...
Considere también la posibilidad de utilizar AJAX para realizar actualizaciones dinámicas de la interfaz de usuario (UI).Autenticación adecuaday las medidas de seguridad también son fundamentales. La API REST de WordPress incluye varias formas de autenticar una sesión, como el uso de cookies, JSON Web Tokens (JWTs) oContraseña de la solicitud. Dada la dependencia de soluciones externas, es fundamental mantener la seguridad de los microservicios y los sitios.
Dado que estamos utilizando un tema Block personalizado, el proceso consta de tres partes:Inscribirse en el bloqueyRenderización de contenidosy tratamiento de datos.JavaScriptserá el idioma de su elección, elregisterBlockTypese encargará deRegistro y renderización::
// Función JavaScript que construye el Bloque para permitir el acceso dentro del Editor de Bloques.
( function( bloques, elemento ) {
var el = element.createElement;
blocks.registerBlockType( 'mi-micro/stripe-api', {
title: 'Pasarela de pago Stripe', icon: 'dashicons-capi', {
editar: function() {
return el(
div'.
{}, '' // Crea los elementos visuales del microservicio para mostrarlos en el Editor de Bloques.
'' // Crear los elementos visuales del microservicio para mostrarlos en el Editor de Bloques.
); }, {}
); }, ...
...
resúmenes
WordPress es monolítico, pero eso no le impide adoptar microservicios. Hacerlo tiene muchas ventajas, como una mayor escalabilidad, flexibilidad y velocidad de desarrollo. La creación de plugins de temas en bloque permite crear una base de código limpia y segura para el resto del proyecto. Los microservicios pueden introducir complejidad en un sitio web. Utilizar un tema de bloques personalizado significa que estos servicios pueden implementarse según sea necesario de la mejor manera posible.
| Contacte con nosotros | |
|---|---|
| ¿No puede leer el tutorial? Póngase en contacto con nosotros para obtener una respuesta gratuita. Ayuda gratuita para sitios personales y de pequeñas empresas |
Servicio de atención al cliente WeChat
|
| ① Tel: 020-2206-9892 | |
| ② QQ咨询:1025174874 | |
| (iii) Correo electrónico: info@361sale.com | |
| ④ Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres | |
Enlace a este artículo:https://www.361sale.com/es/9427El artículo está protegido por derechos de autor y debe ser reproducido con atribución.





















![Emoji[wozuimei]-Photonflux.com | Servicio profesional de reparación de WordPress, en todo el mundo, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/wozuimei.gif)
![Emoticono [baoquan] - Photon Wave Network | Servicios profesionales de reparación de WordPress, cobertura mundial, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/baoquan.gif)

Sin comentarios