Serie DCS de middleware de aplicaciones en la nube de Huawei: aluvión de mensajes de implementación de Redis (video en vivo)

Servicios en la nube, API, SDK, depuración, visualización, puedo hacerlo todo

Puede aprender del breve artículo: Implementación de Redis del aluvión de mensajes de la serie de middleware de aplicaciones (transmisión de video en vivo)

1 ¿Qué es DEVKIT?

El complemento para desarrolladores de Huawei Cloud (Huawei Cloud Toolkit), como una extensión de las capacidades del producto de Huawei Cloud al escritorio del desarrollador, ayuda a los desarrolladores a conectarse rápidamente a Huawei Cloud localmente y abre la última milla de Huawei Cloud a los desarrolladores. Huawei Cloud ToolKit es una serie de complementos IDE creados alrededor del sistema de herramientas del ecosistema de desarrolladores de Huawei Cloud. Es compatible con VS Code, IntelliJ IDEA y otras series de plataformas, así como el IDE CodeArts de desarrollo propio de Huawei Cloud, lo que ayuda a los desarrolladores a crear aplicaciones de manera más eficiente. y convenientemente. Comprometidos a brindar a los desarrolladores una experiencia de programación más estable, rápida y segura.

Ruta de la experiencia: Toolkit-Huawei Cloud

2 La relación entre IDE y DEVKIT

2.1 ¿Qué es CodeArts IDE?

CodeArts IDE es un entorno de desarrollo integrado (IDE) que combina la simplicidad de un editor de código fuente con el poder de las herramientas de desarrollo, como la finalización y depuración de código.

Ruta de descarga: Toolkit-Huawei Cloud

2.2 La relación entre IntelliJ IDEA y DEVKIT

Preparación de la instalación

Descargue e instale JDK1.8 o superior.

Descargue e instale IntelliJ IDEA 2020.2 o superior.

Verificación de instalación

Después de instalar con éxito el complemento en la plataforma de la serie IntelliJ, podrá ver el ícono Huawei Cloud Toolkit en la barra de navegación izquierda. Haga clic en él y las palabras Huawei Cloud API aparecerán en el panel posterior, lo que indica que la instalación se realizó correctamente.

Ruta de descarga: Toolkit-Huawei Cloud

2.3 La relación entre CodeArts IDE y DEVKIT

El complemento API es un complemento nativo integrado de CodeArts IDE y se instala de forma predeterminada. Los iconos relacionados se pueden ver en la barra de navegación de la izquierda.

Ruta de descarga: Toolkit-Huawei Cloud

2.4 Relación entre Visual Studio Code IDE y DEVKIT

Preparación de la instalación

Descargue e instale la última versión de Visual Studio Code.

Verificación de instalación

Después de instalar con éxito el complemento en VS Code IDE, puede ver el ícono Huawei Cloud Toolkit en la barra de navegación izquierda, haga clic en él y las palabras Huawei Cloud API aparecerán en el panel posterior, lo que indica que la instalación se realizó correctamente.

Ruta de descarga: Toolkit-Huawei Cloud

3 Ejemplo de bombardeo de mensajes de implementación de Redis (transmisión de video en vivo) (versión Java)

3.1 Utilice Redis para implementar la función de clasificación

Notas de lanzamiento

Este ejemplo está desarrollado en base al servicio de caché distribuido en la nube de Huawei Redis Basic Edition 5.0.

Introducción

Ejemplo de bombardeo de mensajes de implementación de Redis (transmisión de video en vivo) (versión Java)

La lista de usuarios en línea en la sala de transmisión en vivo, las clasificaciones de regalos, los mensajes de bombardeo y otra información son adecuados para el almacenamiento utilizando la estructura SortedSet en Redis.

Por ejemplo, los mensajes de bombardeo se pueden ordenar y devolver usando ZREVRANGEBYSCORE. En Redis 5.0, se agregan los comandos zpopmax y zpopmin para que el procesamiento de mensajes sea más conveniente.

