Tech Breakout Summit/2021: debajo de la cabeza con WordPress WordPress y Google Cloud Platform

El rendimiento y la escalabilidad son algunos de los principales factores de la adopción sin cabeza para organizaciones a gran escala, pero ¿cómo perciben esos beneficios en primer plano? Aprenda del vicepresidente de ingeniería de Google y el motor WP mientras discuta cómo la nueva solución de motor WP para WordPress, utiliza Google Cloud Platform para proporcionar la próxima generación y flexibilidad a los desarrolladores de WordPress.
VIDEO: Bajo la cabeza de la plataforma de WordPress sin cabeza y la plataforma de diapositivas de Google Cloud en esta sesión, Google Engineering VP, Chen Goldberg y VP de ingeniería en WP Engine Brandon Durette Talk:
Desarrollo rápido con Google Cloud Platform (GCP) Kubernetes Engine, que facilita la implementación, administración y escala de aplicaciones.
La nueva solución de motor WP para WordPress sin cabeza, Atlas, que utiliza GCP para proporcionar la próxima generación de velocidad y flexibilidad para los desarrolladores de WordPress.
Cuando implementa un nuevo código en Atlas, le dicemos a Kubernetes, queremos ejecutar la cuarta versión consecutiva de la versión tres, y Kubernetes se ocupa de comenzar la cuarta versión, cambiando la configuración del balance de carga y el cierre de la versión tres … es algo muy muy muy fuerte. ”
Brandon Durette, vicepresidente de ingeniería en WP Engine Transcript Text Integral Brandon Durette: Hola, ALL.Soy Brandon Durette, vicepresidente de ingeniería en WP Engine.Chen Goldberg: Hola, y soy Chen Goldberg, vicepresidente de ingeniería en Google Cloud.Brandon Durette: Hoy, hablaremos sobre Atlas, la solución completa del motor WP para WordPress sin cabeza y las tecnologías básicas que lo hacen posible.También hablaremos sobre por qué elegimos la tecnología que hicimos y por qué es importante para usted.Cuando nos propusimos construir una plataforma sin cabeza, mucho antes de dar el nombre de Atlas, hablamos con muchos clientes y agentes socios.Muchos de ellos podrían estar en esta audiencia.Queríamos entender por qué adopta la cabeza sin cabeza o considerar la adopción sin cabeza, porque queríamos asegurarnos de que la plataforma que creamos responda a sus necesidades o las supere.
He escuchado muchas razones por las que fuiste a la cabeza, incluida la capacidad de usar nuevas herramientas y marcos como Node.js y React, Next.js y Gatsby y el acceso a un grupo de nuevos talentos que no has tenido éxito. para acceder antes. Muchos desarrolladores de JavaScript que salen de los campos de entrenamiento están encantados de conquistar el mundo y desea acceder a nuevas API y herramientas de origen a través de sus sitios web sin ejecutar complementos de WordPress personalizados. Pero los factores más importantes que he escuchado para la adopción sin cabeza fueron el rendimiento y la escalabilidad, incluso en plataformas de WordPress muy potentes, como la plataforma de motor WP, la escala de WordPress puede ser difícil, especialmente para sitios muy dinámicos. Lo que no es tan memorable. Más tarde, ordené un estudio oficial sin cabeza que respaldara nuestros primeros resultados. El rendimiento y la escalabilidad fueron las razones número uno y número tres que los participantes invocaron para la adopción sin cabeza, el 41% y el 33% de los encuestados dicen que estas son las razones por las que eligieron la cabeza.
Por supuesto, esto tiene sentido. El rendimiento y la escalabilidad son esenciales para el éxito de cualquier sitio web. Los sitios más rápidos tienen una tasa de rechazo más baja y una tasa de conversión más alta. Necesita sus sitios en línea y disponibles, donde sea que estén, donde sea que vengan y cuando llegue a su sitio, ninguna cantidad de integración de flexibilidad para desarrolladores, funciones SDK o cualquiera de los innumerables beneficios de la cabeza no significa nada si su sitio está apagado. Entonces sabía que, sobre todo, teníamos que cumplir estas cosas. Así que esto es lo que vine. Cuando pensamos en la plataforma Atlas, pensamos en dos áreas principales de interés. En primer lugar, el aspecto del desarrollo y la construcción, en el que desarrolla su código e implementa en nuestra plataforma. Y luego es el aspecto de servicio, en el que tratamos con su tráfico web. Quedará claro en un minuto por qué el sistema de construcción es tan importante.
Pero por ahora, centrémonos en el aspecto de servicio. El primer componente de la plataforma Atlas que cumplirá su tráfico es nuestro CDN integrado. El CDN acepta su tráfico en Internet en los puntos de presencia en todo el mundo y ofrece cualquier contenido estático o de caché a sus visitantes en las inmediaciones. El CDN está alimentado por CloudFlare y es el mismo CDN que usamos para alimentar gran parte de nuestra pila de alojamiento de WordPress. El tráfico que no puede ser atendido por nuestro CDN se redirige a lo que llamamos motor de nodo. Aquí ejecuta el código dinámico. Puede ejecutar: puede tener API o integraciones personalizadas que se ejecutan allí o simplemente puede generar páginas para su sitio web, apoyamos todo esto con nuestro líder de WordPress en la industria, que distribuye su contenido al front-end de nodo a través de REST o GraphQL Y ofrezca a su equipo de contenido las herramientas que conoce para crear y administrar el contenido de ese sitio. Hoy, en la cumbre, también anuncié otro componente crítico del motor de contenido de pila. Aunque no hablaré sobre muchos de los detalles sobre Content Engine hoy en día, está diseñado para acelerar la entrega de su contenido de WordPress a través de GraphQL. El motor de contenido acelerará sus experiencias dinámicas aún más, lo que las hace mejores que nunca.
Hay varios enfoques para construir sitios sin cabeza, y Atlas es lo suficientemente flexible como para apoyarlos a todos. Las diferencias entre los enfoques se reducen a la forma en que carga sus datos y cuándo juega las páginas. El primer enfoque es un sitio completamente estático. Todas las vidas pesadas se realizan durante la construcción. Por lo tanto, todos los datos se cargan desde el fondo durante la construcción, y cada página del sitio se representa y almacena como un archivo estático que puede servirse directamente desde el CDN inmediato. Los sitios totalmente estáticos reducen tanto la distancia de red a los usuarios finales y eliminar la toma y la representación de datos que requieren tiempo y aumentan el tiempo al primer byte, lo que hace que este enfoque sea la forma más rápida de entregar su contenido. Si la estática es la más rápida, ¿por qué elegirías algo más? Bueno, no todos los sitios son completamente estáticos, al menos no para cada página. Por ejemplo, si tiene una función de búsqueda en su sitio, no querrá enseñar cada posible resultado de búsqueda. No es lo suficientemente creativo como para saber qué buscarán todos los visitantes de su sitio en su sitio. Si desea personalizar su sitio y brindar a los visitantes una experiencia única basada en cómo interactúan con su sitio, qué páginas han visitado o quiénes son. Tampoco querrás dar el mismo contenido a todos. Finalmente, si su sitio cambia rápidamente, actualiza continuamente el contenido, puede tener un blog de flujo en vivo, en vivo en su sitio, es posible que no tenga sentido ejecutar un paso de construcción en cada cambio. En cambio, debe hacer algo más dinámico y al menos completar esos aspectos de su sitio durante la ejecución.
En el otro extremo hay un sitio completamente dinámico, cada solicitud recibe una respuesta completamente renderizada, recién representada. Esto significa que todo el contenido necesario se carga desde WordPress o el motor de contenido con cada solicitud. Puede elegir memorizar los datos en el motor de nodo, por supuesto, para guardar algunas solicitudes a su back-end. Pero todas las decisiones sobre cómo jugar la página tienen lugar allí mismo, durante la ejecución. Este enfoque tiene el mayor cálculo y potencia de red. Por lo tanto, será más lento que otros enfoques y no recomendaría construir todo su sitio dinámicamente de esta manera, a menos que su sitio tenga un tráfico relativamente bajo e incluso lo requiera. En el futuro, con el motor de contenido, nos enfocamos en reducir los costos de carga de contenido, hasta el punto en que creemos que podrá hacer sitios completamente dinámicos a una velocidad muy cerca de la misma velocidad que la estática.
Pero estará encantado de descubrir que hay un camino medio sólido entre completamente estático y completamente dinámico y lo llamamos incremental estático. La estática incremental es una idea popularizada por Next.js. Y funciona por generación dinámica de páginas la primera vez que se solicitan, pero luego memorizando en caché para futuros visitantes. La mayoría de los visitantes reciben el contenido en caché, incluso de CDN. Y una vez que expire el contenido del caché, la página se volverá a ser, para que los visitantes reciban contenido nuevo. Con Next.js, incluso hay una función que le permite generar contenido fresco para una página vencida, pero no haga que el visitante espere ese nuevo contenido. En cambio, el primer visitante está reservado para la página almacenada en caché, y el CDN está repoblado por la página recién representada. Este es técnico: el término técnico para esto se llama ralado mientras se ralidaba y es la técnica utilizada por los CDN que son plataformas de alojamiento. Y hay un pequeño compromiso aquí en términos de frescura a cambio de un mayor rendimiento. Finalmente, diré que nada pide hacer una y una elección entre estos tres enfoques diferentes. Muchos de los marcos allí le permiten mezclar y combinar. Entonces, algunas páginas pueden ser completamente estáticas y otras completamente dinámicas. Si tiene una página en su sitio.
Eso nunca cambia, tal vez sea la página sobre nosotros, para algunas personas es su página inicial, puede hacerlo completamente estático y luego solo hacer las páginas que cambian a menudo, tal vez haya un flujo de blog o una experiencia con el carrito de compras o Algo así es ser dinámico. Haga estas páginas dinámicas en su sitio. Una de las cosas hermosas de la cabeza es que tiene la flexibilidad de tomar todos y cada uno de estos enfoques para satisfacer las necesidades de su sitio. Ya sea que elija hacer que su sitio sea completamente estático, completamente dinámico, estático Incremental o un híbrido entre ellos, Atlas es una plataforma rápida, confiable y escalable. Para asegurarse de que sus sitios sean rápidos en el Atlas, como mencioné antes, viene con un CDN global listo para la fabricación. Queríamos que esto fuera integrado y perfecto, por lo que no tiene que pensarlo en absoluto. Simplemente hacemos lo correcto y nos aseguramos de que su contenido estático se transmita lo antes posible incluso a la esquina de los visitantes. Apuesto a que no sabías que las redes tenían esquinas.
Pero como sabemos, a veces la estática no es lo suficientemente buena. Al igual que nuestra plataforma de WordPress para el motor de nodo, utilizamos las computadoras en la nube más rápidas. Esto no hará que desaparezca ninguna latencia de la red y no repare la tercera parte con la que se integra, sino el código que escribe, que ejecuta en Atlas se ejecutará lo antes posible. Y, finalmente, con Content Engine, hacemos todo el contenido público crítico de WordPress más rápido que nunca. Estamos encantados con la posibilidad de Content Engine para que sus páginas se jueguen en el servidor o el cliente casi tan rápido como estático. Aunque la confiabilidad no se ha mencionado específicamente en el estado del informe sin cabeza, creo que va de la mano con el rendimiento. Un sitio que está abajo es, por definición, un sitio que es peor que un sitio lento. Para garantizar que el sitio permanezca en línea, utilizamos una tecnología llamada Kubernetes, que Chen hablará en un minuto. Kubernetes nos permite distribuir nuestras aplicaciones de nodo sin problemas en varias áreas de disponibilidad en la nube. Estas áreas de disponibilidad están diseñadas para minimizar la posibilidad de que, si algo va bien en un área, algo saldrá mal y en la otra área. Entonces, cuando algo no va bien en un área, su sitio se mantiene en línea porque lo tenemos en funcionamiento en ambas áreas.
Con Kubernetes, también tenemos una recuperación automática incorporada, tanto hardware como fallas de software aplicados. Debido a esta redundancia y recuperación automática, Atlas es compatible con SLA mejorado, con un objetivo de disponibilidad del 99.99%. Kubernetes ofrece otro beneficio: escala automática. Cuando su sitio está bajo el estrés de una alta carga, automáticamente crecemos para administrar el tráfico. Esto ocurre en las áreas de disponibilidad e incluso puede proporcionar más recursos de cálculo para administrar la tarea si es necesario. Esto está completamente automatizado, por lo que los días de suministro para el tráfico máximo o la planificación previa de los eventos han desaparecido. Reconocemos, no tengan control sobre todas las formas en que su sitio podría obtener una explosión de tráfico. A veces lo es, como cuando lanza una campaña de marketing exitosa o tiene una venta flash. Pero en Internet de hoy, las cosas se vuelven virales por razones aleatorias. No se preocupe, sin importar de dónde provenga su tráfico, Atlas lo apoya. Con eso, enseñaré a Chen a compartir más sobre Kubernetes, el motor que proporciona la plataforma Atlas. Chen Goldberg: Gracias, Brandon. Me complace estar aquí en esta escena virtual con Brandon. Cuando conocí a Brandon y al equipo en 2018, comenzaron a reimrar la plataforma WP Engine. Tuve una buena conversación sobre tecnología, las características de las aplicaciones nativas de la nube, lo que es preferible para sus clientes y sobre el motor Google Kubernetes. Desde entonces, Google Cloud ha colaborado con el equipo para convertir su visión en realidad.

