Overzicht van de Azure Service Bus-emulator
De Azure Service Bus-emulator biedt een lokale ontwikkelervaring voor de Service Bus-service. U kunt de emulator gebruiken om code te ontwikkelen en te testen op basis van de service in isolatie, zonder cloudinterferentie.
Vergoedingen
De belangrijkste voordelen van het gebruik van de emulator zijn:
- Lokale ontwikkeling: De emulator biedt een lokale ontwikkelervaring, zodat u offline kunt werken en netwerklatentie kunt voorkomen.
- Kostenefficiëntie: met de emulator kunt u uw toepassingen testen zonder dat er cloudgebruikskosten in rekening worden gebracht.
- Geïsoleerde testomgeving: u kunt uw code geïsoleerd testen om ervoor te zorgen dat andere activiteiten in de cloud geen invloed hebben op de tests.
- Geoptimaliseerde interne ontwikkelingslus: u kunt de emulator gebruiken om snel een prototype te maken en uw toepassingen te testen voordat u ze implementeert in de cloud.
Notitie
De Service Bus-emulator is beschikbaar onder de licentievoorwaarden voor Microsoft-software.
Service Bus-emulator is niet compatibel met open source Service Bus Explorer in de community
Functies
De emulator biedt deze functies:
- Implementatie in containers: deze wordt uitgevoerd als een Docker-container (op basis van Linux).
- Compatibiliteit tussen platforms: u kunt het gebruiken op elk platform, waaronder Windows, macOS en Linux.
- Configureerbaarheid: U kunt het aantal Service Bus-entiteiten beheren met behulp van de door JSON geleverde configuratie.
- Streaming-ondersteuning: het ondersteunt streamingberichten met behulp van het Advanced Message Queuing Protocol (AMQP).
- Waarneembaarheid: het biedt waarneembaarheidsfuncties, waaronder console- en bestandslogboekregistratie.
Bekende beperkingen
De huidige versie van de emulator heeft de volgende beperkingen:
- Berichten kunnen niet worden gestreamd met behulp van het JMS-protocol.
- Gepartitioneerde entiteiten zijn niet compatibel met de emulator.
- Het biedt geen ondersteuning voor on-the-fly beheerbewerkingen via een SDK aan de clientzijde.
Notitie
Nadat een container opnieuw is opgestart, blijven gegevens en entiteiten niet behouden in de emulator.
Verschillen met de cloudservice
Omdat de Service Bus-emulator alleen bedoeld is voor ontwikkelings- en testdoeleinden, zijn er functionele verschillen tussen de emulator en de cloudservice.
De emulator biedt geen ondersteuning voor deze functies op hoog niveau:
- Azure-functies zoals integratie van virtuele netwerken, Integratie van Microsoft Entra-id's, activiteitenlogboeken en een UI-portal
- Mogelijkheden voor automatisch schalen
- Mogelijkheden voor herstel na geo-noodgeval
- Ondersteuning voor grote berichten
- Visuele metrische gegevens en waarschuwingen
Notitie
De emulator is uitsluitend bedoeld voor ontwikkelings- en testscenario's. We ontmoedigen elk soort productiegebruik. We bieden geen officiële ondersteuning voor de emulator.
Meld eventuele problemen of suggesties in de GitHub-installatieopslagplaats van de emulator.
Gebruiksquota
Net als de Service Bus-cloudservice biedt de emulator de volgende quota voor gebruik:
Eigenschappen | Maximumwaarde | Gebruiker configureerbaar binnen limieten |
---|---|---|
Aantal ondersteunde naamruimten | 1 | Nee |
Aantal entiteiten (wachtrijen/onderwerpen) in een naamruimte | 50 | Ja |
Aantal abonnementen per onderwerp | 50 | Ja |
Aantal correlatiefilters per onderwerp | 1000 | Ja |
Aantal gelijktijdige verbindingen met naamruimte | 10 | Ja |
Aantal gelijktijdige ontvangstaanvragen op entiteit (wachtrij/onderwerp) of abonnementsentiteit | 200 | Ja |
Berichtgrootte | 256 kB | Nee |
Wachtrij- of onderwerpgrootte | 100 MB | Nee |
Time to Live van bericht | 1 uur | Ja |
Wijzigingen in quotumconfiguratie
De emulator wordt standaard uitgevoerd met het config.json-configuratiebestand . U kunt de quota configureren die zijn gekoppeld aan Service Bus door dit bestand op de volgende manieren te bewerken, op basis van uw behoeften:
- Entiteiten: U kunt meer Service Bus-entiteiten toevoegen in overeenstemming met de ondersteunde quota.
- Logboekregistratie: De emulator ondersteunt logboekregistratie op een console, in een bestand of beide. U kunt kiezen op basis van uw persoonlijke voorkeur.
Belangrijk
U moet eventuele wijzigingen in de JSON-configuratie opgeven voordat u de emulator uitvoert. Wijzigingen worden niet direct gehonoreerd. Als de wijzigingen van kracht worden, moet u de container opnieuw starten.
U kunt de naam van de vooraf ingestelde naamruimte (name
) niet wijzigen in het configuratiebestand.
Logboeken voor foutopsporing
Tijdens het testen helpen console- of bestandslogboeken u bij het opsporen van onverwachte fouten. De logboeken bekijken:
- Consolelogboeken: Selecteer in de docker-bureaubladgebruikersinterface de containernaam.
- Bestandslogboeken: Ga in de container naar /home/app/EmulatorLogs.