Esas cosas sobre los disyuntores y las degradaciones

inserte la descripción de la imagen aquí

que fusible

Circuit Breaker es un mecanismo utilizado para limitar las solicitudes del sistema, su objetivo es evitar que el sistema continúe ejecutando llamadas no válidas en caso de falla o situación anormal, evitando así el efecto de avalancha y daños adicionales al sistema.

Generalmente se utiliza un fusible en una arquitectura de microservicios en un sistema distribuido, es responsable de monitorear la solicitud de un determinado servicio y activa una operación de disyuntor cuando se alcanza un cierto umbral de acuerdo con reglas predefinidas. Cuando el servicio falla, las solicitudes subsiguientes serán rechazadas directamente por el soplador y no se seguirá solicitando el servicio, pero se devolverá rápidamente una respuesta alternativa preestablecida o un mensaje de error.

Cuando ocurren condiciones anormales, como fallas en el servicio o sobrecarga, el fusible puede desempeñar las siguientes funciones:

  1. Fallo rápido: el disyuntor puede rechazar rápidamente las solicitudes no válidas, evitando la acumulación de solicitudes y agotando los recursos.
  2. Evite el efecto de avalancha: fusione un servicio no disponible antes de tiempo para evitar fallas en cascada causadas por fallas en el servicio, protegiendo así la estabilidad de todo el sistema.
  3. Proporcione una estrategia de degradación: después de que se interrumpa el servicio, se puede proporcionar un valor alternativo o predeterminado para garantizar que las funciones básicas del sistema estén disponibles y evitar la indisponibilidad total.

Los interruptores automáticos generalmente registran indicadores como la tasa de fallas de solicitud y el tiempo de respuesta, y determinan dinámicamente si un interruptor automático debe activarse en función de estos indicadores. Una vez que se activa el disyuntor, el disyuntor pasará por un período de suspensión o estado semiabierto, y luego intentará reanudar la solicitud del servicio para detectar si el servicio ha vuelto a la normalidad.

En resumen, el interruptor automático es un mecanismo para proteger la estabilidad del sistema y mejorar la disponibilidad, al monitorear y limitar las solicitudes para evitar la propagación de fallas y mantener el funcionamiento normal del sistema.

que es degradar

La degradación es una estrategia para garantizar la disponibilidad y la estabilidad del sistema al renunciar a ciertas funciones o servicios cuando el sistema encuentra condiciones anormales o la carga es demasiado alta.

Cuando el sistema encuentra anomalías, presión excesiva o recursos insuficientes, la degradación puede ayudar al sistema a priorizar el funcionamiento normal de las funciones principales y renunciar a algunas funciones o servicios secundarios. Si lo hace, puede reducir el consumo de recursos limitados, evitar bloqueos del sistema o una respuesta lenta y, por lo tanto, mejorar la solidez y la experiencia del usuario de todo el sistema.

El método y la estrategia específicos de degradación dependen de los requisitos reales y las características comerciales del sistema. Aquí hay algunas estrategias comunes de degradación:

  1. Reducción de la calidad del servicio: por ejemplo, los objetivos de tiempo de respuesta pueden relajarse durante los períodos de alta carga, lo que permite tasas de error o umbrales de advertencia más altos, etc. Esto puede reducir la presión de procesamiento del sistema y garantizar la llamada normal de las funciones principales.

  2. Desactive las funciones secundarias: desactive temporalmente las funciones secundarias o no críticas para reducir el uso de recursos y los gastos generales. Por ejemplo, desactive algunos módulos o complementos opcionales, detenga algunas tareas en segundo plano, etc.

  3. Proporcione valores predeterminados o soluciones alternativas: si algunos servicios dependientes externos no están disponibles, se pueden proporcionar valores predeterminados o soluciones alternativas para garantizar que el sistema aún pueda proporcionar funciones y servicios básicos. Por ejemplo, devolver datos almacenados en caché, usar computación local en lugar de llamadas remotas que consumen mucho tiempo, etc.

  4. Limitación actual: cuando hay demasiadas solicitudes, evite que el sistema se sobrecargue limitando el número o la tasa de solicitudes recibidas. Se pueden usar algoritmos como colas y cubos de fichas para controlar la concurrencia de solicitudes.

  5. Plataforma de reducción de picos: mediante la introducción de una plataforma de reducción de picos, el tráfico repentino se suaviza para evitar el impacto de los picos instantáneos en el sistema. Por ejemplo, CDN, equilibrio de carga, etc.

La conexión y la diferencia entre fusible y degradación.

La ruptura de circuitos y la degradación son dos estrategias utilizadas en los sistemas distribuidos para mejorar la disponibilidad y la robustez del sistema, y ​​están relacionadas y son diferentes.

conectar:

  1. Ambos se utilizan para hacer frente a situaciones anormales: los interruptores automáticos y las degradaciones son estrategias adoptadas en respuesta a fallas en el servicio, sobrecarga del sistema u otras situaciones anormales.
  2. Ambos pueden proteger todo el sistema: a través del fusible y el mecanismo de degradación, se puede reducir el riesgo de propagación de fallas y se puede proteger la estabilidad de todo el sistema.
  3. Con el objetivo de mejorar la disponibilidad del sistema: tanto la fusión como la degradación son para garantizar que el sistema pueda continuar brindando funciones básicas en condiciones anormales, mejorando así la disponibilidad del sistema.

la diferencia:

  1. El momento de la activación es diferente: el interruptor automático generalmente está relacionado con un servicio específico. Cuando el servicio falla o supera un cierto umbral, el interruptor automático se activa; la degradación se dirige a todo el sistema y el nivel de servicio se reduce cuando la presión sobre todo el sistema es demasiado alta o los recursos son insuficientes.
  2. El propósito es diferente: el propósito de fusionar es rechazar rápidamente solicitudes no válidas, evitar efectos de avalancha y proteger el sistema de fallas; mientras que el propósito de degradar es reducir la presión del sistema, optimizar la utilización de recursos y garantizar la disponibilidad de las funciones principales.
  3. Los niveles de operación son diferentes: el disyuntor generalmente se opera en el nivel de invocación del servicio, controlando si se permite que la solicitud llegue a un servicio específico; y el downgrade es más para el ajuste dinámico de uno o más niveles de servicios en todo el sistema.

En resumen, los interruptores automáticos y las degradaciones son dos estrategias complementarias que se pueden usar en combinación en un sistema distribuido para mejorar la estabilidad y la disponibilidad del sistema.

Escena de negocios

La escena clásica de Circuit Breaking:

  1. Falla del servicio: cuando falla un servicio o el tiempo de respuesta es demasiado largo, la solicitud de servicio se rechaza rápidamente a través del mecanismo de fusible para evitar esperar el tiempo de espera o el desperdicio de recursos.
  2. Protección contra el efecto de avalancha: cuando un servicio depende de la invocación simultánea de múltiples servicios descendentes, si uno de los servicios descendentes falla, la falla se puede aislar rápidamente a través del mecanismo de fusible y se devolverá el valor predeterminado predefinido para evitar que la falla se propague y cause todo el sistema se bloquee.

El escenario clásico de Degradación:

  1. Alta presión de concurrencia: en el caso de un aumento en las visitas al sistema, una gran carga del servidor o una congestión de la red, apague temporalmente algunas funciones no centrales o restrinja el acceso a algunos usuarios a través de estrategias de degradación para garantizar el funcionamiento estable de las funciones principales.
  2. Recursos insuficientes: cuando los recursos del sistema, como las conexiones de la base de datos y el espacio de caché, son insuficientes, algunos servicios o funciones que no se necesitan con urgencia pueden suspenderse mediante la estrategia de degradación, a fin de optimizar la utilización de los recursos y garantizar el funcionamiento normal de las funciones principales.

Cabe señalar que los interruptores automáticos y las degradaciones se determinan de acuerdo con los requisitos específicos del sistema y las condiciones reales, y diferentes sistemas pueden tener diferentes escenarios aplicables y configuraciones de políticas. Durante el diseño y la implementación, se deben considerar exhaustivamente factores como la disponibilidad del sistema, el rendimiento, la utilización de recursos y la experiencia del usuario.

contacto real

Para actividades promocionales a gran escala como Double Eleven y 618, a menudo se involucran algunos de los siguientes escenarios:

Escenarios aplicables para la interrupción del circuito:

  1. Picos de ventas: durante los eventos promocionales, un sitio web o una aplicación pueden enfrentar un gran aumento en el tráfico de usuarios, lo que puede ejercer una enorme presión sobre el sistema. Si algunos servicios clave no pueden manejar solicitudes concurrentes tan altas, se puede activar el mecanismo de disyuntor para rechazar algunas solicitudes y devolver un mensaje de error amigable para evitar el colapso de todo el sistema.
  2. Falla de canal/pago: en las actividades de compras en línea, la disponibilidad de canales de pago es fundamental. Si un canal de pago falla o se retrasa, el mecanismo del disyuntor puede dejar de usar el canal de pago rápidamente y cambiar a un canal de pago alternativo para garantizar una transacción sin problemas.

Escenarios aplicables para la degradación:

  1. Degradación de funciones no básicas: para garantizar la estabilidad de las funciones básicas, algunas funciones no básicas, como las páginas de eventos especiales y las recomendaciones personalizadas, pueden cerrarse o degradarse temporalmente. Esto reduce la carga del sistema, enfoca los recursos en la funcionalidad central y proporciona una experiencia de compra más fluida.
  2. Degradación de la publicación de anuncios: durante los eventos promocionales, las solicitudes de anuncios y las impresiones pueden aumentar significativamente. Para evitar un impacto excesivo de los servicios de publicidad en el rendimiento del sistema, algunos servicios de publicidad pueden reducirse o la frecuencia de visualización de publicidad puede limitarse para garantizar el funcionamiento normal del negocio principal.

Supongo que te gusta

Origin blog.csdn.net/weixin_53742691/article/details/131714046
Recomendado
Clasificación