Condividi tramite


Panoramica dell'emulatore di Hub eventi di Azure

L'emulatore Hub eventi di Azure offre un'esperienza di sviluppo locale per il servizio Hub eventi. È possibile usare l'emulatore per sviluppare e testare il codice sul servizio in isolamento, senza interferenze nel cloud.

Vantaggi

I principali vantaggi dell'uso dell'emulatore sono:

  • Sviluppo locale: l'emulatore offre un'esperienza di sviluppo locale, in modo da poter lavorare offline ed evitare la latenza di rete.
  • Efficienza dei costi: con l'emulatore è possibile testare le applicazioni senza incorrere in costi di utilizzo del cloud.
  • Ambiente di test isolato: è possibile testare il codice in isolamento per garantire che altre attività nel cloud non influiscano sui test.
  • Ciclo di sviluppo interno ottimizzato: è possibile usare l'emulatore per creare rapidamente prototipi e testare le applicazioni prima di distribuirle nel cloud.

Nota

L'emulatore di Hub eventi è disponibile nelle Condizioni di licenza software Microsoft.

Funzionalità

L'emulatore offre queste funzionalità:

  • Distribuzione in contenitori: viene eseguita come contenitore Docker (basato su Linux).
  • Compatibilità multipiattaforma: è possibile usarla in qualsiasi piattaforma, tra cui Windows, macOS e Linux.
  • Configurabilità: è possibile gestire il numero di hub eventi, partizioni e altre entità usando la configurazione fornita da JSON.
  • Supporto per lo streaming: supporta gli eventi di streaming tramite Kafka e Advanced Message Queuing Protocol (AMQP).
  • Osservabilità: fornisce funzionalità di osservabilità, tra cui la registrazione della console e dei file.

Limitazioni note

La versione corrente dell'emulatore presenta le limitazioni seguenti:

  • Quando si usa Kafka, solo le API producer e consumer sono compatibili con l'emulatore di Hub eventi.

  • In Configurazione securityProtocol Kafka e saslmechanism può avere solo i valori seguenti:

      SecurityProtocol = SecurityProtocol.SaslPlaintext,
      SaslMechanism = SaslMechanism.Plain
    
  • Non supporta le operazioni di gestione on-the-fly tramite un SDK lato client.

Nota

Dopo il riavvio di un contenitore, i dati e le entità non vengono mantenuti nell'emulatore.

Differenze rispetto al servizio cloud

Poiché l'emulatore di Hub eventi è destinato solo a scopi di sviluppo e test, esistono differenze funzionali tra l'emulatore e il servizio cloud.

L'emulatore non supporta queste funzionalità generali:

  • Funzionalità di Azure come l'integrazione della rete virtuale, l'integrazione di Microsoft Entra ID, i log attività e un portale dell'interfaccia utente
  • Acquisizione di Hub eventi
  • Funzionalità di governance delle risorse come i gruppi di applicazioni
  • Funzionalità di scalabilità automatica
  • Funzionalità di ripristino di emergenza geografico
  • Integrazione del Registro di sistema dello schema
  • Metriche e avvisi visivi

Nota

L'emulatore è destinato esclusivamente agli scenari di sviluppo e test. Sconsigliamo qualsiasi tipo di uso di produzione. Non viene fornito alcun supporto ufficiale per l'emulatore.

Segnalare eventuali problemi o suggerimenti nel repository del programma di installazione GitHub dell'emulatore.

Quote di utilizzo

Analogamente al servizio cloud di Hub eventi, l'emulatore fornisce le quote seguenti per l'utilizzo:

Proprietà valore Configurabile dall'utente entro i limiti
Numero di spazi dei nomi supportati 1 No
Numero massimo di hub eventi in uno spazio dei nomi 10
Numero massimo di gruppi di consumer in un hub eventi 20
Numero massimo di partizioni in un hub eventi 32
Dimensioni massime di un evento da pubblicare in un hub eventi (batch/nonbatch) 1 MB No
Tempo minimo di conservazione degli eventi 1 ora No

Modifiche alla configurazione della quota

Per impostazione predefinita, l'emulatore viene eseguito con il file di configurazione config.json . È possibile configurare le quote associate a Hub eventi modificando questo file nei modi seguenti, in base alle esigenze:

  • Entità: è possibile aggiungere altre entità (hub eventi), con un numero personalizzato di partizioni e gruppi di consumer, in base alle quote supportate.
  • Registrazione: l'emulatore supporta la registrazione in una console, in un file o in entrambi. Puoi scegliere in base alle tue preferenze personali.

Importante

Prima di eseguire l'emulatore, è necessario specificare le modifiche apportate alla configurazione JSON. Le modifiche non vengono rispettate al volo. Per rendere effettive le modifiche, è necessario riavviare il contenitore.

Non è possibile rinominare lo spazio dei nomi predefinito (name) nel file di configurazione.

Log per il debug

Durante i test, i log della console o dei file consentono di eseguire il debug di errori imprevisti. Per esaminare i log:

  • Log della console: nell'interfaccia utente desktop docker selezionare il nome del contenitore.
  • Log dei file: nel contenitore passare a /home/app/EmulatorLogs.

Eseguire il test in locale usando l'emulatore di Hub eventi di Azure