Esta práctica presenta cómo utilizar Redis para implementar la función de bombardeo de mensajes (transmisión de video en vivo).

Preparación antes del desarrollo.

Registre una cuenta de Huawei Cloud. Para obtener instrucciones detalladas, consulte ¿Cómo registrarse como usuario de Huawei Cloud Management Console? y complete la autenticación de nombre real.

Se ha comprado un ECS con una dirección IP pública. Para obtener más información, consulte Comprar e iniciar sesión en un servidor de nube elástica Linux.

Se ha comprado una instancia de caché de DCS. Para operaciones detalladas, consulte Compra de una instancia de caché. Debe asegurarse de que la instancia de DCS y el ECS comprado estén en la misma subred y nube privada virtual, y configurar el acceso de red pública a Redis en la instancia de caché comprada. Detalles de ECS Para obtener más información, consulte Uso de Nginx para acceder a instancias de clúster Redis 4.0/5.0 independientes/activas/en espera/proxy desde la red pública.

Instalar SDK

Puede obtener e instalar el SDK a través de Maven. Primero, debe descargar e instalar Maven en su sistema operativo. Una vez completada la instalación, solo necesita agregar las dependencias correspondientes al archivo pom.xml del proyecto Java.

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
</dependency>

Empieza a usar

Importar módulos dependientes

//导入数据类型类
import java.util.Set;
//Redis客户端Jedis类
import redis.clients.jedis.Jedis;

Genere datos de bombardeo de salas de transmisión en vivo

Código de muestra

int num = 5;
            // 随机生成进入直播间发弹幕用户数据
            for (int i = 0; i < num; i++) {
                jedisClient.zadd(key, danmuOrder + i,
                    "message" + (i + 1) + (i + 1) + (i + 1) + (i + 1) + (i + 1) + (i + 1));
            }   

Obtenga comentarios de la sala de transmisión en vivo

Código de muestra

 // 获取所有新增弹幕
            Set<String> sortedDanmuList = jedisClient.zrevrangeByScore(key, danmuOrder + num, danmuOrder);
            for (String danmu : sortedDanmuList) {
                System.out.println(danmu);
            }

            System.out.println();

            System.out.println("                   " + key + "直播间最新的3条弹幕");

            Set<String> sorteDamu0List = jedisClient.zrevrangeByScore(key, danmuOrder + num, danmuOrder, 0, 3);
            for (String danmu : sorteDamu0List) {
                System.out.println(danmu);
            }

3.2 Efecto de visualización

Compile y ejecute el programa de demostración anterior, los resultados son los siguientes:

Lista de bombardeo en vivo

Contenido del bombardeo: message-07f1add5-2f85-4309-9f31-313c860b33dc, hora de envío: 1686902337377

Contenido del bombardeo: mensaje-2062e817-3145-4d8b-af7f-46f334c8569c, hora de envío: 1686902337394

Contenido del bombardeo: mensaje-ad36a0ca-e8bd-4883-a091-e12a25c00106, hora de envío: 1686902337396

Contenido del bombardeo: message-f02f9960-bb57-49ae-b7d8-6bd6d3ad3d14, hora de envío: 1686902337412

Contenido del bombardeo: mensaje-5ca39948-866e-4e54-a469-f958cae843f6, hora de envío: 1686902337457

Contenido del bombardeo: message-5cc8b4ba-da61-4d01-9625-cf2e7337ef10, hora de envío: 1686902337489

Contenido del bombardeo: mensaje-15378516-18ce-4da7-bd3c-35c57dd65602, hora de envío: 1686902337495

Contenido del bombardeo: mensaje-1b280525-53e5-4fc6-a3e7-fb8e71eef85e, hora de envío: 1686902337540

Contenido del bombardeo: mensaje-adf876d1-e747-414e-92a2-397fc329bd58, hora de envío: 1686902337541