Hoy, quiero mostrar un poco más sobre una de las tecnologías básicas que alimentan a WordPress sin cabeza, Atlas. Google Kubernetes Engine es un servicio de gestión de contenedores de Google. Nuestro objetivo es facilitar a nuestros clientes ejecutar aplicaciones contenedores a nivel empresarial, rápido, confiable y escalable. En el centro de GKE hay una tecnología llamada Kubernetes. ¿Qué es Kubernetes? Kubernetes es una plataforma de código abierto para la automatización, implementación, administración y escala de aplicaciones contenedores. Los contenedores incluyen aplicaciones y desacopla su aplicación y dependencias del sistema operativo. Cuando necesita implementar, monitorear y administrar y escalar una aplicación, es posible. Pero cuando tienes muchos más, se vuelve más complicado. Kubernetes es una tecnología que lo ayuda a orquestar todos estos contenedores, asegurándose de que todo funcione sin problemas. También es de código abierto. Esto significa que está construido por una comunidad de desarrolladores y empresas, asegurándose de que funcione bien en la nube. Esto significa que una vez que su aplicación se ejecuta en Kubernetes con Kubernetes, su aplicación ahora es portátil. Puede correr en cualquier lugar. Finalmente, la flexibilidad importaba mucho. Entonces, desde el primer día, invertí en hacer kubernetes extensibles. Esto significa que los kubernetes pueden mejorarse y ser fácil de integrar. Pero, además de todas estas cosas increíbles, Kubernetes tiene otra superpotencia que Brandon también mencionó. Kubernetes es una potente máquina de automatización. Las máquinas de automatización tradicionales funcionan con un sistema de activación de eventos: si es eso, entonces.
Por ejemplo, puedo programar el sistema de aire acondicionado para comenzar cada vez que son las 6:30 y para calentar o enfriar la casa de acuerdo con la temporada. La desventaja de este enfoque es que tengo que programar para todos los casos. Piense en los casos marginales y asegúrese de que todo sea predecible. Una forma alternativa es configurar un termostato. Con un termostato, puedo programar mi temperatura deseada. Por ejemplo, me gustaría que la temperatura de nuestra casa sea entre 68 y 72 grados Fahrenheit. El sistema monitoreará continuamente el estado actual, y cuando detecta que no cumple con la condición deseada, lo reparará automáticamente calentando o enfriando la casa. Así es como Kubernetes trata con la automatización a escala. Los operadores y desarrolladores no tienen que pensar en todos los casos marginales: lo que puede funcionar mal o lo que puede funcionar bien. Especialmente en aplicaciones nativas de la nube, el entorno es dinámico y las cosas cambian mucho. En cambio, deben definir cuál es la condición deseada. Por ejemplo, ¿qué se considera un rendimiento saludable para la aplicación? Kubernetes monitoreará la aplicación y todos sus componentes, y si las cosas cambian, se necesitará medidas para volver al estado deseado. Kubernetes llegó a 1.0 hace unos seis años, y el motor de Google Kubernetes era [inaudible] al mismo tiempo. La razón por la que Kubernetes es exitoso o tal vez una de las razones por las que se adoptó rápidamente es porque he hecho todo esto durante mucho tiempo, más de una década. Modern Connect Container es una combinación de nombres de Linux y Cgroup.
Este último se inventó internamente en Google alrededor de 2006. Docker hizo popular un contenedor de Linux alrededor de 2013, pero el concepto se usó ampliamente en Google mucho antes. Entendí que el verdadero desafío no está en el contenedor, sino en la orquestación de contenedores en varios anfitriones. Internamente, tenemos un sistema llamado Borg y lo desarrollamos y lo rodeé por un rico ecosistema para facilitar la vida de los desarrolladores y operadores de Google y obtener una mayor velocidad. Según nuestras enseñanzas, creamos Kubernetes y su ecosistema, en asociación con otros en la comunidad de código abierto. Hoy, Google cree que el líder en el ecosistema de Kubernetes es muy claro y seguimos innovando y elevando el poste. Kubernetes es un producto muy potente y complejo, y su ejecución confiable no es una tarea trivial. Las empresas que ejecutan Kubernetes autorregeradas lo han enseñado con fuerza y, por lo general, tienen un equipo de expertos responsables de Kubernetes. El motor de Google Kubernetes descarga esta complejidad de los clientes, lo que les permite centrarse en sus tareas de trabajo. El plan de control GKE está completamente administrado por los ingenieros de confiabilidad del sitio de Google, con disponibilidad administrada, correcciones de seguridad y actualización. El equipo de Google SRE no solo tiene un conocimiento operativo sobre Kubernetes, sino que también tiene las mejores prácticas probadas mejor para administrar un servicio escalable extremadamente confiable.
Han publicado aún más libros sobre este tema. Nuestro equipo SRE distribuido global ha encontrado, monitores y actúa constantemente en cualquier clúster GKE, incluidos los que suministran ATLAS, asegurándose de que nosotros y WP Engine también respeten sus SNES. Sin comprometer la API de Kubernetes, integramos cuidadosamente demasiados servicios de Google, como Google Compute Engine, Google Global Load Balance, Monitoring y Registro. GKE ofrece una gestión integral de nodos, que incluye suministro automático, corrección, actualización automática, reparación automática y escala. Estas son algunas de las capacidades únicas de GKE. Nuestro equipo está muy orgulloso de crear un clúster en solo unos minutos, nuestra capacidad de ejecutar los grupos más grandes de la industria y apoyar al primer camino relevante, escalable y rápidamente, como WordPress sin cabeza. De vuelta a ti, Brandon. Brandon Durette: Gracias, Chen. Realmente me gusta el contenedor – Kubernetes Control – Loop observa, compare, reacciona, repite. Es una idea simple pero verdaderamente poderosa. Ese bucle es el latido que determina la escala automática, la recuperación de errores automáticos, la automatización de implementación y muchos más dentro del Atlas. Para la escala automática, si el bucle de control se da cuenta de que un sitio está luchando bajo carga, simplemente implementa a más niños del sitio para hacerse cargo de la tarea. Cuando esa explosión de tráfico desaparece, el mismo bucle de control detiene las copias adicionales del sitio, para que no consuma más recursos de los que necesita. Para recuperar la falla, Kubernetes puede detectar una copia de su sitio.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *