es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo configurar a los compañeros de trabajo cuando hay miles de instancias de SRS.

Desde el wiki, los compañeros significa “Las APIs HTTP de otros servidores de origen en el clúster”. En nuestro clúster de origen, lo configuro de la siguiente manera:

vhost <strong>defaultVhost</strong> {
    # La configuración para el clúster.
    cluster {
        # El modo de clúster, local o remoto.
        #       local: Es un servidor de origen, sirve transmisiones por sí mismo.
        #       remote: Es un servidor de borde, recupera o envía transmisiones al servidor de origen.
        # default: local
        mode            local;

    # Para el clúster de origen (modo local), activa el clúster.
    # @remark El clúster de origen solo admite RTMP, utiliza Edge para transmuxar RTMP a FLV.
    # default: off
    # TODO: FIXME: Soporte para recarga.
    origin_cluster      on;

    # Para el clúster de origen (modo local), las APIs HTTP de los compañeros.
    # Este origen se conectará a los compañeros y se comunicará con ellos.
    # por favor leer: https://github.com/ossrs/srs/wiki/v3_EN_OriginCluster
    # TODO: FIXME: Soporte para recarga.
    coworkers           192.168.1.101:1985 192.168.1.102:1985 192.168.1.103:1985 192.168.1.XXX:1985;
}

Si hubiera miles de servidores SRS en el clúster, cada servidor SRS debería configurar los muchos otros servidores SRS de origen, ¿es esto correcto?

¿Esto afecta el rendimiento al consultar la API HTTP para encontrar la transmisión correcta en qué servidor SRS? Si la transmisión es la última en compañeros, creo que tendrá un retraso significativo.

Entonces quiero saber, ¿hay alguna otra mejor práctica de ingeniería para optimizar este problema?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como experto en IT especializado en streaming de video, puedo confirmar que si hubiera miles de servidores SRS en el clúster, cada servidor SRS tendría que configurar muchos otros servidores SRS de origen. Esto definitivamente puede afectar el rendimiento, ya que requiere consultar la API de HTTP para encontrar el flujo correcto en qué servidor SRS, y si el flujo es el último en los colaboradores, puede causar un retraso significativo.

    En cuanto a las mejores prácticas de ingeniería para optimizar este problema, hay algunas opciones. Una opción sería utilizar una herramienta de gestión de configuración centralizada como Puppet o Ansible para administrar las configuraciones de todos los servidores en el clúster. Esto simplificaría en gran medida el proceso de configuración y reduciría la probabilidad de errores. Otra opción sería utilizar un almacén de claves-valor distribuido como Consul o etcd para almacenar la información de configuración del clúster. Esto también simplificaría el proceso de configuración y reduciría el riesgo de errores.

    En última instancia, el enfoque óptimo dependerá de los requisitos específicos del clúster y de los recursos disponibles. Sin embargo, usar una herramienta de gestión de configuración centralizada o un almacén de claves-valor distribuido son opciones viables para optimizar el proceso de configuración en un gran clúster de servidores SRS.

Comments are closed.