Contenido del bombardeo: message-1d8d7901-164f-4dd4-abb4-6f2345164b0e, hora de envío: 1686902337582

Contenido del bombardeo: mensaje-fb35b1b4-277a-48bf-b22b-80070aae8475, hora de envío: 1686902337667

Contenido del bombardeo: mensaje-973b1b03-bf95-44d8-ab91-0c317b2d61b3, hora de envío: 1686902337755

Contenido del bombardeo: mensaje-1481f883-757d-47f7-b8c0-df024d6e64a4, hora de envío: 1686902337770

Contenido del bombardeo: message-b79292ca-2409-43fb-aaf0-e33f3b9d9c8d, hora de envío: 1686902337820

Contenido del bombardeo: message-66b0e955-d509-4475-9ae5-12fb86cf9596, hora de envío: 1686902337844

Contenido del bombardeo: message-12b6d15a-037a-47ee-8294-8625d202c0a0, hora de envío: 1686902337907

Contenido del bombardeo: message-fbc06323-da2a-44b8-874b-d2cf1a737064, hora de envío: 1686902337927

Contenido del bombardeo: message-7a0f787c-aff1-422f-9e62-4beda0cd5914, hora de envío: 1686902337977

Contenido del bombardeo: message-8ba5e4e0-22af-4f80-90a6-35062967e0fd, hora de envío: 1686902337992

Contenido del bombardeo: message-fa9e1169-e918-4141-9805-87edcf84c379, hora de envío: 1686902338000

Contenido del bombardeo: message-5d17be15-ba2e-461f-aba5-65c20c21d313, hora de envío: 1686902338059

Contenido del bombardeo: mensaje-dcedc840-1be7-496a-b781-5b79c2091fe5, hora de envío: 1686902338067

Contenido del bombardeo: message-9e39eb28-6629-4d4c-8970-2acdc0e81a5c, hora de envío: 1686902338102

Contenido del bombardeo: message-030b11fe-c258-4ca2-ac82-5e6ca1eb688f, hora de envío: 1686902338211

Contenido del bombardeo: mensaje-93322018-a987-47ba-8093-3937dddda97d, hora de envío: 1686902338242

Contenido del bombardeo: message-bc04a9b0-ec83-4a24-83f6-0a4f25ee8896, hora de envío: 1686902338281

Contenido del bombardeo: message-c6dd96d0-c938-41e4-b5d8-6275fdf83050, hora de envío: 1686902338290

Contenido del bombardeo: mensaje-12b70173-1b86-4370-a7ea-dc0ade135422, hora de envío: 1686902338312

Contenido del bombardeo: message-a39c2ef8-8167-4945-b60d-355db6c69005, hora de envío: 1686902338318

Contenido del bombardeo: message-2c3bf2fb-5298-472c-958c-c4b53d734e89, hora de envío: 1686902338326

Los últimos 5 mensajes de bombardeo

Contenido del bombardeo: message-2c3bf2fb-5298-472c-958c-c4b53d734e89, hora de envío: 1686902338326

Contenido del bombardeo: message-a39c2ef8-8167-4945-b60d-355db6c69005, hora de envío: 1686902338318

Contenido del bombardeo: mensaje-12b70173-1b86-4370-a7ea-dc0ade135422, hora de envío: 1686902338312

Contenido del bombardeo: message-c6dd96d0-c938-41e4-b5d8-6275fdf83050, hora de envío: 1686902338290

Contenido del bombardeo: message-bc04a9b0-ec83-4a24-83f6-0a4f25ee8896, hora de envío: 1686902338281

Proceso finalizado con código de salida 0

4 Experimenta el encanto de los complementos

El kit de desarrollo de Huawei Cloud ya está en línea: Toolkit-Huawei Cloud

Supongo que te gusta

Origin blog.csdn.net/hwxiaozhi/article/details/133876128
Recomendado
Clasificación