Compartir a través de


Prueba local mediante el emulador de Azure Service Bus

En este artículo se resumen los pasos para desarrollar y probar localmente mediante el emulador de Azure Service Bus.

Requisitos previos

Nota:

Antes de continuar con los pasos de este artículo, asegúrese de que Docker Desktop está operativo en segundo plano.

Ejecución del emulador

Para ejecutar el emulador de Service Bus, puede usar un script automatizado o un contenedor de Linux:

Antes de ejecutar un script automatizado, clone el repositorio del instalador de GitHub del emulador localmente.

Windows

Siga estos pasos para ejecutar el emulador de Service Bus localmente en Windows:

  1. Permita la ejecución de scripts sin firmar ejecutando este comando en la ventana de PowerShell:

    $>Start-Process powershell -Verb RunAs -ArgumentList 'Set-ExecutionPolicy Bypass –Scope CurrentUser'

  2. Ejecute el script de instalación LaunchEmulator.ps1. Al ejecutar el script se muestran dos contenedores: el emulador de Service Bus y SQL Edge (una dependencia para el emulador).

Linux y macOS

Para ejecutar el emulador de Service Bus localmente en Linux o macOS:

  • Ejecute el script de instalación LaunchEmulator.sh. Al ejecutar el script se muestran dos contenedores: el emulador de Service Bus y SQL Edge (una dependencia para el emulador).

Una vez que los pasos se realicen correctamente, puede encontrar los contenedores que se ejecutan en Docker.

Captura de pantalla que muestra el emulador de Service Bus que se ejecuta en un contenedor.

Interacción con el emulador

De forma predeterminada, el emulador usa el archivo de configuración config.json. Puede configurar entidades realizando cambios en el archivo de configuración. Para más información, visite realizar cambios de configuración

Puede usar la siguiente cadena de conexión para conectarse al emulador de Service Bus:

  • Cuando el contenedor emulador y la aplicación que interactúa se ejecutan de forma nativa en la máquina local, utilice la siguiente cadena de conexión:
"Endpoint=sb://localhost;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
  • Las aplicaciones (en contenedores o no en contenedores) en la máquina diferente y la misma red local pueden interactuar con emulador mediante la dirección IPv4 de la máquina. Use la siguiente cadena de conexión:
"Endpoint=sb://192.168.y.z;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
  • Los contenedores de aplicaciones de la misma red de puente pueden interactuar con Emulator mediante su alias o IP. La cadena de conexión siguiente supone que el nombre del contenedor Emulator es "servicebus-emulator":
"Endpoint=sb://servicebus-emulator;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
  • Los contenedores de aplicaciones de la red de puentes diferentes pueden interactuar con el emulador mediante "host.docker.internal" como host. Use la siguiente cadena de conexión:
"Endpoint=sb://host.docker.internal;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"

Puede usar los SDK de cliente más recientes para interactuar con el emulador de Service Bus en varios lenguajes de programación. Para empezar, consulte los ejemplos del emulador de Service Bus de en GitHub.

Introducción al emulador de Azure Service Bus